A2RG Obsidian MCP
Provides tools for interacting with an Obsidian vault, including reading, writing, appending, deleting, searching, and listing Markdown files, resolving linked notes, and retrieving the active file through the Obsidian plugin bridge or filesystem fallback.
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
A2RG MCP Bridge
A Bun-based Model Context Protocol (MCP) server for Obsidian, with a desktop bridge plugin and a direct filesystem fallback.
The project has two cooperating components:
A2RG MCP Bridge (
mcp-vault-connector) reads and writes the active vault throughApp.vault,App.metadataCache, andApp.workspace.A2RG Obsidian MCP runs over MCP stdio and exposes vault operations to MCP clients.
Current release: 1.0.1.
Architecture
MCP client
|
| stdio
v
A2RG Obsidian MCP (Bun executable)
|
+--> https://127.0.0.1:27125
| |
| v
| A2RG MCP Bridge plugin
| |
| v
| App.vault / App.metadataCache / App.workspace
|
+--> OBSIDIAN_VAULT_PATH
|
v
Direct Markdown filesThe plugin bridge is preferred while Obsidian is running. If it is unavailable, supported operations can fall back to direct filesystem access.
The bridge is local desktop infrastructure. It binds only to127.0.0.1 and must not be published directly to the internet.
Related MCP server: obsidian-cli-mcp
Quick start
Follow Quick Start for the complete setup.
The shortest setup is:
Build the MCP executable and plugin:
npm install npm run buildCopy
manifest.jsonandmain.jsinto:<vault>/.obsidian/plugins/mcp-vault-connector/Enable A2RG MCP Bridge under Obsidian Community Plugins.
In plugin settings:
Enable the bridge.
Keep port
27125unless you deliberately change it.Enable local HTTPS.
Copy or generate the bearer token.
Copy the generated CA certificate path.
Create
.envfrom.env.example:OBSIDIAN_VAULT_PATH=/absolute/path/to/your/vault OBSIDIAN_API_URL=https://127.0.0.1:27125 OBSIDIAN_API_KEY=replace-with-the-plugin-bearer-token OBSIDIAN_PREFER_REST=true OBSIDIAN_TIMEOUT_MS=3000 OBSIDIAN_CONFIG_DIR=/absolute/path/to/your/vault/.obsidian OBSIDIAN_CA_CERT=/absolute/path/to/localhost.pemRegister
dist/a2rg-obsidian-mcpas the stdio MCP executable.
Verify the setup
With HTTPS enabled:
export OBSIDIAN_API_KEY='<paste-the-bearer-token>'
curl --fail --silent \
--cacert /absolute/path/to/localhost.pem \
-H "Authorization: Bearer $OBSIDIAN_API_KEY" \
https://127.0.0.1:27125/healthExpected response:
{"status":"ok"}The MCP client should discover eight tools:
get_filewrite_fileappend_filedelete_filesearch_vaultget_linked_noteslist_filesget_active_file
See MCP tools for parameters and behavior.
Requirements
Obsidian Desktop 1.14.4 or later.
Bun 1.4 or later.
Node.js 22 or later for the plugin build.
npm.
A local Markdown vault.
An MCP client that supports stdio servers.
MCP client configuration
The repository includes .mcp.json as a local stdio configuration example:
{
"mcpServers": {
"obsidian": {
"type": "stdio",
"command": "/absolute/path/to/A2RG.ObsidianMCP/dist/a2rg-obsidian-mcp",
"args": []
}
}
}Use absolute paths for OBSIDIAN_VAULT_PATH and the Bun executable. Configure
the environment in .env or in the MCP client's server configuration.
Some clients use different configuration filenames or fields, but the effective definition is the same: one stdio process, an absolute executable path, and access to the vault environment.
Plugin and MCP behavior
Operation | Obsidian running | Obsidian closed |
Read file | Plugin bridge | Filesystem fallback |
Write file | Plugin bridge | Filesystem fallback |
Append file | Plugin bridge | Filesystem fallback |
Delete file | Plugin bridge | Filesystem fallback |
List files | Plugin bridge | Filesystem fallback |
Search vault | Plugin bridge | Indexed filesystem fallback |
Linked notes | Obsidian resolved-link graph | Empty fallback |
Active file | Plugin bridge only | No active file |
Ambiguous transport failures skip filesystem fallback for write, append, and delete operations to avoid duplicating a mutation whose REST result is unknown.
Documentation
Development
npm test
npm run dev:mcp
npm run dev:plugin
npm run buildnpm test uses Bun's test runner. npm run build type-checks the plugin,
bundles main.js, and compiles dist/a2rg-obsidian-mcp.
Release
Plugin releases are automated by .github/workflows/release.yml.
Update
manifest.json,package.json,package-lock.json, andversions.json.Commit and push the source changes.
Create and push a tag matching
manifest.json.version.Let GitHub Actions build, test, attest, and create a draft release.
Publish the draft with
main.jsandmanifest.jsonattached.Submit or update the plugin in the Obsidian community directory.
Security boundary
The plugin listens only on
127.0.0.1.Every bridge request requires the bearer token.
Relative vault paths are validated.
Absolute paths and
./..path segments are rejected.Request bodies are capped at 5 MB.
Certificate and private-key material is kept outside the vault.
The fallback does not replace authentication for a remote service.
Read Security and Public Deployment before changing the loopback-only deployment model.
This server cannot be deployed
Maintenance
Related MCP Connectors
Search, read, and safely update Markdown notes in your connected Phasoric knowledge vaults.
Notes, files, GitHub, and Drive through one MCP connection.
Notes, files, GitHub, and Drive through one MCP connection.
Notes, files, GitHub, and Drive through one MCP connection.
Related MCP Servers
- AlicenseAqualityDmaintenanceEnables MCP clients to interact with Obsidian vaults via filesystem operations and optional REST API integration for advanced UI commands. It features multi-vault auto-discovery, concurrent-safe file handling, and comprehensive tools for searching, reading, and managing vault content.128,638 npmMIT
- AlicenseNot gradedqualityBmaintenanceEnables MCP clients to interact with an Obsidian vault through the official Obsidian CLI, supporting search, notes, tasks, files, links, and native Canvas operations while the Obsidian desktop app is running.50 npmMIT
- AlicenseAqualityBmaintenanceEnables MCP clients to safely read, search, create, edit, delete, and move notes in an Obsidian vault, with automatic link repair and reversible deletes.103,667 npmMIT
- FlicenseNot gradedqualityCmaintenanceEnables MCP clients to search, read, list, and append to markdown notes in a local Obsidian vault or folder of .md files.-