FastMCP Obsidian Omnisearch server enables vault note search via REST API integration
MCP Server Obsidian Omnisearch is a specialized server built on the FastMCP framework, designed to facilitate seamless integration of Obsidian vault notes searching within various AI applications. By exposing the search functionality as a REST API through the Model Context Protocol (MCP), this server bridges the gap between structured data management and advanced AI processing capabilities. It enables users to programmatically access, filter, and analyze their Obsidian note content, providing valuable insights and streamlining knowledge workflows.
This MCP server integrates highly functional search mechanisms directly into Obsidian vaults, allowing users to perform semantic and keyword searches on their notes using REST API endpoints. Key functionalities include:
The architecture of this MCP server is divided into several components:
The protocol implementation adheres strictly to MCP standards, ensuring smooth operation across different MCP clients and tools. This server supports seamless integration with AI applications like Claude Desktop, Continue, Cursor, and others by providing a standardized interface for data access and interactions.
git clone https://github.com/anpigon/mcp-server-obsidian-omnisearch.git
cd mcp-server-obsidian-omnisearch
uv install
Imagine a researcher using Obsidian for note-taking during their study on a complex topic like climate change. With this MCP server, they can easily query their notes to find relevant insights from various sources. For example:
query = "climate change impact"
results = obsidian_notes_search(query)
This returns the absolute paths of notes related to climate change impacts within their Obsidian vault.
A personal organizer might use this server to integrate detailed note searches into their daily workflow. For instance, by integrating via an AI application like Continue:
import requests
def search_notes(query):
url = "http://localhost/api/search"
response = requests.post(url, json={"query": query})
return response.json()
results = search_notes("project deadline")
This script allows quick retrieval of deadlines and project notes from their Obsidian vault.
To integrate the Obsidian Omnisearch server into an MCP client like Claude Desktop:
claude_desktop_config.json
for development or published servers.{
"mcpServers": {
"obsidian-omnisearch": {
"command": "uv",
"args": [
"--directory",
"<dir_to>/mcp-server-obsidian-omnisearch",
"run",
"mcp-server-obsidian-omnisearch",
"/path/to/your/obsidian/vault"
]
}
}
}
The Obsidian Omnisearch server is compatible with multiple MCP clients, including:
Client | Claude Desktop | Continue | Cursor |
---|---|---|---|
Capabilities | ✅ Full Support | ✅ Full Support | ❌ Limited |
Ensure secure access to your Obsidian vault by setting the path as an environment variable or argument:
python server.py /path/to/your/obsidian/vault
Q: Does this server support other search engines besides ElasticSearch?
A: Currently, it uses ElasticSearch due to its robust indexing capabilities and ease of use. However, custom indexing solutions can be implemented as per client requirements.
Q: Can I host the Obsidian Omnisearch server on a remote machine for security reasons? A: Yes, you can host the server on a secure cloud environment or behind a firewall to protect privacy and data integrity.
Q: What happens if multiple users request notes simultaneously?
A: The server is designed to handle concurrent requests efficiently, but performance may degrade with extremely high volumes of simultaneous queries.
Q: How do I debug the Obsidian Omnisearch server? A: Use MCP Inspector for debugging:
npx @modelcontextprotocol/inspector uv --directory /path/to/mcp-server-obsidian-omnisearch run mcp-server-obsidian-omnisearch
Q: Can I customize the search results further? A: Yes, you can modify the server code to include custom filters and display logic based on your needs.
Contributions to improve this project are welcome! Follow these steps:
uv install
.For more information on Model Context Protocol (MCP), explore the official documentation and community resources:
This comprehensive document highlights the functionality, integration capabilities, and real-world applications of the MCP Server Obsidian Omnisearch. It positions this server as a valuable tool for integrating AI applications with complex data management systems like Obsidian vaults.
RuinedFooocus is a local AI image generator and chatbot image server for seamless creative control
Access NASA APIs for space data, images, asteroids, weather, and exoplanets via MCP integration
Simplify MySQL queries with Java-based MysqlMcpServer for easy standard input-output communication
Build stunning one-page websites track engagement create QR codes monetize content easily with Acalytica
Learn to set up MCP Airflow Database server for efficient database interactions and querying airflow data
Explore CoRT MCP server for advanced self-arguing AI with multi-LLM inference and enhanced evaluation methods