# Claude MCP for Obsidian using Rest API

**URL:** <https://forum.obsidian.md/t/claude-mcp-for-obsidian-using-rest-api/93284>\
**Category:** Devs: Plugins & API\
**Created:** [December 16, 2024, 9:25pm UTC](https://forum.obsidian.md/t/claude-mcp-for-obsidian-using-rest-api/93284 "2024-12-16T21:25:46Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![PublikPrinciple](https://forum.obsidian.md/letter_avatar_proxy/v4/letter/p/ccd318/32.png) [@PublikPrinciple](https://forum.obsidian.md/u/PublikPrinciple)\
**Post date:** [December 16, 2024, 9:25pm UTC](https://forum.obsidian.md/t/claude-mcp-for-obsidian-using-rest-api/93284/1 "2024-12-16T21:25:46Z")

</div>

Hi Obsidian Community!

[https://github.com/PublikPrinciple/obsidian-mcp-rest](https://github.com/PublikPrinciple/obsidian-mcp-rest)

I’m working on implementing an MCP (Model Context Protocol) server that integrates with Obsidian’s Local REST API plugin. The goal is to allow AI assistants like Claude to interact directly with Obsidian vaults in a secure, local manner.

Project Overview

- GitHub Repository: [GitHub - PublikPrinciple/obsidian-mcp-rest: An MCP server implementation for accessing Obsidian via local REST API](https://github.com/PublikPrinciple/obsidian-mcp-rest)
- Purpose: Enable AI assistants to read/write/search Obsidian notes through standardized MCP interface
- Current Status: Basic implementation with TypeScript compilation issues

Technical Details

The implementation uses:

- Node.js/TypeScript
- Obsidian Local REST API Plugin
- Standard MCP communication via stdin/stdout

Current Features:

- List vault notes
- Read note contents
- Write/update notes
- Search functionality
- Get note metadata

Current Issues

1. TypeScript compilation errors relating to MCP type definitions
2. Need guidance on best practices for Obsidian REST API integration
3. Looking for input on security considerations when interfacing with Obsidian

Questions for the Community

1. Has anyone implemented something similar using the Local REST API plugin?
2. Are there specific Obsidian API considerations I should be aware of?
3. Any recommendations for handling vault permissions safely?
4. Looking for code review and security audit from experienced Obsidian plugin developers

How You Can Help

1. Review the current implementation on GitHub
2. Share experiences with Local REST API plugin
3. Suggest improvements or best practices
4. Help with TypeScript/Node.js implementation

Implementation Details

```typescript
// Example of current tool implementation
export class ReadNoteTool extends BaseTool {
  constructor(api: ObsidianAPI) {
    super(
      api,
      'readNote',
      'Read the contents of a specific note',
      {
        type: 'object',
        required: ['path'],
        properties: {
          path: {
            type: 'string',
            description: 'Path to the note to read'
          }
        }
      }
    );
  }

  async execute(args: { path: string }): Promise<ToolResponse> {
    const note = await this.api.readNote(args.path);
    return {
      content: [{
        type: 'text',
        text: note.content
      }]
    };
  }
}
```

---

<div class="post-metadata">

**Author:** ![mmo](https://forum.obsidian.md/user_avatar/forum.obsidian.md/mmo/32/3885_2.png) [@mmo](https://forum.obsidian.md/u/mmo)\
**Post date:** [December 18, 2024, 3:58pm UTC](https://forum.obsidian.md/t/claude-mcp-for-obsidian-using-rest-api/93284/2 "2024-12-18T15:58:28Z")

</div>

Love it, following 💪

---

<div class="post-metadata">

**Author:** ![DCResearch](https://forum.obsidian.md/letter_avatar_proxy/v4/letter/d/a87d85/32.png) [@DCResearch](https://forum.obsidian.md/u/DCResearch)\
**Post date:** [December 20, 2024, 10:10pm UTC](https://forum.obsidian.md/t/claude-mcp-for-obsidian-using-rest-api/93284/3 "2024-12-20T22:10:41Z")

</div>

Very cool reach out off post if down to collab

---

<div class="post-metadata">

**Author:** ![apoikola](https://forum.obsidian.md/user_avatar/forum.obsidian.md/apoikola/32/14427_2.png) [@apoikola](https://forum.obsidian.md/u/apoikola)\
**Post date:** [December 26, 2024, 7:16pm UTC](https://forum.obsidian.md/t/claude-mcp-for-obsidian-using-rest-api/93284/4 "2024-12-26T19:16:53Z")

</div>

sounds cool! How this might differ from the one that is currently listed at the MCP Servers Github for Obsidian → [GitHub - smithery-ai/mcp-obsidian: A connector for Claude Desktop to read and search an Obsidian vault.](https://github.com/smithery-ai/mcp-obsidian)

---

<div class="post-metadata">

**Author:** ![PaulDickson](https://forum.obsidian.md/user_avatar/forum.obsidian.md/pauldickson/32/68414_2.png) [@PaulDickson](https://forum.obsidian.md/u/PaulDickson)\
**Post date:** [April 7, 2025, 6:02am UTC](https://forum.obsidian.md/t/claude-mcp-for-obsidian-using-rest-api/93284/5 "2025-04-07T06:02:14Z")

</div>

Sounds interesting

I’m experimenting with “mcp-obsidian” and “obsidian-mcp-tools” atm

 ![image](https://forum.obsidian.md/uploads/default/original/3X/2/b/2b468e9e73859b456c5832eb87b7cad4af88c6a6.png)

“obsidian-mcp-tools” installation is via community plugin “MCP Tools” which installs the MCP Server as a .exe in the Plugin Folder. I don’t really like this but it’s easier to setup and I can see a lot of people happy using this method.

mcp-obsidian requires manual installation but you can see the source code which is nice.

Which one is better is still to be determined.

What I really want to be able to do is not use Claude Desktop (free tier limits)  
If I could find a way to integrate the Anthropic API that would be a lot more useful to me

Showcase video if you’re interested

[![](https://img.youtube.com/vi/NnwwpASG1_4/maxresdefault.jpg "Automate Note Generation in Obsidian with AI Claude and MCP Servers") ](https://www.youtube.com/watch?v=NnwwpASG1_4)
