fix(bots): подключить postgres-tradein MCP в analyst/backend bot-окна

Root cause: start-bot.ps1 запускает claude с --strict-mcp-config --mcp-config
.claude/mcp/<role>.json → грузятся ТОЛЬКО серверы из role-файла (~/.claude.json
игнорируется). tradein был только в ~/.claude.json → в bot-окнах не появлялся,
несмотря на whitelist во frontmatter (whitelist разрешает тулзу, но не поднимает сервер).

- start-bot.ps1: экспорт TRADEIN_DB_URI из ~/.claude.json (секрет не коммитится)
- analyst.json + backend.json: блок postgres-tradein с ${TRADEIN_DB_URI}
This commit is contained in:
bot-backend 2026-05-31 09:39:55 +03:00
parent 5373f5db63
commit ed3f0e2be7
3 changed files with 14 additions and 0 deletions

View file

@ -17,6 +17,12 @@
"command": "docker",
"args": ["run", "-i", "--rm", "-e", "DATABASE_URI", "crystaldba/postgres-mcp", "--access-mode=unrestricted"],
"env": { "DATABASE_URI": "${GENDESIGN_DB_URI}" }
},
"postgres-tradein": {
"type": "stdio",
"command": "docker",
"args": ["run", "-i", "--rm", "-e", "DATABASE_URI", "crystaldba/postgres-mcp", "--access-mode=unrestricted"],
"env": { "DATABASE_URI": "${TRADEIN_DB_URI}" }
}
}
}

View file

@ -19,6 +19,13 @@
"env": { "DATABASE_URI": "${GENDESIGN_DB_URI}" },
"alwaysLoad": true
},
"postgres-tradein": {
"type": "stdio",
"command": "docker",
"args": ["run", "-i", "--rm", "-e", "DATABASE_URI", "crystaldba/postgres-mcp", "--access-mode=unrestricted"],
"env": { "DATABASE_URI": "${TRADEIN_DB_URI}" },
"alwaysLoad": true
},
"fetch": { "command": "uvx", "args": ["mcp-server-fetch"] },
"glitchtip": {
"command": "npx",

View file

@ -56,6 +56,7 @@ if (Test-Path $claudeJson) {
$ms = (Get-Content $claudeJson -Raw | ConvertFrom-Json).mcpServers
if ($ms.obsidian) { $env:OBSIDIAN_API_KEY = $ms.obsidian.env.OBSIDIAN_API_KEY }
if ($ms.'postgres-gendesign') { $env:GENDESIGN_DB_URI = $ms.'postgres-gendesign'.env.DATABASE_URI }
if ($ms.'postgres-tradein') { $env:TRADEIN_DB_URI = $ms.'postgres-tradein'.env.DATABASE_URI }
if ($ms.glitchtip) { $env:GLITCHTIP_TOKEN = $ms.glitchtip.env.GLITCHTIP_TOKEN }
}
# fallback: obsidian-ключ может жить в project .mcp.json