MCP Server
MCP
Obsidian Vault MCP Server
Access Obsidian vaults via Local REST API - read, search, and interact with notes
Install
npx -y @oleksandrkucherenko/[email protected]
Configuration Example
{
"remotes": [],
"packages": [
{
"registryType": "npm",
"identifier": "@oleksandrkucherenko/mcp-obsidian",
"version": "1.3.3",
"runtimeHint": "npx",
"transport": {
"type": "stdio"
},
"environmentVariables": [
{
"description": "Obsidian Local REST API key",
"isRequired": true,
"format": "string",
"isSecret": true,
"name": "API_KEY"
},
{
"description": "JSON array or semicolon-separated list of Obsidian REST API URLs for failover",
"isRequired": true,
"format": "string",
"name": "API_URLS"
},
{
"description": "Obsidian REST API host (legacy single-URL config)",
"format": "string",
"name": "API_HOST"
},
{
"description": "Obsidian REST API port (legacy single-URL config)",
"format": "number",
"name": "API_PORT"
}
]
},
{
"registryType": "npm",
"identifier": "@oleksandrkucherenko/mcp-obsidian",
"version": "1.3.3",
"runtimeHint": "npx",
"transport": {
"type": "streamable-http",
"url": "http://localhost:{MCP_HTTP_PORT}/mcp"
},
"environmentVariables": [
{
"description": "Obsidian Local REST API key",
"isRequired": true,
"format": "string",
"isSecret": true,
"name": "API_KEY"
},
{
"description": "JSON array or semicolon-separated list of Obsidian REST API URLs for failover",
"isRequired": true,
"format": "string",
"name": "API_URLS"
},
{
"description": "Enabled transports (default: stdio,http)",
"format": "string",
"default": "stdio,http",
"name": "MCP_TRANSPORTS"
},
{
"description": "HTTP transport bind port (default: 3000)",
"format": "number",
"default": "3000",
"name": "MCP_HTTP_PORT"
},
{
"description": "HTTP transport bind host (default: 0.0.0.0)",
"format": "string",
"name": "MCP_HTTP_HOST"
},
{
"description": "Bearer token for HTTP transport authentication",
"format": "string",
"isSecret": true,
"name": "MCP_HTTP_TOKEN"
}
]
},
{
"registryType": "oci",
"identifier": "ghcr.io/oleksandrkucherenko/obsidian-mcp:1.3.3",
"runtimeHint": "docker",
"transport": {
"type": "streamable-http",
"url": "http://localhost:{MCP_HTTP_PORT}/mcp"
},
"environmentVariables": [
{
"description": "Obsidian Local REST API key",
"isRequired": true,
"format": "string",
"isSecret": true,
"name": "API_KEY"
},
{
"description": "JSON array of Obsidian REST API URLs (use host.docker.internal for local Obsidian)",
"isRequired": true,
"format": "string",
"name": "API_URLS"
},
{
"description": "Enabled transports (default: stdio,http)",
"format": "string",
"default": "stdio,http",
"name": "MCP_TRANSPORTS"
},
{
"description": "HTTP transport bind port (default: 3000)",
"format": "number",
"default": "3000",
"name": "MCP_HTTP_PORT"
},
{
"description": "Bearer token for HTTP transport authentication",
"format": "string",
"isSecret": true,
"name": "MCP_HTTP_TOKEN"
}
]
},
{
"registryType": "oci",
"identifier": "docker.io/oleksandrkucherenko/obsidian-mcp:1.3.3",
"runtimeHint": "docker",
"transport": {
"type": "streamable-http",
"url": "http://localhost:{MCP_HTTP_PORT}/mcp"
},
"environmentVariables": [
{
"description": "Obsidian Local REST API key",
"isRequired": true,
"format": "string",
"isSecret": true,
"name": "API_KEY"
},
{
"description": "JSON array of Obsidian REST API URLs (use host.docker.internal for local Obsidian)",
"isRequired": true,
"format": "string",
"name": "API_URLS"
},
{
"description": "Enabled transports (default: stdio,http)",
"format": "string",
"default": "stdio,http",
"name": "MCP_TRANSPORTS"
},
{
"description": "HTTP transport bind port (default: 3000)",
"format": "number",
"default": "3000",
"name": "MCP_HTTP_PORT"
},
{
"description": "Bearer token for HTTP transport authentication",
"format": "string",
"isSecret": true,
"name": "MCP_HTTP_TOKEN"
}
]
}
]
}
mcp
model-context-protocol
npm
oci
By
Comments
Sign in to leave a comment