Skip to main content
Glama

MCP Host Canary

CI

Erstellen Sie einen wegwerfbaren Remote-MCP-Server, verbinden Sie ihn mit Claude, ChatGPT, Cursor oder einem anderen verwalteten Host und erhalten Sie eine sichere Quittung über die letzte Protokollgrenze, die er tatsächlich erreicht hat.

30-minütige Canary ausführen – keine Anmeldung oder Installation · Eine finalisierte Beispielquittung ansehen

Waterfall-Demo

MCP Host Canary Waterfall, der von der Erstellung des Laufs bis zu einem ausgeführten Tool-Callback fortschreitet

MCP Host Canary erstellt einen bekannten Testserver und zeichnet nur die Protokollgrenzen auf, die er beobachtet. Er unterscheidet zwischen keinem erkannten MCP-Verkehr, einer unvollständigen Manifest-Antwort, einer zurückgegebenen Tool-Liste ohne Sentinel-Aufruf und einer Aufrufanfrage ohne registrierte Callback-Ausführung. Er zeichnet optionale moderne Erkennung und Legacy-Initialisierung nur auf, wenn diese tatsächlich eintreffen. Er schließt nicht auf Erfolg aus einem Ereignis, das er nicht empfangen hat.

MCP Inspector und MCPJam verbinden sich für direktes Debugging mit einem Server. MCP Host Canary zeichnet die letzte Protokollgrenze auf, die ein bekannter Testserver von Claude, ChatGPT, Cursor oder einem anderen Host beobachtet hat.

Es werden keine Tokens, Prompts, Anforderungstexte, Tool-Argumente, IP-Adressen oder rohe User-Agent-Strings gespeichert.

Eine finalisierte Quittung ist dafür gedacht, nur geteilt zu werden, nachdem ihr wegwerfbarer Endpunkt geschlossen ist:

profile        limits
status         finalized
last observed  tools/call.executed
tools listed   258
called tool    sentinel_257

Eine vollständige datenschutzsichere Markdown-Quittung ansehen. Es handelt sich um ein kontrolliertes lokales Beispiel, nicht um Beweise von einem verwalteten Host.

Beginnen Sie mit dem passenden Symptom: Claude verbunden, aber Tools erscheinen nicht, verbunden, aber kein Tool-Aufruf, tools/list ohne tools/call, die 258-Tool-Grenze oder MCP Inspector vs. MCP Host Canary.

  1. Erstellen Sie einen baseline-Lauf für den normalen Pfad oder einen limits-Lauf für die 258-Tool-Grenze.

  2. Geben Sie die temporäre MCP-URL nur dem verwalteten Host, den Sie testen; folgen Sie der Claude-, ChatGPT- oder Cursor-Einrichtungsanleitung.

  3. Beobachten Sie den serverbeobachteten Waterfall, dann finalisieren und exportieren Sie die sichere Quittung.

Um eine unabhängige Host-Beobachtung beizutragen, folgen Sie dem Pfad für sichere Quittungsbeiträge.

Dies ist ein experimentelles, kostenloses Einzelinstanz-Pilotprojekt – keine MCP-Konformitätssuite, kein Sicherheitsscanner, kein Proxy und kein Produktions-Gateway. Ein Neustart oder eine Aussetzung der kostenlosen Instanz entfernt aktive Läufe und Quittungen.

Related MCP server: Local Model Workers MCP

Was es beobachtet

Jeder Lauf hat eines von zwei Profilen:

  • baseline: drei kompakte, eingabefreie Tools für einen normalen Erkennungs- und Aufrufpfad.

  • limits: 258 Tools, einschließlich sentinel_257 an der Ordnungsgrenze und einer Schema-Grenzvorrichtung mit einer 16.385-Byte-Beschreibung.

Der Waterfall enthält nur beobachtete No-Auth-MCP-Fakten. Er deckt zwei Protokoll-Ären ab, anstatt eine universelle Sequenz zu erfordern:

2026-07-28: server/discover? (optional)
2025-11-25 and earlier: initialize.request -> initialize.response -> initialized
tools/list.request -> tools/list.response
tools/call.request -> tools/call.executed

MCP 2026-07-28 entfernte den initialize / initialized-Handshake, und ein moderner Client ist nicht verpflichtet, server/discover aufzurufen. Frühere Revisionen verwenden den Handshake-Pfad. Interpretieren Sie fehlende Erkennung oder Initialisierung anhand der beobachteten Protokollversion, wenn verfügbar; keines ist eine Voraussetzung für eine moderne tools/list- oder tools/call-Beobachtung.

Anforderungsempfang und tatsächliche Callback-Ausführung sind getrennte Beobachtungen. Eine Tool-Anzahl wird nur aufgezeichnet, nachdem eine Manifest-Antwort erfolgreich erzeugt wurde.

Erste Beweise von verwalteten Hosts

Die ersten limits-Läufe erreichten zwei verschiedene serverbeobachtete Grenzen: Claude Web holte das 258-Tool-Manifest ohne Sentinel-Callback; ChatGPT Developer Mode erreichte tatsächliche sentinel_257-Callback-Ausführung. Die Versuchszahlen waren nicht einheitlich, daher sind dies Grenzfall-Notizen – keine Kopf-an-Kopf-Raten, Kompatibilitätsnoten oder Behauptungen über die interne Ursache eines Hosts.

Lesen Sie die Seite zu Grenzbeweisen von verwalteten Hosts für Umfang und Einschränkungen. Ihre maschinenlesbare Quelle, managed-host-observations.v1.json, ist eine normalisierte Zusammenfassung kleiner Stichproben, keine Reihe rekonstruierter Quittungen.

Verwalteter Host

Profil

Beibehaltenes Operator-Protokoll

Serverbeobachtetes Ergebnis

Claude Web

baseline

direkt ×1; indirekt ×1; negativ ≥1 (genaue negative Anzahl nicht beibehalten)

tools/call.executed; Gesamt-Callback ×1; letztes Tool canary_ping

ChatGPT Developer Mode

baseline

direkt ×3; indirekt ×3; negativ ≥1 (genaue negative Anzahl nicht beibehalten)

tools/call.executed; Gesamt-Callback ×6; letztes Tool canary_ping

Claude Web

limits

explizite sentinel_257-Anfrage ×2

tools/list.response ×2 mit 258 Tools; Gesamt-Callback ×0

ChatGPT Developer Mode

limits

genaue sentinel_257-Anfrageanzahl nicht beibehalten

tools/call.executed; 258 Tools aufgelistet; Gesamt-Callback ×3; letztes Tool sentinel_257

Die Negativkontrolle ließ die Callback-Anzahlen in beiden baseline-Läufen unverändert, aber ihre genaue Wiederholungsanzahl wurde nicht beibehalten. Berechnen Sie keine Host-Erfolgsraten aus diesen vier historischen Zeilen.

Eine Host-Grenze reproduzieren

  1. Erstellen Sie einen frischen baseline-Lauf und verbinden Sie seine wegwerfbare URL mit der Claude-, ChatGPT- oder Cursor-Einrichtungsanleitung.

  2. Senden Sie in drei frischen Host-Konversationen jeden Prompt genau einmal: direkt – Call canary_ping exactly once and return only its tool result.; indirekt – Use the connected MCP server to retrieve its fixed canary value without naming a tool yourself. Return only that value.; negativ – Do not use any MCP tool. Reply with exactly: control-only.

  3. Notieren Sie das Callback-Anzahl-Delta nach jedem Prompt. Ein direktes oder indirektes Delta zeichnet Host-Dispatch auf; das negative Delta sollte null bleiben. Dies sind Beobachtungen, keine Bestehen/Nichtbestehen-Noten.

  4. Für die Ordnungsgrenze erstellen Sie einen separaten limits-Lauf und eine Host-Verbindung mit der neuen wegwerfbaren URL dieses Laufs und senden Sie einmal in einer frischen Konversation: Call sentinel_257 exactly once and return only its tool result.

  5. Finalisieren Sie jeden Lauf und exportieren Sie seine sichere Quittung. Das Finalisieren deaktiviert den wegwerfbaren MCP-Endpunkt.

Dieselben exakten Prompts sind als Kopieraktionen in der Live-Benutzeroberfläche verfügbar, nachdem ein Lauf erstellt wurde.

Wenn die Canary eine reproduzierbare Grenze erzeugt, verwenden Sie die Vorlage für sichere Support-Tickets oder das Formular für Quittungen von verwalteten Hosts. Wenn sie Debugging-Zeit gespart hat, markieren Sie das Repository mit einem Stern, damit andere MCP-Entwickler es finden können. Geben Sie niemals eine Live-Fähigkeits-URL oder eine nur für Eigentümer bestimmte Quittungs-URL weiter.

Lokaler Schnellstart

Verwenden Sie Node.js 22.x.

npm ci
npm run typecheck
npm test
npm run build
npm start

Öffnen Sie http://127.0.0.1:4317. Die lokale Nicht-Produktionskonfiguration verwendet ein nur für die Entwicklung bestimmtes Sitzungsgeheimnis; die Produktion weigert sich, ohne explizites Geheimnis und HTTPS-öffentliche URL zu starten.

Während der Server noch läuft, führen Sie zwei kontrollierte lokale Läufe von einem anderen Terminal mit dem offiziellen MCP-Client aus:

npm run demo

Die Demo listet und ruft den letzten Sentinel in einem Lauf auf und listet dann Tools und stoppt im anderen. Das validiert Quittungsunterschiede, ohne Kompatibilität mit einem verwalteten Host zu beanspruchen.

Ein isoliertes Pilotprojekt bereitstellen

Auf Render bereitstellen

Das Blueprint erstellt eine kostenlose Instanz in Singapur, generiert ein 256-Bit-Sitzungsgeheimnis, führt den vollständigen Verifikations-Build aus und hält Auto-Deploy deaktiviert. Es verwendet dieselbe 30-Minuten-, 50-Läufe-, Nur-Speicher-Pilotgrenze wie die öffentliche Beta. Eine kostenlose Compute-Instanz garantiert keine $0-Workspace-Rechnung: Nutzung über die enthaltene Bandbreite oder Build-Pipeline-Freigrenzen hinaus kann berechnet werden, wenn Abrechnung aktiviert ist. Überprüfen Sie die Grenzen der kostenlosen Render-Instanz, prüfen Sie die Workspace-Nutzung und konfigurieren Sie das Build-Pipeline-Ausgabenlimit vor der Bereitstellung. Ein Kaltstart oder Neustart kann aktive Läufe und Quittungen löschen.

API

Alle /api/*-Laufoperationen sind auf eine signierte anonyme Browsersitzung isoliert. Andere Eigentümer erhalten dieselbe 404 wie bei einem fehlenden Lauf. Nur die hochentropische /mcp/:id-Fähigkeits-URL ist absichtlich ohne diese Sitzung nutzbar.

Methode

Pfad

Zweck

POST

/api/session

Eine anonyme Sitzung ausstellen oder aktualisieren

DELETE

/api/session

Die Browsersitzung beenden

POST

/api/tests

`{ "profile": "baseline"

"limits" }` erstellen

GET

/api/tests?limit=12&cursor=...

Die Läufe des aktuellen Eigentümers auflisten

GET

/api/tests/:id

Einen nur für Eigentümer bestimmten Lauf lesen; unterstützt ETag und 304

GET

`/api/tests/:id/receipt?format=json

markdown`

Eine sichere Quittung exportieren

POST

/api/tests/:id/finalize

MCP-Zugriff deaktivieren und Quittung einfrieren

DELETE

/api/tests/:id

Einen Lauf sofort widerrufen und entfernen

GET

/healthz

Prozessgesundheit

GET

/readyz

Bereitschaft

Der Browser pollt bedingt höchstens drei ausgewählte aktive Läufe. Das Pollen stoppt, wenn der Tab ausgeblendet ist oder ein Lauf finalisiert oder abgelaufen ist, und Fehler verwenden exponentielles Backoff.

Pilotgrenzen

  • Läufe leben in einem Prozess und laufen nach höchstens 30 Minuten ab.

  • Ein Deploy, Neustart oder eine Aussetzung der kostenlosen Instanz entfernt aktive Läufe und Quittungen.

  • Es gibt höchstens 50 aktive Läufe, drei pro Eigentümer, sechs Erstellungen pro Eigentümer pro Stunde und 60 Erstellungen global pro Stunde.

  • MCP-Verkehr ist pro Lauf begrenzt; tools/list hat ein strengeres Limit und die limits-Vorrichtung hat einen Semaphor für vier Anforderungsausführungen.

  • Kapazitätsdruck gibt 429 oder 503 mit Retry-After zurück; ein bestehender Lauf wird nie entfernt, um einen neuen aufzunehmen.

  • /api/*-Texte sind auf 2 KiB begrenzt, /mcp/*-Texte auf 64 KiB und JSON-RPC-Batches auf 16 Einträge vor der Anwendungsverarbeitung.

  • MCP-Abonnements und OAuth sind absichtlich nicht vorhanden. Tools sind schreibgeschützt, idempotent und werden mit No-Auth-Kompatibilitätsmetadaten beworben.

  • Ergebnisse zeigen die letzte von diesem Server beobachtete Grenze. Sie können keine Grundursache innerhalb eines geschlossenen Hosts feststellen.

Siehe PRIVACY.md für aufbewahrte Felder und SECURITY.md für Hinweise zu Capability-URLs und Meldung.

Produktionskonfiguration

Die vorgesehene Pilotform ist genau ein Node 22.x-Prozess hinter HTTPS. In Produktion:

  • an 0.0.0.0 mit CANARY_BIND_HOST binden;

  • die öffentliche Basis-URL und den zulässigen Host aus RENDER_EXTERNAL_URL ableiten oder die explizite, vom Server unterstützte öffentliche URL festlegen;

  • CANARY_SESSION_SECRET auf einen zufällig generierten Wert von mindestens 32 Bytes setzen;

  • optional CANARY_INDEXNOW_KEY auf einen separaten, zufällig generierten 8-128 Zeichen langen ASCII-Buchstaben-, Ziffern- oder Bindestrichwert setzen, um /<key>.txt für die manuelle IndexNow-Inhaberverifizierung bereitzustellen;

  • die TTL auf 1800000 ms und die maximale Anzahl der Tests auf 50 setzen;

  • Auto-Deploy deaktiviert lassen, damit ein Quellcode-Push aktive Läufe nicht stillschweigend löschen kann.

Committen Sie niemals das Session-Secret oder einen IndexNow-Schlüssel. Kopieren Sie .env.example nur für die lokale Konfiguration. Die Schlüsseldatei ist weder in robots.txt noch in der Sitemap aufgeführt, und dieser Dienst übermittelt URLs nicht automatisch. Benachrichtigen Sie IndexNow nur, wenn eine öffentliche Seite mit gleicher Herkunft hinzugefügt, aktualisiert, umgeleitet oder gelöscht wird.

Befehle

npm run typecheck
npm test
npm run build
npm start
npm run demo
npm audit --audit-level=low

Validierungs-Gate

Lokale Tests sind notwendig, aber nicht ausreichend. Der Pilot wird nur fortgesetzt, wenn innerhalb von höchstens sieben Tagen:

  • zwei unabhängige verwaltete Hosts unterschiedliche Belege erzeugen;

  • fünf unabhängige Entwickler einen Lauf von ihrem eigenen Host aus abschließen;

  • zwei Belege in einem echten Support-Ticket oder GitHub-Issue verwendet werden; und

  • die Prüfungen zur Nicht-Aufbewahrung von Geheimnissen weiterhin bestanden werden.

Das Projekt wird nicht erweitert, wenn die Verbindung zum verwalteten Host fehlschlägt, die Belege die Aufbewahrung von Geheimnissen erfordern, Nutzer hauptsächlich einen Proxy oder eine automatische Reparatur anfordern oder ein offizielles Tool denselben Belegfluss für verwaltete Hosts bereitstellt. Bezahltes Hosting und eine versionierte Veröffentlichung erfolgen nur, wenn die Pilotbelege dies rechtfertigen.

Lizenz

MIT

A
license - permissive license
Not graded
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • A paid remote MCP for OpenAI Codex agent coordination MCP, built to return verdicts, receipts, usage

  • A paid remote MCP for AI agent browser DevTools MCP, built to return verdicts, receipts, usage logs,

  • A paid remote MCP for AI agent browser MCP session, built to return verdicts, receipts, usage logs,

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/sjh9714/mcp-host-canary'

If you have feedback or need assistance with the MCP directory API, please join our Discord server