Как использовать Bencher MCP


Bencher MCP - это размещённый сервер Model Context Protocol (MCP). Он позволяет ИИ-агентам и ассистентам запрашивать данные бенчмарков и отправлять результаты без установки CLI bencher.

Если CLI bencher доступен, он остаётся рекомендуемым способом работы с Bencher. bencher run берёт на себя адаптеры бенчмарк-харнессов, итерации и интеграцию с CI. Используйте Bencher MCP, когда CLI не установлен или когда ваш MCP-клиент не может выполнять команды оболочки.

Подключение

Bencher есть в каталоге коннекторов Claude, который обслуживает claude.ai, Claude Desktop, Claude Mobile и Claude Code. Добавьте коннектор Bencher и войдите с помощью своей учётной записи Bencher, когда Claude попросит. Claude Code использует коннекторы, добавленные в claude.ai, когда в нём выполнен вход с подпиской claude.ai. Коннектор подключается только к Bencher Cloud.

Bencher есть в каталоге плагинов OpenAI, который обслуживает ChatGPT и Codex. Добавьте плагин Bencher и войдите с помощью своей учётной записи Bencher, когда вас попросят. В Codex плагин также добавляет навык Bencher, чтобы Codex мог запускать CLI bencher. Плагин подключается только к Bencher Cloud.

Вместо этого используйте URL с другими MCP-клиентами, с Claude Code без входа по подписке claude.ai, с Bencher Self-Hosted и в CI:

Развёртывание URL
Bencher Cloud https://mcp.bencher.dev/mcp
Bencher Self-Hosted https://<api-host>/mcp

Добавьте URL в свой MCP-клиент и войдите с помощью своей учётной записи Bencher, когда клиент попросит. Claude Code входит через OAuth, так же как ChatGPT и claude.ai, когда вы добавляете сервер Bencher Self-Hosted по его URL. Например, подключитесь из Claude Code:

Terminal window
claude mcp add --transport http bencher https://mcp.bencher.dev/mcp

Когда инструменту потребуется вход, выполните /mcp в Claude Code и следуйте инструкциям в браузере.

Чтобы вместо этого подключиться с API-ключом, передайте его в заголовке Authorization:

Terminal window
claude mcp add --transport http bencher https://mcp.bencher.dev/mcp \
--header "Authorization: Bearer $BENCHER_API_KEY"

Или используйте универсальную конфигурацию MCP-клиента:

{
"mcpServers": {
"bencher": {
"type": "http",
"url": "https://mcp.bencher.dev/mcp",
"headers": {
"Authorization": "Bearer ${BENCHER_API_KEY}"
}
}
}
}

Аутентификация

Вход через OAuth

MCP-клиенты с поддержкой OAuth входят с помощью вашей учётной записи Bencher, поэтому вам никогда не нужно вставлять в них ключ. Клиент открывает Bencher в браузере либо при подключении, либо когда инструменту впервые потребуется вход. Bencher называет приложение по его веб-адресу и перечисляет, что приложение просит разрешить. Войдите или вставьте API-ключ пользователя (bencher_user_*), а затем одобрите или отклоните запрос. Bencher спрашивает каждый раз, когда приложение подключается, а API-ключ проекта (bencher_run_*) не может одобрить запрос.

Приложение остаётся подключённым не дольше года. Приложение, одобренное с API-ключом пользователя, отключается, как только этот ключ отзывается или истекает. Токены доступа OAuth предназначены для Bencher MCP: API Bencher отклоняет их с 401 Unauthorized.

В Bencher Self-Hosted вход работает, как только настроен раздел plus.oauth API-сервера. ChatGPT и claude.ai должны иметь доступ к серверу из интернета. Claude Code может войти и на сервер в вашей собственной сети, доступный по https, если сервер может получить документ метаданных клиента Claude Code или он настроен в plus.oauth.clients.

Области доступа

Вы одобряете либо все области доступа, которые запрашивает приложение, либо ни одной:

Область доступа Приложение может
projects:read Просматривать ваши проекты и их результаты, включая приватные проекты
projects:write Просматривать, создавать и изменять данные в ваших проектах, включая приватные проекты, например отчёты, пороги и алерты, а также отправлять запуски, которые создают проекты или присваивают себе unclaimed организации
openid Знать, под какой учётной записью Bencher вы вошли
email Просматривать ваш адрес электронной почты и то, подтверждён ли он
profile Просматривать ваше имя и имя пользователя

Инструментам чтения (list_*, view_*, query_perf и perf_image) нужна область projects:read. Всем остальным инструментам нужна область projects:write, которая включает projects:read. Приложение, которое не запрашивает ни одну из них, получает projects:read. Приложению, вошедшему без projects:write, предлагается войти снова, когда оно вызывает инструмент, выполняющий запись. Области openid, email и profile предназначены для OpenID Connect и доступны, только если на сервере задан plus.oauth.signing_key. Приложение действует от вашего имени: ваша роль в каждом проекте по-прежнему определяет, что оно может видеть и изменять, и у него никогда нет прав администратора сервера.

Подключённые приложения

Чтобы увидеть приложения, подключённые к вашей учётной записи, откройте Connected Apps в меню учётной записи в Bencher Console или перейдите на /console/users/apps. Каждое приложение указано по его веб-адресу вместе с тем, что оно может делать, когда оно подключилось, когда оно последний раз обновило доступ и как вы его одобрили. Revoke сразу отключает приложение.

API-ключи

Bencher MCP также принимает те же учётные данные Authorization: Bearer, что и API Bencher: API-ключ проекта (bencher_run_*) или API-ключ пользователя (bencher_user_*). API-ключ проекта ограничен одним проектом, поэтому это лучший выбор для большинства агентов. API-ключ пользователя имеет доступ ко всем проектам пользователя. Недействительные учётные данные отклоняются при каждом запросе и никогда не считаются анонимными.

Без входа

Публичные проекты можно читать без каких-либо учётных данных. Анонимные запросы делят общий лимит запросов на IP-адрес, а запросы после входа учитываются в ваших собственных лимитах. Если на сервере настроен OAuth, Bencher MCP просит ваш клиент войти, когда это нужно анонимному вызову инструмента:

  • При чтении приватного проекта. Несуществующий проект получает тот же ответ, поэтому опечатка в проекте или ID, даже внутри публичного проекта, тоже приводит к просьбе войти.
  • При вызове инструмента, выполняющего запись, кроме submit_run в unclaimed проект.
  • При получении списка проектов организации с помощью list_projects.
  • При превышении анонимного лимита запросов.

Инструменты

Набор инструментов отражает то, что может делать API-ключ проекта (bencher_run_*): чтение и запись в рамках проекта, без инструментов удаления. Инструментов переименования нет, а с API-ключом проекта обновления алертов ограничены изменением статуса. Большинство инструментов принимают аргумент project, который может быть слагом или UUID проекта.

Инструмент Назначение
submit_run Отправить необработанный вывод бенчмарк-харнесса; сервер разбирает его и на лету создаёт ветки, тестбеды и пороги
query_perf, perf_image Запросить метрики бенчмарков во времени; построить изображение графика производительности
list_projects, view_project Проекты
list_reports, create_report, view_report Отчёты
list_branches, create_branch, view_branch, update_branch Ветки
list_testbeds, create_testbed, view_testbed, update_testbed Тестбеды
list_benchmarks, create_benchmark, view_benchmark, update_benchmark Бенчмарки
list_measures, create_measure, view_measure, update_measure Меры
list_thresholds, create_threshold, view_threshold, update_threshold Пороги
list_alerts, view_alert, update_alert Алерты
view_metric Отдельная метрика с полным контекстом
list_plots, create_plot, view_plot, update_plot Сохранённые графики дашборда
list_jobs, view_job Задачи bare metal раннеров
🤖 Этот документ был автоматически переведён с помощью ИИ. Он может быть неточным и содержать ошибки. Если вы обнаружите какие-либо ошибки, откройте проблему на GitHub.


Published: Sat, July 18, 2026 at 7:00:00 AM UTC | Last Updated: Tue, October 27, 2026 at 7:00:00 AM UTC