Skip to content
VS Code

Obsidian GitHub MCP for VS Code

io.github.sarutobisasuke8/obsidian-github-mcp

A permissioned MCP gateway for agent proposals to a Git-backed Obsidian vault.

client:VS Code transport:stdio runtime:npm

Install Obsidian GitHub MCP in VS Code

.vscode/mcp.json

{
  "inputs": [
    {
      "type": "promptString",
      "id": "vault-mcp-port",
      "description": "VAULT_MCP_PORT",
      "password": true
    },
    {
      "type": "promptString",
      "id": "vault-mcp-github-owner",
      "description": "VAULT_MCP_GITHUB_OWNER",
      "password": true
    },
    {
      "type": "promptString",
      "id": "vault-mcp-github-repo",
      "description": "VAULT_MCP_GITHUB_REPO",
      "password": true
    },
    {
      "type": "promptString",
      "id": "vault-mcp-policy-file",
      "description": "VAULT_MCP_POLICY_FILE",
      "password": true
    },
    {
      "type": "promptString",
      "id": "vault-mcp-token-file",
      "description": "VAULT_MCP_TOKEN_FILE",
      "password": true
    },
    {
      "type": "promptString",
      "id": "github-token",
      "description": "GITHUB_TOKEN",
      "password": true
    },
    {
      "type": "promptString",
      "id": "github-app-id",
      "description": "GITHUB_APP_ID",
      "password": true
    },
    {
      "type": "promptString",
      "id": "github-app-installation-id",
      "description": "GITHUB_APP_INSTALLATION_ID",
      "password": true
    },
    {
      "type": "promptString",
      "id": "github-app-private-key-file",
      "description": "GITHUB_APP_PRIVATE_KEY_FILE",
      "password": true
    }
  ],
  "servers": {
    "obsidian-github-mcp": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@sarutobi-sasuke/obsidian-github-mcp"
      ],
      "env": {
        "VAULT_MCP_PORT": "${input:vault-mcp-port}",
        "VAULT_MCP_GITHUB_OWNER": "${input:vault-mcp-github-owner}",
        "VAULT_MCP_GITHUB_REPO": "${input:vault-mcp-github-repo}",
        "VAULT_MCP_POLICY_FILE": "${input:vault-mcp-policy-file}",
        "VAULT_MCP_TOKEN_FILE": "${input:vault-mcp-token-file}",
        "GITHUB_TOKEN": "${input:github-token}",
        "GITHUB_APP_ID": "${input:github-app-id}",
        "GITHUB_APP_INSTALLATION_ID": "${input:github-app-installation-id}",
        "GITHUB_APP_PRIVATE_KEY_FILE": "${input:github-app-private-key-file}"
      }
    }
  }
}

VS Code prompts for each input the first time the server starts, so no secret is written to the file. VS Code docs

Obsidian GitHub MCP in other clients