Перейти к содержимому

MCP и skill для агента

Stdio MCP и устанавливаемый skill реализованы и проверены локально. Публичной публикации в npm и hosted MCP/OAuth пока нет. Не указывай REST-адрес как MCP-сервер и не устанавливай придуманное имя пакета через npx. Запуск API в проде — отдельный этап.

Нужны Node.js 22+ и AI-клиент с поддержкой stdio MCP. Установи проверенный архив, из раздела загрузок: выбери @csfolder/mcp в манифесте, сверь SHA-256 и размер скачанного файла. Загрузки станут публичными после деплоя этой документации. Это контрольная сумма, а не подписанный релиз; используй только доверенный домен документации.

Окно терминала
npm install --ignore-scripts /absolute/path/csfolder-mcp.tgz

Разработчик собирает его командой pnpm --filter @csfolder/mcp pack --out /absolute/output/csfolder-mcp.tgz. Устанавливается локальный файл, а не похожий пакет из реестра. Точка входа: node_modules/@csfolder/mcp/dist/stdio.js.

После явного выбора интеграции добавь эту конфигурацию без секретов в .codex/config.toml проекта или существующую конфигурацию Codex. Замени оба пути на реальные абсолютные; сохрани остальные настройки.

[mcp_servers.csfolder]
command = "/absolute/path/to/node"
args = ["/absolute/path/to/project/node_modules/@csfolder/mcp/dist/stdio.js"]
env_vars = ["CSFOLDER_API_KEY"]
startup_timeout_sec = 15
tool_timeout_sec = 30

Безопасно задай CSFOLDER_API_KEY в окружении AI-клиента до старта или перезапуска MCP-соединения. env_vars передаёт значение, не сохраняя секрет в этой конфигурации. MCP не подгружает .env проекта автоматически. Не вставляй ключ в чат или аргументы командной строки. Это документированный механизм передачи окружения Codex. В другом AI-клиенте используй его безопасные настройки окружения процесса.

Без ключа работают обнаружение инструментов, ресурсы, промпты и getStatus; защищённые методы вернут invalid_api_key.

Передай агенту:

Прочитай csfolder://docs/integration и csfolder://openapi.
Собери сравнение цен маркетов CS2 в существующем проекте.
Найди точные item_id через listItems, затем используй getMarketPrices.
Не смешивай asks/bids; сохраняй пропуски и неизвестное время цен.
Для приложения используй серверный SDK-маршрут, ключ не отдавай в браузер.
Протестируй пустые данные, пагинацию, 401 и 429. Пока не деплой.

Готовый MCP-промпт build_with_csfolder принимает recipe: market-comparison, openable-roi или portfolio, и необязательный locale: en по умолчанию или ru.

Названия инструментов совпадают с JSON operation ID. Например, аргументы listItems:

{"query":{"q":"AK-47 | Redline","limit":5}}

Затем передай реальный возвращённый ID в getMarketPrices: {"params":{"item_id":123}}. Число 123 — только пример, не выбранный предмет.

По умолчанию видны 17 рыночных инструментов и статуса в сумме. Чтобы добавить пять портфельных, владелец выбирает личный ключ csf_pat_ с доступом к конкретным портфелям и задаёт CSFOLDER_MCP_PORTFOLIOS=1 в окружении MCP-процесса. Полученные приватные данные попадут в подключённый AI-клиент/модель. Включение инструментов не выдаёт права: API проверяет scopes, владельца, отзыв и срок ключа.

В пакет входит skill/csfolder-api/. Скопируй весь каталог из node_modules/@csfolder/mcp/skill/csfolder-api/ в .agents/skills/csfolder-api/ проекта либо каталог skills своего AI-клиента. Если каталог уже есть, сначала проверь содержимое. Менять глобальные настройки не нужно.

Затем: Используй $csfolder-api и собери мою интеграцию данных CS2 в этом проекте. Skill работает с MCP, локальным OpenAPI или доступной документацией. Он не выдаёт ключ, не разрешает приватный доступ и не даёт согласие на деплой вместо владельца.

Один вызов инструмента — максимум один HTTP-запрос, без автоматических ретраев и перехода на следующую страницу. Страница по умолчанию — 25 записей, максимум 100; одновременно выполняются до четырёх вызовов. Таймаут по умолчанию — 15 секунд. Слишком большой ответ вернёт ошибку: предел HTTP-ответа 128 KiB, полного результата инструмента — 256 KiB. Незаметного обрезания нет. Сохраняй курсоры, дели историю на ограниченные окна дат и учитывай ошибки квоты.

Для всей матрицы рынков используй SDK и потоковую выгрузку в серверной задаче. MCP не загружает полный экспорт в контекст модели, не пишет файлы и не выполняет shell-команды.

Протокольные тесты и интеграция на синтетических данных подтверждают работу инструментов, но не гарантируют произвольный продукт за один промпт и не означают завершённый запуск в проде.