# MCP-интеграции (Jira / Confluence / GitLab) Pi не имеет встроенного MCP — его добавляет расширение `extensions/mcp-bridge.ts`. Оно читает `config/mcp.json`, поднимает **включённые** серверы (stdio) и регистрирует их инструменты в pi. **По умолчанию все серверы выключены.** Статус — команда `/mcp-status`. ## Как устроено - Серверы объявлены в `config/mcp.json`. URL берутся из `config/company.json` (`{config:trackerUrl}`, `{config:docsUrl}`, `{config:gitHost}`), токены — из окружения (`{env:JIRA_TOKEN}` и т.д.). В коде и конфиге нет захардкоженных адресов и секретов. - Bridge подставляет значения при запуске сервера. Если URL/токен не заданы — сервер помечается `missing-env` и пропускается. ## Предпосылки (нужны только при включении) - **VPN** и доступ к `jira.mvideo.ru` / `wiki.mvideo.ru` / `gitlab.tech.mvideo.ru`. - MCP SDK: `npm i @modelcontextprotocol/sdk` в пакете (в `optionalDependencies`; ставится только при включении MCP). - Лаунчеры серверов: `uvx` (для `mcp-atlassian`) и/или `npx` (для `@zereight/mcp-gitlab`). - Токены в окружении (см. `~/.config/pi-kit/env.sh`). ## Включение 1. В `config/mcp.json` поставь `"enabled": true` нужному серверу. 2. Задай токен в окружении: - Jira: `JIRA_TOKEN` (PAT Server/DC). - Confluence: `CONFLUENCE_TOKEN` (PAT Server/DC). - GitLab: `GITLAB_TOKEN` (scope `api`). 3. Установи SDK (если ещё нет): `npm i @modelcontextprotocol/sdk`. 4. Перезапусти `pi`. Проверь: `/mcp-status` → `connected` и число tools. ## Серверы | Сервер | Пакет | URL из | Токен | |---|---|---|---| | `jira` | `mcp-atlassian` (uvx) | `trackerUrl` | `JIRA_TOKEN` | | `confluence` | `mcp-atlassian` (uvx) | `docsUrl` | `CONFLUENCE_TOKEN` | | `gitlab` | `@zereight/mcp-gitlab` (npx) | `gitHost` → `/api/v4` | `GITLAB_TOKEN` | ## Безопасность MCP-серверы — сторонние процессы с полным доступом к твоим токенам. Включай только одобренные образы. Инструменты MCP проходят через guardrails pi (permission-gate/audit) как обычные вызовы.