Skip to main content
Glama
optimikelabs

Optimike Obsidian MCP

by optimikelabs

Optimike Obsidian MCP

French version: README.fr.md Documentation hub: docs/README.md Operations: OPERATIONS.md Security: SECURITY.md

Overview of Optimike Obsidian MCP between agent clients, Obsidian and governed external documents

Optimike Obsidian MCP gives MCP clients a governed operational surface over an Obsidian vault. It combines live Desktop operations, resilient headless modes, structured task and Bases support, semantic search, runtime observability, and explicitly governed access to configured documents outside the vault.

Capability map

Area

What the MCP provides

Main dependency

Notes

Read, list, search, update, frontmatter and tags

Vault; Local REST API for the full live surface

Bases and Canvas

Bases query/write tools, format validation and bounded Canvas helpers

Bases Bridge for live Bases

Tasks

Obsidian Tasks-compatible list/query plus 13 governed Operon tools

Tasks reads; Kairélys/Public API v1 for mutations

Semantic search

Smart Connections index search with durable metadata cache

.smart-env plus Ollama or OpenAI query embedding

Runtime

Shared SQLite cache, health, maintenance, degraded mode and exclusions

Local filesystem

External documents

Governed reads/handoff plus opt-in local move with exact link repair

Allowlist; local stdio for move

Headless administration

Guarded note, metadata and vault-filesystem operations

Guarded/filesystem mode on a copied vault

The current tool registry is documented in Tool Surface. Availability varies by runtime mode; use the Runtime Capability Matrix before enabling writes.

Related MCP server: obsidian-mcp-pro

Choose a profile

Need

Recommended profile

Posture

Codex (verified) or a local stdio client

dist/stdio-proxy.js

Default local profile

Obsidian Desktop automation

live or hybrid through the stdio proxy

Trusted Desktop

CI, server or synchronized vault copy

headless-readonly

Safest headless profile

Bounded writes on a copied/dedicated vault

headless-guarded then headless-filesystem

Explicit opt-in

Direct HTTP on the same machine

Authenticated loopback HTTP

Supported with limits

Remote HTTP

Reviewed TLS reverse proxy and private network controls

Pilot only

The Node server must never be exposed directly to the public internet. See Security and the HTTP delivery ADR.

Quick start from source

Requirements:

  • Node.js >=22.7.5;

  • Obsidian Desktop only when using live Desktop features;

  • capability-specific plugins listed below.

git clone https://github.com/optimikelabs/optimike-obsidian-mcp.git
cd optimike-obsidian-mcp
npm install
npm run build
node dist/stdio-proxy.js

For a package install, the explicit proxy binary is optimike-obsidian-mcp-proxy. The legacy optimike-obsidian-mcp binary still starts the backend directly.

Minimal Codex configuration:

[mcp_servers.optimike-obsidian-mcp-stdio]
command = "node"
args = ["/path/to/optimike-obsidian-mcp/dist/stdio-proxy.js"]

[mcp_servers.optimike-obsidian-mcp-stdio.env]
OBSIDIAN_VAULT = "/path/to/vault"
OBSIDIAN_RUNTIME_MODE = "live"
OBSIDIAN_BASE_URL = "http://127.0.0.1:27123"
OBSIDIAN_API_KEY = "<local-rest-api-key>"

Keep real paths, API keys and external-root configurations outside the repository and outside distributable vault content.

Optional Obsidian integrations

Enable only the surfaces you use:

  • Local REST API: live note, metadata and tag operations;

  • bundled Bases Bridge (REST): live .base operations;

  • Smart Connections: semantic index under .smart-env;

  • Kairélys 2.6.3+ / compatible Operon and the bundled Optimike Operon Bridge: governed live task operations;

  • Obsidian Tasks: canonical Tasks parsing and configuration.

Operon apply requires two explicit opt-ins:

Optimike Operon Bridge setting: Allow task mutations
OPERON_MUTATIONS_ENABLED=true

Stale Operon snapshots remain read-only.

External document roots

External roots are disabled by default. Their ordinary reads and handoffs form a default-deny authorization broker, not an external index, sync engine or backup system.

The same external_handoff tool selects a transport-aware delivery:

  • local stdio returns a verified short-lived local_path;

  • authenticated direct HTTP may return an opt-in, identity-bound, single-use http_ticket;

  • neither delivery mode discloses the physical source path or authorizes a mutation.

One deliberately narrow mutation exists outside the handoff path: local stdio through headless-filesystem on a copied or dedicated vault can move or rename one regular file within the same opted-in root and repair exact ÉLYSIA references. It requires an inventory and durable plan, explicit write gates, hash/CAS preconditions, a journal and compensating rollback. It is not exposed over direct HTTP and does not add create, replace, delete, upload or sync.

The MCP core does not embed PDF, Office or OCR engines. The calling client owns binary extraction and must verify size and SHA-256.

Start with External document roots — setup and operations.

smart_semantic_search searches a local Smart Connections index. Query embedding can remain local through Ollama or use OpenAI, depending on operator configuration. A configured OpenAI provider therefore makes this tool open-world even though the indexed vault data remains local.

See Operations for provider configuration and cache behavior.

Verification

npm run build
npm run test:runtime
npm run check:operon
npm run test:external-roots
npm run test:docs
npm run test:package
npm run audit:production

The runtime suites use disposable vaults and include Linux/Windows CI coverage. For production-like validation, keep the shared cache database outside the real synced vault.

Documentation

Credits

Created by Optimike — Mickaël Ahouansou.

License

See LICENSE.

A
license - permissive license
-
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    -
    quality
    D
    maintenance
    Provides an MCP server that allows AI assistants to interact with Obsidian vaults, enabling reading/writing notes, managing metadata, searching content, and working with daily notes.
    Last updated
    36
    MIT
  • F
    license
    -
    quality
    D
    maintenance
    A local MCP server that wraps the Obsidian CLI to give AI assistants direct access to read, edit, and manage notes within an Obsidian vault. It enables advanced operations such as frontmatter property management, context-aware searching, and the execution of internal Obsidian commands.
    Last updated
    2

View all related MCP servers

Related MCP Connectors

  • Markdown-first MCP server for Notion API with 8 composite tools and 39 actions.

  • Serve a folder of Markdown notes as an MCP server: hybrid search, reading, and sourced answers.

  • MCP-native open-source Notion alternative: read & write pages, databases and kanban boards.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/optimikelabs/optimike-obsidian-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server