# Octri API Docs

Подключает документацию вашего API к ассистенту: поиск по эндпоинтам, готовые SDK-сниппеты и вызовы реальных запросов.

- MCP-сервер · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 3
- Автор: OctriDev
- Лицензия: MIT · policy=link-only · показываем только описание, файл — у автора
- Исходник: https://github.com/OctriDev/octri-mcp
- Обновлён: 2026-10-19
- HTML: https://affpapa.org/nevibecode/mcp/octri-api-docs

## Что делает

Сервер берёт OpenAPI-спецификацию, из которой собрана документация проекта Octri, и отдаёт её ассистенту набором инструментов. Ассистент ищет эндпоинты, открывает нужный, читает гайд по слагу, смотрит список SDK и свежие изменения с ломающими правками. Отдельно достаёт готовые фрагменты кода под каждый эндпоинт на поддерживаемых языках.

Работает через stdio для локального клиента или Streamable HTTP, если вы хостите сервер сами. Нужен Node 20 или новее и ID проекта Octri: он задаётся переменной `OCTRI_PROJECT_ID` либо флагом `--project-id`. Если ID не передан нигде, каждый вызов инструмента обязан нести `projectId` явно. Для вызовов настоящего API сервер берёт учётные данные из переменных: `OCTRI_API_TOKEN`, `OCTRI_API_KEY` с `OCTRI_API_KEY_HEADER`, пару `OCTRI_API_USERNAME` и `OCTRI_API_PASSWORD`. Все они уходят HTTP-заголовками, поэтому API вроде Plaid, принимающий `client_id` и `secret` в теле запроса, так не закрыть — эти поля агент передаёт как обычные аргументы инструмента.

Правами управляет владелец проекта: каждый инструмент помечен как самостоятельный, «спросить сначала» или выключенный. Чтение по умолчанию идёт само, остальное спрашивает. Запрос на подтверждение показывается через MCP elicitation (Claude 2.1.76+ и VS Code), и без одобрения вызов не уходит. Клиент, который не умеет спрашивать, получает отказ. Флаги `--read-only`, `--deny-tools`, `--allow-tools` только сужают разрешённое, и вернуть выключенный владельцем инструмент нельзя.

## Требования
- Нужно: Node.js (команды через npx)
- Переменные окружения: `OCTRI_PROJECT_ID`, `OCTRI_API_BASE_URL`, `OCTRI_API_TOKEN`, `OCTRI_API_KEY`, `OCTRI_API_KEY_HEADER`, `OCTRI_API_USERNAME`, `OCTRI_API_PASSWORD` — это ключи и токены: значения спроси у человека, в репозиторий и общие файлы не записывай.

## Установка

### Claude Code (родная платформа)

**Командой платформы**
```bash
claude mcp add --env OCTRI_PROJECT_ID=<OCTRI_PROJECT_ID> --env OCTRI_API_BASE_URL=<OCTRI_API_BASE_URL> --env OCTRI_API_TOKEN=<OCTRI_API_TOKEN> --env OCTRI_API_KEY=<OCTRI_API_KEY> --env OCTRI_API_KEY_HEADER=<OCTRI_API_KEY_HEADER> --transport stdio octri-api-docs -- npx -y @octri/mcp
```
Вместо <…> подставьте свои значения. Ещё 2 переменные окружения — в README сервера

### Codex

**Командой платформы**
```bash
codex mcp add octri-api-docs --env OCTRI_PROJECT_ID=<OCTRI_PROJECT_ID> --env OCTRI_API_BASE_URL=<OCTRI_API_BASE_URL> --env OCTRI_API_TOKEN=<OCTRI_API_TOKEN> --env OCTRI_API_KEY=<OCTRI_API_KEY> --env OCTRI_API_KEY_HEADER=<OCTRI_API_KEY_HEADER> -- npx -y @octri/mcp
```
Вместо <…> подставьте свои значения. Ещё 2 переменные окружения — в README сервера

### Cursor

**Файл настроек**
Файл `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "octri-api-docs": {
            "command": "npx",
            "args": [
                "-y",
                "@octri/mcp"
            ],
            "env": {
                "OCTRI_PROJECT_ID": "<OCTRI_PROJECT_ID>",
                "OCTRI_API_BASE_URL": "<OCTRI_API_BASE_URL>",
                "OCTRI_API_TOKEN": "<OCTRI_API_TOKEN>",
                "OCTRI_API_KEY": "<OCTRI_API_KEY>",
                "OCTRI_API_KEY_HEADER": "<OCTRI_API_KEY_HEADER>"
            }
        }
    }
}
```
Вместо <…> подставьте свои значения. Ещё 2 переменные окружения — в README сервера

### GitHub Copilot

**Файл настроек**
Файл `.vscode/mcp.json`:
```json
{
    "servers": {
        "octri-api-docs": {
            "type": "stdio",
            "command": "npx",
            "args": [
                "-y",
                "@octri/mcp"
            ],
            "env": {
                "OCTRI_PROJECT_ID": "<OCTRI_PROJECT_ID>",
                "OCTRI_API_BASE_URL": "<OCTRI_API_BASE_URL>",
                "OCTRI_API_TOKEN": "<OCTRI_API_TOKEN>",
                "OCTRI_API_KEY": "<OCTRI_API_KEY>",
                "OCTRI_API_KEY_HEADER": "<OCTRI_API_KEY_HEADER>"
            }
        }
    }
}
```
Вместо <…> подставьте свои значения. Ещё 2 переменные окружения — в README сервера

### Gemini CLI

**Командой платформы**
```bash
gemini mcp add -e OCTRI_PROJECT_ID=<OCTRI_PROJECT_ID> -e OCTRI_API_BASE_URL=<OCTRI_API_BASE_URL> -e OCTRI_API_TOKEN=<OCTRI_API_TOKEN> -e OCTRI_API_KEY=<OCTRI_API_KEY> -e OCTRI_API_KEY_HEADER=<OCTRI_API_KEY_HEADER> octri-api-docs npx -y @octri/mcp
```
Вместо <…> подставьте свои значения. Ещё 2 переменные окружения — в README сервера

## Когда брать
- найти нужный эндпоинт по описанию, а не по памяти
- получить готовый SDK-сниппет под конкретный метод
- проверить, не сломает ли обновление API существующий код
- вызвать эндпоинт прямо из ассистента с реальными учётными данными
- показать агенту гайд по интеграции целиком

## Примеры запросов агенту
- Найди в документации эндпоинт для создания платежа
- Дай SDK-сниппет для этого метода на Python
- Покажи последние ломающие изменения в API

_Часть страницы не вошла по размеру — она есть в HTML-версии._

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
