No description
Find a file
Aaron Bockelie ea82e855c8 chore: Prepare for v0.5.3 release and community plugin submission
- Bump version to 0.5.3
- Add MIT LICENSE file
- Update README with cross-platform testing info
- Create submission checklist with all requirements verified
- Document comprehensive testing (Linux, Windows, macOS, various vault sizes)

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-04 16:28:01 -05:00
.github/workflows ci: Add build workflow for feature branches 2025-06-30 07:09:35 -05:00
docs feat: Add graph search traversal tool for semantic navigation 2025-06-29 18:20:44 -05:00
src chore: Prepare for v0.5.3 release and community plugin submission 2025-07-04 16:28:01 -05:00
tests fix: Fix remaining test mock for circular reference test 2025-06-30 08:14:24 -05:00
.eslintrc.json feat: Implement DOM-based image processing for v0.3.1 2025-06-27 13:08:47 -05:00
.gitignore Initial working plugin for BRAT testing 2025-06-27 11:00:05 -05:00
ARCHITECTURE.md fix: Remove Node.js dependencies causing plugin load failures 2025-06-27 11:34:55 -05:00
CLAUDE.md fix: Update title parsing in limitSearchResults to handle all file extensions properly 2025-06-28 23:54:49 -05:00
DEVELOPMENT.md docs: Update documentation with v0.3.3 testing results and roadmap 2025-06-27 13:38:34 -05:00
esbuild.config.mjs feat: Implement proper MCP SDK with StreamableHTTPServerTransport 2025-06-27 11:59:25 -05:00
jest.config.js feat: Add linting, testing, and development documentation 2025-06-27 11:18:36 -05:00
LICENSE chore: Prepare for v0.5.3 release and community plugin submission 2025-07-04 16:28:01 -05:00
manifest.json chore: Prepare for v0.5.3 release and community plugin submission 2025-07-04 16:28:01 -05:00
package-lock.json feat: Implement DOM-based image processing for v0.3.1 2025-06-27 13:08:47 -05:00
package.json chore: Prepare for v0.5.3 release and community plugin submission 2025-07-04 16:28:01 -05:00
PROJECT-PLAN.md Initial working plugin for BRAT testing 2025-06-27 11:00:05 -05:00
README.md chore: Prepare for v0.5.3 release and community plugin submission 2025-07-04 16:28:01 -05:00
REQUIREMENTS.md Initial working plugin for BRAT testing 2025-06-27 11:00:05 -05:00
styles.css Initial working plugin for BRAT testing 2025-06-27 11:00:05 -05:00
SUBMISSION-CHECKLIST.md chore: Prepare for v0.5.3 release and community plugin submission 2025-07-04 16:28:01 -05:00
sync-version.mjs fix: Resolve version display issues in Obsidian (v0.3.2) 2025-06-27 13:11:40 -05:00
tsconfig.json feat: Add linting, testing, and development documentation 2025-06-27 11:18:36 -05:00
version-bump.mjs Initial working plugin for BRAT testing 2025-06-27 11:00:05 -05:00
versions.json fix: Correct author name to Aaron Bockelie 2025-06-27 11:19:25 -05:00

Obsidian MCP Plugin

A high-performance Model Context Protocol (MCP) server implemented as an Obsidian plugin, providing AI tools with direct vault access through HTTP transport.

Overview

This plugin brings MCP capabilities directly into Obsidian, eliminating the need for external servers or the REST API plugin. It provides semantic, AI-optimized operations that consolidate multiple tools into intelligent workflows with contextual hints.

Key Features

  • Direct Obsidian Integration: Runs natively within Obsidian for maximum performance
  • HTTP MCP Transport: Compatible with Claude Desktop, Claude Code, Cline, and other MCP clients
  • Semantic Operations: Enhanced search with Obsidian operators, intelligent fragment retrieval, and workflow guidance
  • No External Dependencies: No need for the REST API plugin or external servers
  • High Performance: Sub-100ms response times with direct vault access

Installation

Via BRAT (Beta Reviewer's Auto-update Tool)

  1. Install BRAT:

    • Open Obsidian Settings → Community Plugins
    • Browse and search for "BRAT"
    • Install and enable the BRAT plugin
  2. Add This Plugin:

    • In Obsidian settings, go to BRAT settings
    • Click "Add Beta Plugin"
    • Enter: aaronsb/obsidian-mcp-plugin
    • Click "Add Plugin"
  3. Enable the Plugin:

    • Go to Settings → Community Plugins
    • Find "Obsidian MCP Plugin" and enable it
    • The plugin will auto-update through BRAT

Configuration

  1. Enable the Server:

    • Go to plugin settings
    • Toggle "Enable HTTP Server"
    • Default port is 3001 (configurable)
  2. Connect Your MCP Client:

    Claude Code

    claude mcp add obsidian http://localhost:3001/mcp --transport http
    

    Claude Desktop / Other Clients

    Add to your configuration file:

    {
      "mcpServers": {
        "obsidian": {
          "transport": {
            "type": "http",
            "url": "http://localhost:3001/mcp"
          }
        }
      }
    }
    

    Configuration file locations:

    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    • Windows: %APPDATA%\Claude\claude_desktop_config.json
    • Linux: ~/.config/Claude/claude_desktop_config.json

Available Tools

🗂️ vault - File and Folder Operations

  • list - List files and directories
  • read - Read file content with fragments for large files
  • create - Create new files and directories
  • update - Update existing files
  • delete - Delete files and folders
  • search - Enhanced search with Obsidian operators
  • fragments - Get relevant excerpts from files

Search Operators:

  • file: - Search by filename or extension (e.g., file:.png)
  • path: - Search in file paths
  • content: - Search only in file content
  • tag: - Search for tags
  • "exact phrase" - Search for exact phrases
  • term1 OR term2 - Search for either term
  • /regex/flags - Regular expression search

✏️ edit - Smart Editing Operations

  • window - Edit with automatic content buffering
  • append - Append content to files
  • patch - Intelligent patching with fuzzy matching
  • at_line - Edit at specific line numbers
  • from_buffer - Recover content from edit buffers

👁️ view - Content Viewing and Navigation

  • file - View complete files with metadata
  • window - View content windows with context
  • active - Get currently active file
  • open_in_obsidian - Open files in Obsidian

🔄 workflow - AI Workflow Guidance

  • suggest - Get contextual suggestions based on current operations
  • traverse - Explore connected nodes from a starting point
  • neighbors - Get immediate connections of a file
  • path - Find paths between two nodes
  • statistics - Get link counts and statistics for files
  • backlinks - Find all incoming links to a file
  • forwardlinks - Find all outgoing links from a file
  • search-traverse - Search-based graph traversal with snippet chains
  • advanced-traverse - Multi-query traversal with strategies (breadth-first, best-first, beam-search)

Graph Features:

  • Follow links, backlinks, and tags during traversal
  • Filter by file patterns, folders, or tags
  • Control traversal depth and maximum nodes
  • Get relevance scores and snippet chains
  • Support for orphaned notes and unresolved links

⚙️ system - System Operations

  • info - Get vault and plugin information
  • commands - List and execute Obsidian commands
  • fetch_web - Fetch and convert web content to markdown

MCP Resources

  • obsidian://vault-info - Real-time vault metadata including file counts, active file, and plugin status

Key Improvements Over External MCP Servers

  1. Performance: Direct vault access eliminates HTTP overhead
  2. Search: Uses Obsidian's native search with advanced operators
  3. Integration: Access to full Obsidian API and plugin ecosystem
  4. Simplicity: Single plugin installation, no external dependencies
  5. Reliability: No separate processes to manage or crash

Architecture

This plugin implements the same semantic operations as obsidian-semantic-mcp but runs directly within Obsidian:

Before: AI Tool → MCP Server → REST API Plugin → Obsidian
Now:    AI Tool → MCP Plugin (within Obsidian)

The critical ObsidianAPI abstraction layer is preserved, allowing all semantic operations to work identically while gaining the performance benefits of direct integration.

Testing Status

Working Features:

  • All 6 semantic tools with all actions
  • Enhanced search with Obsidian operators
  • Graph traversal and link analysis
  • Image viewing and file operations
  • Fragment retrieval for large files
  • Workflow hints and guidance
  • Multi-vault support
  • Port collision detection
  • Cross-platform tested (Linux, Windows, macOS)

Performance Results:

  • File operations: <10ms (vs ~50-100ms with REST API)
  • Search operations: <50ms (vs ~100-300ms)
  • Zero network overhead

Development

# Clone to your vault's plugins folder
git clone https://github.com/aaronsb/obsidian-mcp-plugin .obsidian/plugins/obsidian-mcp-plugin

# Install dependencies
npm install

# Build for development
npm run dev

# Build for production
npm run build

Support

License

MIT


This plugin brings the power of semantic MCP directly into Obsidian, providing AI tools with intelligent, high-performance vault access.