API VEGA

TAAFT MCP-сервер

Удалённый сервер Model Context Protocol без сохранения состояния для поиска AI-инструментов в каталоге TAAFT.

Сервер предоставляет:

  • search_tools — поиск по запросу с указанием типа, сортировки и лимита результатов.
  • get_tool — получение публичных сведений об инструменте по slug, возвращённому поиском.

MCP-эндпоинт — POST /mcp. GET /healthz — liveness-эндпоинт, не требующий аутентификации.

Установка

Публичный эндпоинт:

https://theresanaiforthat.com/mcp/

Используется Streamable HTTP, аутентификация не требуется.

Cursor

Корень репозитория оформлен как плагин Cursor. Для локальной разработки плагина:

mkdir -p ~/.cursor/plugins/local
ln -s "$(pwd)" ~/.cursor/plugins/local/taaft

Выполните команду Developer: Reload Window и убедитесь, что taaft появился в разделе Customize. Удалите или отключите вручную настроенный сервер taaft, чтобы избежать дублирования имени.

Claude

Добавьте коннектор напрямую в Claude Code:

claude mcp add --transport http taaft \
  https://theresanaiforthat.com/mcp/

Или установите плагин Claude из этого репозитория:

claude plugin marketplace add taaft/mcp
claude plugin install taaft@taaft-plugins

Для Claude.ai и Claude Desktop добавьте пользовательский коннектор в разделе Customize → Connectors, указав публичный эндпоинт и тип аутентификации None.

Codex

Добавьте сервер напрямую в Codex CLI или расширение Codex IDE:

codex mcp add taaft \
  --url https://theresanaiforthat.com/mcp/

Для сред Codex с поддержкой плагинов:

codex plugin marketplace add taaft/mcp
codex plugin add taaft@taaft-plugins

Также его можно установить в интерактивном режиме через /plugins. Codex IDE поддерживает прямую настройку MCP, но пока не умеет устанавливать плагины.

ChatGPT

Включите Developer mode, откройте Plugins, нажмите + и зарегистрируйте:

  • URL: https://theresanaiforthat.com/mcp/
  • Аутентификация: None
  • Транспорт: Streamable HTTP

В репозитории содержится пакет плагина Codex/OpenAI, но для плагина ChatGPT дополнительно требуется файл .app.json, сопоставленный с идентификатором plugin_asdk_app..., который ChatGPT создаёт при регистрации эндпоинта. Этот файл привязан к конкретному аккаунту, поэтому сгенерировать его до регистрации невозможно.

Visual Studio Code

В репозиторий включён файл .vscode/mcp.json: при открытии репозитория в VS Code сервер загружается на уровне workspace. Чтобы установить его глобально без клонирования:

code --add-mcp \
  '{"name":"taaft","type":"http","url":"https://theresanaiforthat.com/mcp/"}'

Для фиксированного удалённого эндпоинта расширение VS Code не требуется. Включение в публичную галерею @mcp — это отдельный курируемый процесс в GitHub MCP Registry.

Google Antigravity

После клонирования репозитория:

mkdir -p ~/.gemini/config/plugins
cp -R plugins/antigravity/taaft ~/.gemini/config/plugins/taaft

Плагин использует serverUrl — актуальный ключ Antigravity для удалённых MCP-серверов. Поля транспорта и аутентификации не нужны. После копирования плагина перезапустите Antigravity.

Grok

Grok Build автоматически загружает .grok/config.toml, который подключает входящий в этот репозиторий плагин TAAFT, совместимый с Claude. Чтобы вместо этого добавить удалённый сервер напрямую:

grok mcp add --transport http taaft \
  https://theresanaiforthat.com/mcp/

Grok также может явно загрузить упакованный плагин:

grok --plugin-dir ./plugins/claude/taaft

Проверить обнаружение и подключение можно командами grok inspect или grok mcp doctor taaft.

Предварительные требования

  • Node.js 22+
  • Доступ к внутреннему HTTP API TAAFT

Локальная разработка

npm install
cp .env.example .env

Укажите в .env как минимум TAAFT_API_BASE_URL, затем выполните:

npm run dev

По умолчанию сервис прослушивает http://localhost:3000/mcp.

Адаптер upstream API ожидает:

  • GET {TAAFT_SEARCH_PATH}?query=...&type=...&sort=...&limit=...
  • GET {TAAFT_TOOL_PATH_TEMPLATE}, где {slug} заменяется на URL-кодированный slug

Поиск может вернуть массив либо объект с ключами tools, results или data. Детали могут быть возвращены напрямую либо под ключом tool или data. Если контракт внутреннего API отличается, измените адаптер в src/taaft-client.ts; не добавляйте новые варианты сопоставления ответов через переменные окружения.

Пример конфигурации клиента:

{
  "mcpServers": {
    "taaft": {
      "url": "https://theresanaiforthat.com/mcp/"
    }
  }
}

Развёртывание в production

Задайте переменные окружения:

  • NODE_ENV=production
  • PUBLIC_BASE_URL — внешний HTTPS-origin сервиса
  • TAAFT_API_BASE_URL и, при необходимости, TAAFT_API_KEY

Сборка и запуск:

docker build -t taaft-mcp .
docker run --rm -p 3000:3000 --env-file .env taaft-mcp

Терминируйте TLS на ingress или балансировщике нагрузки. Приложение не хранит состояние, поэтому его можно запускать в нескольких репликах без sticky sessions. Ограничение частоты запросов настраивайте на уровне ingress: MCP-эндпоинт намеренно оставлен публичным, а лимиты на уровне приложения теряют эффективность с появлением реплик.

Проверка

npm run typecheck
npm test
npm run build

Затем подключитесь через MCP Inspector:

npx @modelcontextprotocol/inspector http://localhost:3000/mcp