MCP

Stdio bridge

Sambungkan Claude Desktop atau Hermes lewat scripts/citora_mcp_stdio.py.

Bridge ada di repo backend: citora-backend/scripts/citora_mcp_stdio.py.

Hanya stdlib Python (json, urllib, os, sys). Tidak perlu pip install.

Config Hermes / Claude Desktop

{
  "mcpServers": {
    "citora": {
      "command": "python3",
      "args": [
        "/ABS/PATH/citora-backend/scripts/citora_mcp_stdio.py"
      ],
      "env": {
        "CITORA_API_URL": "https://YOUR-API-HOST",
        "CITORA_MCP_KEY": "citora_mcp_xxxxxxxx",
        "CITORA_MCP_READ_ONLY": "1"
      }
    }
  }
}

Ganti command ke path absolut .venv/bin/python jika interpreter sistem tidak cukup.

Environment

VariabelWajibKeterangan
CITORA_API_URLYaTanpa trailing slash
CITORA_MCP_KEYYaDari Settings → MCP
CITORA_MCP_READ_ONLYTidak1 menyembunyikan tool tulis di bridge

Metode MCP yang didukung

MethodStatus
initializeYa
notifications/initializedYa
pingYa
tools/listYa → GET /mcp/v1/tools
tools/callYa → POST /mcp/v1/tools/call

Belum: resources, prompts, sampling, Streamable HTTP.

Uji manual

export CITORA_API_URL=http://127.0.0.1:8004
export CITORA_MCP_KEY=citora_mcp_...
export CITORA_MCP_READ_ONLY=1

printf '%s\n' \
  '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"test","version":"0"}}}' \
  '{"jsonrpc":"2.0","method":"notifications/initialized"}' \
  '{"jsonrpc":"2.0","id":2,"method":"tools/list"}' \
  | python3 scripts/citora_mcp_stdio.py