viewLABSCO SUMMARY
Two registries, so Claude Code gets IDE tools and other clients get only what makes sense for them.
The WebSocket registry carries the shared file tools plus IDE-specific ones; the HTTP registry carries the shared set. That is why both clients can be attached at the same time without a standard MCP client seeing diagnostics it cannot use. Note the deliberate choice on protocol version: the plugin uses the older HTTP-with-SSE transport because most clients do not yet support Streamable HTTP.
What it is
An Obsidian plugin that runs an MCP server inside the app, over two transports: WebSocket for Claude Code and HTTP/SSE for Claude Desktop.
What you get
- File operations shared by both transports — view, str_replace, create and insert
- Workspace context — get_current_file and get_workspace_files, so the assistant knows what you are looking at
- obsidian_api for reaching Obsidian's own API
- IDE-specific tools over the Claude Code WebSocket, including getDiagnostics
- Auto-discovery: Claude Code finds the vault through the /ide command, no config needed
- Both clients connected simultaneously, each seeing the tools appropriate to it
- A configurable port so several vaults can run the plugin at once
Requirements
Obsidian with the plugin installed and enabled. Claude Code needs nothing else — run claude, use /ide, pick Obsidian. Claude Desktop needs Node.js and the mcp-remote bridge, because it does not speak HTTP transports directly: point it at http://localhost:22360/sse. Port 22360 is the default and is changeable in plugin settings; each vault needs its own.
Setup effort
Follow the published steps
USE CASES
Working on notes with Claude Code
Run claude, select the vault with /ide, and edit files in place through the plugin.
Asking about the note you have open
The assistant reads the active file and vault structure without you pasting anything.
Using Claude Desktop against the same vault
Bridge it with mcp-remote to the local SSE endpoint; both clients can be connected together.
Running more than one vault
Give each vault its own port in plugin settings — conflicts are detected for you.
11 tools
Listed in project docs. Your client may show a different list.
str_replacecreateinsertget_current_fileget_workspace_filesobsidian_apigetDiagnosticsopenDiffclose_tabcloseAllDiffTabsBEFORE YOU INSTALL
What to know first
Tools you get
11 tools named in the project's documentation.
INSTALLATION
Connect your client
Server setup
Download main.js, manifest.json and styles.css from the latest release:
https://github.com/iansinnott/obsidian-claude-code-mcp/releases/latestPut the three files in a folder named claude-code-mcp inside your vault's .obsidian/plugins folder (the folder name matches the plugin id in manifest.json).
Restart Obsidian, turn on community plugins if asked, and enable Claude Code MCP under Settings → Community plugins → Installed plugins.
MCP Clients
Claude Desktop
{
"mcpServers": {
"obsidian": {
"command": "npx",
"args": [
"mcp-remote",
"http://localhost:22360/sse"
],
"env": {}
}
}
}Claude Code
With the plugin enabled in Obsidian, run claude in your terminal.
Type /ide and choose Obsidian from the IDE list — Claude Code connects to the vault over WebSocket.
Any MCP client — SSE
{
"mcpServers": {
"obsidian": {
"url": "http://localhost:22360/sse",
"env": {}
}
}
}