obsidian-mcp-server

obsidian-mcp-server

Enables full Obsidian vault operations including reading, writing, searching, deleting notes, managing tags and links, with support for both local and remote access via stdio or HTTP transports.

Category
Visit Server

README

Obsidian MCP Server

A Model Context Protocol (MCP) server for Obsidian vault operations. Works with any MCP-compatible client including Claude Desktop, Cursor, Windsurf, and VS Code.

Features

  • Full Vault Access: Read, write, search, and delete notes
  • Link Navigation: Get outgoing links and backlinks for any note
  • Tag Management: List all tags, find notes by tag
  • Flexible Search: Search by content, title, tags, or folder
  • Two Transports: Stdio (local) or Streamable HTTP (remote)
  • Modern MCP: Built with MCP SDK 1.6.1, Zod validation, tool annotations

Quick Start

# Install dependencies
npm install

# Build
npm run build

# Run (stdio mode)
OBSIDIAN_VAULT_PATH=/path/to/vault npm start

# Run (HTTP mode)
OBSIDIAN_VAULT_PATH=/path/to/vault npm run start:http

Configuration

Environment Variables

Variable Required Default Description
OBSIDIAN_VAULT_PATH Yes - Absolute path to your Obsidian vault
TRANSPORT No stdio Transport mode: stdio or http
PORT No 3000 HTTP server port
HOST No 127.0.0.1 HTTP server host
DEBUG No false Enable debug logging

MCP Client Configuration

Claude Desktop / Cursor / Windsurf (stdio)

{
  "mcpServers": {
    "obsidian": {
      "command": "node",
      "args": ["/path/to/obsidian-mcp-server/dist/index.js"],
      "env": {
        "OBSIDIAN_VAULT_PATH": "/path/to/your/vault"
      }
    }
  }
}

HTTP Mode

Start the server:

OBSIDIAN_VAULT_PATH=/path/to/vault TRANSPORT=http npm start

Connect via http://localhost:3000/mcp

Available Tools

Note Operations

Tool Description
obsidian_list_notes List notes with pagination and folder filtering
obsidian_read_note Read a note's full content and metadata
obsidian_write_note Create or update a note
obsidian_delete_note Permanently delete a note
obsidian_search_notes Search notes by content, tags, or folder

Vault Information

Tool Description
obsidian_vault_stats Get vault statistics (note count, size, etc.)
obsidian_list_tags List all tags with usage counts
obsidian_get_tagged_notes Get all notes with a specific tag

Link Navigation

Tool Description
obsidian_get_links Get outgoing links from a note
obsidian_get_backlinks Get backlinks to a note

Response Formats

All tools support a response_format parameter:

  • json (default): Structured JSON data
  • markdown: Human-readable markdown

Development

# Development mode (with auto-reload)
npm run dev

# Build
npm run build

# Test (builds and runs --help)
npm test

Project Structure

src/
  index.ts      # Entry point, transport handling
  server.ts     # MCP server with tool registrations
  vault.ts      # Vault operations (CRUD, search, links)
  schemas.ts    # Zod input validation schemas
  types.ts      # TypeScript type definitions

License

MIT

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured