So verwenden Sie Bencher MCP


Bencher MCP ist ein gehosteter Model Context Protocol (MCP) Server. Damit können KI-Agenten und Assistenten Benchmark-Daten abfragen und Benchmark-Ergebnisse übermitteln, ohne dass die bencher CLI installiert sein muss.

Wenn die bencher CLI verfügbar ist, bleibt sie der empfohlene Weg, mit Bencher zu arbeiten. bencher run übernimmt Benchmark-Harness-Adapter, Iterationen und die CI-Integration. Verwenden Sie Bencher MCP, wenn die CLI nicht installiert ist oder Ihr MCP-Client keine Shell-Befehle ausführen kann.

Verbinden

Bencher ist im Claude-Konnektorenverzeichnis, das claude.ai, Claude Desktop, Claude Mobile und Claude Code bedient. Fügen Sie den Bencher-Konnektor hinzu und melden Sie sich mit Ihrem Bencher-Konto an, wenn Claude Sie dazu auffordert. Claude Code verwendet die Konnektoren, die Sie in claude.ai hinzufügen, wenn es mit einem claude.ai-Abonnement angemeldet ist. Der Konnektor verbindet sich nur mit Bencher Cloud.

Bencher ist im OpenAI-Pluginverzeichnis, das ChatGPT und Codex bedient. Fügen Sie das Bencher-Plugin hinzu und melden Sie sich mit Ihrem Bencher-Konto an, wenn Sie dazu aufgefordert werden. In Codex bringt das Plugin auch den Bencher-Skill mit, sodass Codex die bencher CLI ausführen kann. Das Plugin verbindet sich nur mit Bencher Cloud.

Verwenden Sie stattdessen die URL mit anderen MCP-Clients, mit Claude Code ohne Anmeldung über ein claude.ai-Abonnement, mit Bencher Self-Hosted und in CI:

Bereitstellung URL
Bencher Cloud https://mcp.bencher.dev/mcp
Bencher Self-Hosted https://<api-host>/mcp

Fügen Sie die URL zu Ihrem MCP-Client hinzu und melden Sie sich mit Ihrem Bencher-Konto an, wenn der Client Sie dazu auffordert. Claude Code meldet sich über OAuth an, ebenso ChatGPT und claude.ai, wenn Sie einen Bencher Self-Hosted Server über seine URL hinzufügen. Verbinden Sie sich zum Beispiel über Claude Code:

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

Wenn ein Tool eine Anmeldung erfordert, führen Sie in Claude Code /mcp aus und folgen Sie den Schritten in Ihrem Browser.

Um sich stattdessen mit einem API-Schlüssel zu verbinden, senden Sie ihn im Authorization Header:

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

Oder verwenden Sie eine generische MCP-Client-Konfiguration:

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

Authentifizierung

Mit OAuth anmelden

MCP-Clients, die OAuth unterstützen, melden sich mit Ihrem Bencher-Konto an, sodass Sie nie einen Schlüssel in sie einfügen. Der Client öffnet Bencher in Ihrem Browser, entweder wenn Sie sich verbinden oder wenn ein Tool zum ersten Mal eine Anmeldung erfordert. Bencher nennt die App bei ihrer Webadresse und listet auf, was die App tun möchte. Melden Sie sich an oder fügen Sie einen Benutzer-API-Schlüssel (bencher_user_*) ein, und genehmigen oder verweigern Sie dann die Anfrage. Bencher fragt jedes Mal nach, wenn sich eine App verbindet, und ein Projekt-API-Schlüssel (bencher_run_*) kann nicht genehmigen.

Eine App bleibt bis zu einem Jahr verbunden. Eine mit einem Benutzer-API-Schlüssel genehmigte App wird getrennt, sobald dieser Schlüssel widerrufen wird oder abläuft. OAuth-Zugriffstokens sind für Bencher MCP gedacht: Die Bencher API lehnt sie mit 401 Unauthorized ab.

Bei Bencher Self-Hosted funktioniert die Anmeldung, sobald der Abschnitt plus.oauth des API-Servers konfiguriert ist. ChatGPT und claude.ai müssen den Server aus dem Internet erreichen können. Claude Code kann sich auch bei einem über https erreichbaren Server in Ihrem eigenen Netzwerk anmelden, solange der Server das Client-Metadatendokument von Claude Code abrufen kann oder es in plus.oauth.clients konfiguriert ist.

Scopes

Sie genehmigen entweder alle Scopes, die eine App anfordert, oder keinen davon:

Scope Die App kann
projects:read Ihre Projekte und deren Ergebnisse ansehen, einschließlich privater Projekte
projects:write Daten in Ihren Projekten ansehen, erstellen und ändern, einschließlich privater Projekte, etwa Reports, Thresholds und Alerts, und Läufe übermitteln, die Projekte anlegen oder unclaimed Organisationen beanspruchen
openid Wissen, mit welchem Bencher-Konto Sie angemeldet sind
email Ihre E-Mail-Adresse ansehen und ob sie verifiziert ist
profile Ihren Namen und Benutzernamen ansehen

Die Lese-Tools (list_*, view_*, query_perf und perf_image) benötigen projects:read. Alle anderen Tools benötigen projects:write, das projects:read einschließt. Eine App, die keinen der beiden anfordert, erhält projects:read. Eine App, die ohne projects:write angemeldet ist, wird erneut zur Anmeldung aufgefordert, wenn sie ein Tool aufruft, das schreibt. Die Scopes openid, email und profile sind für OpenID Connect gedacht und nur verfügbar, wenn der Server einen plus.oauth.signing_key hat. Eine App handelt in Ihrem Namen: Ihre Rolle in jedem Projekt entscheidet weiterhin, was sie sehen und ändern kann, und sie hat nie Server-Administratorrechte.

Verbundene Apps

Um die mit Ihrem Konto verbundenen Apps zu sehen, öffnen Sie Connected Apps in Ihrem Kontomenü in der Bencher Console oder rufen Sie /console/users/apps auf. Jede App wird mit ihrer Webadresse aufgeführt, zusammen mit dem, was sie tun kann, wann sie sich verbunden hat, wann sie ihren Zugriff zuletzt erneuert hat und wie Sie sie genehmigt haben. Revoke trennt eine App sofort.

API-Schlüssel

Bencher MCP akzeptiert auch dieselben Authorization: Bearer Anmeldedaten wie die Bencher API: einen Projekt-API-Schlüssel (bencher_run_*) oder einen Benutzer-API-Schlüssel (bencher_user_*). Ein Projekt-API-Schlüssel ist auf ein einzelnes Projekt beschränkt und damit die beste Wahl für die meisten Agenten. Ein Benutzer-API-Schlüssel kann auf alle Projekte des Benutzers zugreifen. Ungültige Anmeldedaten werden bei jeder Anfrage abgelehnt und nie als anonym behandelt.

Ohne Anmeldung

Öffentliche Projekte können ohne Anmeldedaten gelesen werden. Anonyme Anfragen teilen sich ein Rate Limit pro IP-Adresse, während angemeldete Anfragen auf Ihre eigenen Limits angerechnet werden. Wenn auf dem Server OAuth konfiguriert ist, fordert Bencher MCP Ihren Client zur Anmeldung auf, wenn ein anonymer Tool-Aufruf dies erfordert:

  • Beim Lesen eines privaten Projekts. Ein Projekt, das nicht existiert, erhält dieselbe Antwort, daher führt auch ein falsch geschriebenes Projekt oder eine falsch geschriebene ID, selbst innerhalb eines öffentlichen Projekts, zu einer Aufforderung zur Anmeldung.
  • Beim Aufruf eines Tools, das schreibt, außer submit_run für ein unclaimed Projekt.
  • Beim Auflisten der Projekte einer Organisation mit list_projects.
  • Beim Überschreiten des anonymen Rate Limits.

Tools

Die verfügbaren Tools spiegeln wider, was ein Projekt-API-Schlüssel (bencher_run_*) darf: projektbezogene Lese- und Schreibzugriffe, ohne Tools zum Löschen. Es gibt keine Tools zum Umbenennen, und mit einem Projekt-API-Schlüssel sind Alert-Aktualisierungen auf den Status beschränkt. Die meisten Tools nehmen ein project Argument entgegen, das entweder einen Projekt-Slug oder eine UUID akzeptiert.

Tool Zweck
submit_run Rohe Benchmark-Harness-Ausgabe übermitteln; der Server parst sie und legt Branches, Testbeds und Thresholds bei Bedarf automatisch an
query_perf, perf_image Benchmark-Metriken über die Zeit abfragen; ein Perf-Diagramm als Bild rendern
list_projects, view_project Projekte
list_reports, create_report, view_report Reports
list_branches, create_branch, view_branch, update_branch Branches
list_testbeds, create_testbed, view_testbed, update_testbed Testbeds
list_benchmarks, create_benchmark, view_benchmark, update_benchmark Benchmarks
list_measures, create_measure, view_measure, update_measure Measures
list_thresholds, create_threshold, view_threshold, update_threshold Thresholds
list_alerts, view_alert, update_alert Alerts
view_metric Eine einzelne Metrik mit vollständigem Kontext
list_plots, create_plot, view_plot, update_plot Gespeicherte Dashboard-Plots
list_jobs, view_job Bare-Metal-Runner-Jobs
🤖 Dieses Dokument wurde automatisch von KI übersetzt. Es ist möglicherweise nicht korrekt und kann Fehler enthalten. Wenn Sie Fehler finden, öffnen Sie bitte ein Problem auf GitHub.


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