An MCP server for interacting with Obsidian notes. Requires the OBSIDIAN_VAULT_PATH environment variable to be set.
An MCP (Model Context Protocol) server for interacting with Obsidian notes. This server provides tools to search through and read notes from your Obsidian vault, making your knowledge base accessible to AI assistants.
OBSIDIAN_VAULT_PATH
environment variable:
export OBSIDIAN_VAULT_PATH="/path/to/your/obsidian/vault"
# Using Deno directly
deno task start
# Using mise (if you have mise installed)
mise run start
For development with file watching:
# Using Deno
deno task dev
# Using mise
mise run dev
You can test the MCP server using the included query CLI tool:
# Search for notes containing a pattern (case-insensitive by default)
mise run query search "productivity"
# Case-sensitive search
mise run query search "TODO" --case-sensitive
# Search for whole words only
mise run query search "test" --whole-word
# Multiline search
mise run query search "pattern.*spans.*lines" --multiline
# Search with custom context lines (default: 5)
mise run query search "pattern" --context 10
# Read specific notes
mise run query read "daily-notes/2024-01-15"
mise run query read "note1" "folder/note2"
# Use verbose mode to see the request being sent
mise run query -v search "pattern"
mise run query --verbose read "note1"
The query tool connects to the MCP server and returns the raw JSON responses, making it useful for testing and debugging.
Search through markdown files in your vault using ripgrep patterns.
Parameters:
pattern
(string, required): Search pattern for ripgrepflags
(array, optional): Additional ripgrep flagsReturns: Array of search results with:
path
: Relative note path (without .md extension)matches
: Array of matches with line numbers and contextRead and parse one or more notes from your vault.
Parameters:
paths
(array, required): Array of relative note paths (with or without .md extension)Returns: Array of note objects with:
name
: Note name (relative path without .md extension)contents
: Markdown content (without frontmatter and tags)metadata
: Parsed frontmatter as JSON objecttags
: Array of extracted Obsidian tagsOnce connected to an MCP client, you can:
// Search for notes containing "productivity"
await search_notes({
pattern: "productivity",
flags: ["-i"] // case-insensitive
});
// Read specific notes
await read_notes({
paths: ["daily-notes/2024-01-15", "projects/my-project"]
});
The server requires the OBSIDIAN_VAULT_PATH
environment variable to be set to your Obsidian vault directory.
To use this MCP server with Claude Desktop, add it to your Claude configuration file:
macOS/Linux: ~/.config/claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"notes": {
"command": "deno",
"args": [
"run",
"--allow-read=/path/to/your/obsidian/vault",
"--allow-run=rg",
"--allow-env=OBSIDIAN_VAULT_PATH",
"src/index.ts"
],
"cwd": "/path/to/notes-mcp",
"env": {
"OBSIDIAN_VAULT_PATH": "/path/to/your/obsidian/vault"
}
}
}
}
Using mise (recommended if you have mise installed):
{
"mcpServers": {
"notes": {
"command": "/path/to/notes-mcp/start-server.sh",
"env": {
"OBSIDIAN_VAULT_PATH": "/path/to/your/obsidian/vault"
}
}
}
}
This uses the included start-server.sh
script which handles changing to the project directory and running mise run start
.
Replace the paths with:
/path/to/notes-mcp
: The absolute path to this project directory/path/to/your/obsidian/vault
: The absolute path to your Obsidian vaultAfter updating the configuration, restart Claude Desktop. The server will appear as "notes" and provide the search_notes
and read_notes
tools.
MCP server for seamless document format conversion using Pandoc, supporting Markdown, HTML, and plain text, with other formats like PDF, csv and docx in development.
Enables AI assistants to seamlessly interact with your Twenty CRM data through its API.
Manage various router types using natural language. Requires router credentials to be configured.
Automate desktop actions like mouse control, keyboard input, and taking screenshots.
Manage Obsidian vaults with knowledge graph operations and AI-powered features.
Monitor team productivity, usage, and spending for AI assistants using the Cursor Admin API.
Manage events, reporting, and analytics on Eventbrite.
Programmatic control over Windows system operations including mouse, keyboard, window management, and screen capture using nut.js.
A server for time and timezone conversion tools.
A Todo and Task Manager server for creating, updating, and managing tasks, using a SQLite database.