Files
pi-kit/config/mcp.json
Aleksey Shakhmatov 2995823a0f feat(mcp): scaffold Jira/Confluence/GitLab MCP bridge (disabled by default)
Pi has no built-in MCP; this adds a bridge extension + declarative registry.
- config/mcp.json: jira/confluence/gitlab servers, all enabled:false; URLs from
  company.json ({config:...}), tokens from env ({env:...}) — nothing hardcoded
- extensions/mcp-bridge.ts: resolves env templates, and for enabled servers
  connects via MCP SDK (dynamic import) and registers their tools; /mcp-status
  command; graceful no-op when disabled or SDK absent
- docs/mcp.md: how to enable, prerequisites (VPN, tokens, uvx/npx, SDK), security
- package.json: @modelcontextprotocol/sdk as optionalDependency; ignore package-lock

Verified offline: extension loads, /mcp-status lists 3 servers (disabled), env
resolver builds gitlab API URL from company.json gitHost + GITLAB_TOKEN. Live
connect needs VPN + a token + authorization to run the server package.
2026-07-16 14:33:21 +03:00

36 lines
1.4 KiB
JSON

{
"//": "MCP server registry consumed by extensions/mcp-bridge.ts. All servers are DISABLED by default — enable one, set its token env var, then restart pi. URLs are pulled from config/company.json (single source of truth); tokens from env. Templates: {config:KEY} → company.json value, {env:VAR} → environment variable. Requires VPN/creds and the launcher (uvx/npx) to actually connect.",
"servers": {
"jira": {
"enabled": false,
"description": "Jira (Server/DC) через mcp-atlassian (Python, запускается uvx)",
"command": "uvx",
"args": ["mcp-atlassian"],
"env": {
"JIRA_URL": "{config:trackerUrl}",
"JIRA_PERSONAL_TOKEN": "{env:JIRA_TOKEN}"
}
},
"confluence": {
"enabled": false,
"description": "Confluence (Server/DC) через mcp-atlassian",
"command": "uvx",
"args": ["mcp-atlassian"],
"env": {
"CONFLUENCE_URL": "{config:docsUrl}",
"CONFLUENCE_PERSONAL_TOKEN": "{env:CONFLUENCE_TOKEN}"
}
},
"gitlab": {
"enabled": false,
"description": "GitLab (self-hosted) через @zereight/mcp-gitlab (запускается npx)",
"command": "npx",
"args": ["-y", "@zereight/mcp-gitlab"],
"env": {
"GITLAB_API_URL": "https://{config:gitHost}/api/v4",
"GITLAB_PERSONAL_ACCESS_TOKEN": "{env:GITLAB_TOKEN}"
}
}
}
}