T

obsidian-mcp-rest

...
Created 12/16/2024byPublikPrinciple

Language:

TypeScript

Stars:

24

Forks:

2

Obsidian MCP REST Server

An MCP (Model Context Protocol) server implementation that provides access to Obsidian vaults through a local REST API. This server allows AI assistants to interact with Obsidian notes and manage vault content through a standardized interface.

Features

  • Access Obsidian vault contents through MCP
  • Read and write notes
  • List vault contents
  • Search functionality
  • Secure local REST API integration
  • Compatible with Claude Desktop and other AI assistants

Prerequisites

  • Node.js 16 or higher
  • Obsidian with Local REST API plugin installed and configured
  • An Obsidian vault with Local REST API enabled

Installation

Install the package globally:

npm install -g PublikPrinciple/obsidian-mcp-rest

Or if you prefer using a specific version/branch:

npm install -g PublikPrinciple/obsidian-mcp-rest#main

Configuration

  1. First, configure Obsidian Local REST API plugin:

    • Install the Local REST API plugin in Obsidian
    • Configure the API port (default: 27123)
    • Generate and save an API key
  2. Create a configuration file config.json:

{
  "obsidian": {
    "apiKey": "your-api-key-here",
    "port": 27123,
    "host": "localhost"
  },
  "server": {
    "name": "obsidian-mcp",
    "version": "1.0.0"
  }
}

Usage

  1. Start the server:
obsidian-mcp-rest --config path/to/config.json
  1. The server will start and listen for MCP requests via stdin/stdout.

Using with Claude Desktop

  1. Configure Claude Desktop to use this MCP server:

    • Open Claude Desktop settings
    • Navigate to the MCP section
    • Add new server configuration:
      {
        "name": "obsidian-mcp",
        "command": "obsidian-mcp-rest",
        "args": ["--config", "path/to/config.json"]
      }
      
  2. Claude can now access your Obsidian vault through commands like:

    Read note "Projects/MyProject.md"
    List all notes in "Projects" folder
    
             
         
             
                    Search for notes containing "typescript"
    

Available Tools

  • listNotes: List all notes in the vault or a specific folder
  • readNote: Read the contents of a specific note
  • writeNote: Create or update a note
  • searchNotes: Search for notes using a query string
  • getMetadata: Get metadata for a specific note

Security

  • The server only runs locally and communicates through stdin/stdout
  • All requests to Obsidian REST API are authenticated with your API key
  • No external network access is required
  • Data remains local to your machine

Development

  1. Clone the repository:
git clone https://github.com/PublikPrinciple/obsidian-mcp-rest.git
cd obsidian-mcp-rest
  1. Install dependencies:
npm install
  1. Build the project:
npm run build
  1. Run tests:
npm test

Troubleshooting

Installation Issues

If you encounter any installation issues, try these alternatives:

  1. Clone and install locally:
git clone https://github.com/PublikPrinciple/obsidian-mcp-rest.git
cd obsidian-mcp-rest
npm install
npm run build
npm install -g .
  1. If you see TypeScript-related errors, ensure TypeScript is installed globally:
npm install -g typescript

Contributing

Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.

License

MIT License - see LICENSE file for details

Last updated: 2/23/2025

Publisher info

PublikPrinciple's avatar

PublikPrinciple

1
followers
1
following
8
repos

More MCP servers built with TypeScript

docbase-mcp-server

MCP Server Implementation for DocBase

By f4401
aapi-mcp-server

Advanced API MCP Server

By Asphere-xyz1
DBX-MCP-Server

MCP Server for Dropbox

By amgadabdelhafez1