Skip to main content

Add your description here

Project description

Add to Cursor Add to VS Code Add to Claude Add to ChatGPT Add to Codex Add to Gemini

MCP Server Obsidian Omnisearch

smithery badge A FastMCP-based server that provides Obsidian vault search functionality through a REST API interface.

Overview

This project implements a search service that allows you to search through Obsidian vault notes programmatically. It uses FastMCP to expose the search functionality as a tool that can be integrated with other services.

Features

  • Search through Obsidian vault notes
  • REST API integration
  • Returns absolute paths to matching notes
  • Easy integration with FastMCP tools

Prerequisites

  • Python 3.x
  • Obsidian with Omnisearch plugin installed and running
  • FastMCP library
  • Active Obsidian vault

Installation

Installing via Smithery

To install MCP Server Obsidian Omnisearch for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @anpigon/mcp-server-obsidian-omnisearch --client claude

Manual Installation

  1. Clone the repository:
git clone https://github.com/anpigon/mcp-server-obsidian-omnisearch.git
cd mcp-server-obsidian-omnisearch
  1. Install dependencies:
uv install

Configuration

The Obsidian vault path is now provided as a command line argument when running the server:

python server.py /path/to/your/obsidian/vault

Usage

Obsidian Omnisearch API

You need the Obsidian Omnisearch community plugin running: https://publish.obsidian.md/omnisearch/Inject+Omnisearch+results+into+your+search+engine

Claude Desktop

On MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json

On Windows: %APPDATA%/Claude/claude_desktop_config.json

Development/Unpublished Servers Configuration
{
  "mcpServers": {
    "obsidian-omnisearch": {
      "command": "uv",
      "args": [
        "--directory",
        "<dir_to>/mcp-server-obsidian-omnisearch",
        "run",
        "mcp-server-obsidian-omnisearch",
        "/path/to/your/obsidian/vault"
      ]
    }
  }
}
Published Servers Configuration
{
  "mcpServers": {
    "obsidian-omnisearch": {
      "command": "uvx",
      "args": [
        "mcp-server-obsidian-omnisearch",
        "/path/to/your/obsidian/vault"
      ]
    }
  }
}

API Reference

Search Notes

  • Function: obsidian_notes_search(query: str)
  • Description: Searches Obsidian notes and returns absolute paths to matching notes
  • Parameters:
    • query: Search query string
  • Returns: List of absolute paths to matching notes

Development

Building and Publishing

To prepare the package for distribution:

  1. Sync dependencies and update lockfile:
uv sync
  1. Build package distributions:
uv build

This will create source and wheel distributions in the dist/ directory.

  1. Publish to PyPI:
uv publish

Note: You'll need to set PyPI credentials via environment variables or command flags:

  • Token: --token or UV_PUBLISH_TOKEN
  • Or username/password: --username/UV_PUBLISH_USERNAME and --password/UV_PUBLISH_PASSWORD

Debugging

Since MCP servers run over stdio, debugging can be challenging. For the best debugging experience, we strongly recommend using the MCP Inspector.

You can launch the MCP Inspector via npm with this command:

npx @modelcontextprotocol/inspector uv --directory /path/to/mcp-server-obsidian-omnisearch run mcp-server-obsidian-omnisearch

Upon launching, the Inspector will display a URL that you can access in your browser to begin debugging.

You can also watch the server logs with this command:

tail -n 20 -f ~/Library/Logs/Claude/mcp-server-mcp-server-obsidian-omnisearch.log

Dependencies

  • FastMCP
  • requests
  • urllib

License

This project is licensed under the MIT License - see the LICENSE file for details.

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mcp_server_obsidian_omnisearch_fastmcp-0.1.3.tar.gz (56.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file mcp_server_obsidian_omnisearch_fastmcp-0.1.3.tar.gz.

File metadata

File hashes

Hashes for mcp_server_obsidian_omnisearch_fastmcp-0.1.3.tar.gz
Algorithm Hash digest
SHA256 f8fab2b96f958256a2aa7e4f7576fee8da8516d31522ca9c0b425b8b5f8ef62a
MD5 4b2d06db7346a8a42837840d04191793
BLAKE2b-256 ec0232634cb0b197d9de203ab836467af1c2ba9bd22b17c7d49605793fa02c76

See more details on using hashes here.

File details

Details for the file mcp_server_obsidian_omnisearch_fastmcp-0.1.3-py3-none-any.whl.

File metadata

File hashes

Hashes for mcp_server_obsidian_omnisearch_fastmcp-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 f0315fed782f2ac8ae8e944c5ede445ff32c64ccfc15bfa726946b4a8a2a78db
MD5 ff06fc36b473d7f03e8ee842e083900e
BLAKE2b-256 93bd2fbf6fb186bc107ce7a33f5d788cd9aa668c974ae20b900d83a1368c5db8

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page