Skip to main content
Glama
AryanBansal-launch

observer-launch-mcp

observer-launch-mcp

Stellen Sie Claude Fragen zu Ihren Observe-Daten – aktuelle Fehler, häufige Fehlschläge, Log-Volumen nach Pod – ohne OPAL von Hand zu schreiben. Dies ist ein MCP-Server, der Claude direkten, live Zugriff auf Ihren Observe-Tenant gibt.

Einrichtung (2 Schritte)

1. Führen Sie den Setup-Assistenten aus. Er fragt nach Ihren Observe-Anmeldedaten und Dataset-Aliasen und registriert sich dann automatisch bei Claude Code:

npx @aryanbansal-launch/observer-launch-mcp init

Sie werden gefragt nach:

  • Observe-Kunden-ID – eine Zahl, die Sie in Ihrer Observe-URL finden.

  • Observe-API-Schlüssel – erstellen Sie einen unter Manage account → My API tokens. (Kein Ingest-/Datastream-Token – die sehen ähnlich aus, funktionieren hier aber nicht.)

  • Cluster – z. B. eu-1. Lassen Sie das Feld leer, wenn Sie den Standard-US-Tenant verwenden.

  • Dataset-Aliase (optional) – sprechende Namen für Datasets, nach denen Sie oft fragen, z. B. launch-management41249178. Die ID finden Sie in der Observe-Oberfläche: Öffnen Sie ein Dataset, sie steht in der URL. Sie können dies überspringen und stattdessen rohe Dataset-IDs verwenden oder Aliase später hinzufügen.

2. Starten Sie Claude Code neu (oder beginnen Sie eine neue Sitzung), damit der neue Server erkannt wird. Bestätigen Sie, dass es funktioniert hat:

Is the Observe connection working?

Das war's – die anderen Tools unten sind jetzt im Chat verfügbar.

claude mcp add observe -s user \
  -e OBSERVE_CUSTOMER_ID=<your id> \
  -e OBSERVE_API_KEY=<your token> \
  -e OBSERVE_CLUSTER=eu-1 \
  -e OBSERVE_DATASETS='{"launch-management":"41249178"}' \
  -- node <path to installed server.js>

Führen Sie zuerst einmal npx @aryanbansal-launch/observer-launch-mcp init aus, wenn Sie nur den absoluten Pfad möchten – es gibt den genauen Befehl aus, den es ausführen würde, direkt bevor es ihn ausführt. Verwenden Sie als letzten Eintrag einen direkten node <path>-Befehl, nicht npx <package> – Claude Code startet registrierte Server mit einer leeren Umgebung (kein PATH), und das Shebang von npx benötigt PATH, um node zu finden, daher zeigt npx als Befehl stillschweigend „Failed to connect.“ an. Der Assistent vermeidet das bereits für Sie.

Related MCP server: Fathom AI MCP Server

Wonach Sie fragen können

Sobald es eingerichtet ist, sprechen Sie einfach natürlich mit Claude:

  • „Funktioniert die Observe-Verbindung?"

  • „Welche Service-/Dataset-Aliase habe ich konfiguriert?"

  • „Zeig mir aktuelle Fehler von launch-management in der letzten Stunde"

  • „Was ist unser häufigster Fehler in launch-nginx diese Woche?"

  • „Welche Pods protokollieren gerade am meisten in launch-management-bg?"

  • „Wie viel stderr-Ausgabe erzeugt launch-nginx in den letzten 6 Stunden?"

  • „Zähle Log-Zeilen pro Pod in launch-telemetry über die letzte Stunde"

  • „Hole die letzten 20 rohen Log-Zeilen von launch-logs-bg-exporter"

Für alles, was nicht von einer bestimmten Frageform abgedeckt wird, beschreiben Sie einfach, was Sie möchten – Claude schreibt die OPAL-Pipeline für Sie mit dem allgemeinen Abfragetool.

Tool-Referenz

Tool

Verwendung

observe_health_check

„Funktioniert die Verbindung?"

list_known_services

„Welche Datasets/Aliase habe ich?"

get_service_errors

Aktuelle rohe Fehler für einen Dienst, neueste zuerst

get_error_summary

Häufigste wiederkehrende Fehler nach Anzahl sortiert – schnell auch über Tage/Wochen

get_log_stats

Log-Anzahl gruppiert nach Pod/Node/Container/Stream/Namespace

run_opal_query

Alles andere – beliebige OPAL-Pipeline gegen jedes Dataset

get_error_summary und get_log_stats aggregieren serverseitig, sodass sie unabhängig vom Zeitfenster schnell bleiben. get_service_errors und run_opal_query fügen eine Warnung hinzu, wenn Sie ein Fenster von 6 Stunden oder mehr ohne Aggregation abfragen, da rohe Zeilenausgaben über ein breites Fenster das 100k-Zeilenlimit von Observe riskieren.

Log-Formate

Datasets in einem Tenant teilen selten ein Log-Schema, daher erkennen get_service_errors und get_error_summary das Format pro Dataset (einmal pro Prozess) und erstellen die passende Abfrage:

Format

Sieht aus wie

Fehler sind

level

{"level":"error","message":...,"context":...} – App-Dienste

level in error/fatal/critical/panic/…

http

{"http.status":"500","http.method":...} – nginx/Access-Logs

http.status 5xx (übergeben Sie minStatus=400 für auch 4xx)

text

alles Unstrukturiertes

Schlüsselwortübereinstimmung in der rohen Zeile

Jedes Ergebnis gibt an, welches Format erkannt wurde. Um die Erkennung zu überspringen, deklarieren Sie es in Ihrer Dataset-Konfiguration:

{ "launch-nginx": { "id": "41250854", "shape": "http" } }

Einfache "alias": "id"-Einträge funktionieren weiterhin und werden automatisch erkannt.

Abdeckung wird gemeldet, nicht versteckt. Bei level-Datasets haben einige Zeilen kein parsebares level-Feld (ein Stack-Trace, eine nackte Zeichenkette, Nicht-JSON-Ausgabe) und ein Schweregradfilter kann sie nicht sehen. Wenn dieser Anteil 1 % überschreitet, sagen die Tools dies:

Note: 529 of 2136 rows (24.8%) have no parseable "level" field and were not
scanned. Pass includeUnparsed=true to keyword-match those too.

includeUnparsed=true durchsucht diese Zeilen per Schlüsselwort. Es ist opt-in, da die Schlüsselwortsuche auch info-Zeilen markiert, die nur das Wort „error“ enthalten.

Konfigurationsreferenz

Variable

Erforderlich

Beschreibung

OBSERVE_CUSTOMER_ID

ja

Ihre Observe-Kunden-ID (numerisch).

OBSERVE_API_KEY

ja

Ein Bearer-Token von Manage account → My API tokens (oder ein Service-Account-Token für langfristige Nutzung).

OBSERVE_CLUSTER

nein

z. B. eu-1. Für den Standard-(US-)Tenant leer lassen.

OBSERVE_BASE_URL

nein

Vollständige Überschreibung, wenn Ihr Tenant nicht dem Muster {id}.{cluster}.observeinc.com folgt.

OBSERVE_LOOKUP_TIMEOUT_SEC

nein

Abfrage-Timeout in Sekunden (Standard 300).

OBSERVE_DATASETS

nein

Inline-JSON-Zuordnung Alias → Dataset-ID, z. B. {"logs":"41001999"}. Ein Eintrag kann {"id":"...","shape":"level|http|text"} sein, um die Formaterkennung zu überspringen.

OBSERVE_DATASETS_FILE

nein

Pfad zu einer JSON-Datei mit derselben Struktur, für größere Konfigurationen.

OBSERVE_MAX_RESPONSE_BYTES

nein

Obergrenze für eine einzelne Tool-Antwort (Standard 200000). Darüber werden Zeilen verworfen und die Antwort sagt dies.

OBSERVE_KEEP_INTERNAL_COLS

nein

Setzen Sie auf 1, um die Spalten link_*, containerId und clusterUid zu behalten, die standardmäßig entfernt werden.

Dataset-IDs sind tenant-spezifisch und absichtlich nicht in diesem Paket enthalten. Ohne konfigurierte Aliase greifen Alias-Lookups ins Leere und Sie können weiterhin rohe numerische Dataset-IDs direkt an jedes Tool übergeben.

Fehlerbehebung

  • Health-Check schlägt fehl → Ihr API-Schlüssel ist wahrscheinlich ein Ingest-/Datastream-Token, keiner von Manage account → My API tokens. Generieren Sie ihn neu.

  • claude mcp list zeigt „Failed to connect“ bei einem manuell registrierten Eintrag → prüfen Sie, ob der Befehl node <path> ist, nicht npx <package> (siehe Hinweis oben).

  • Ein Tool gibt „Unknown service/dataset“ zurück → führen Sie list_known_services aus, um zu sehen, was konfiguriert ist, oder übergeben Sie stattdessen eine rohe numerische Dataset-ID.

  • get_service_errors/get_error_summary liefern nichts Nützliches → prüfen Sie den Hinweis „Erkanntes Log-Format“ im Ergebnis. Wenn es falsch geraten hat, legen Sie das Format explizit mit {"alias": {"id": "...", "shape": "http"}} fest (siehe Log-Formate). Wenn es text sagt, haben Ihre Logs kein Schweregradfeld und die Übereinstimmung erfolgt per Schlüsselwort.

  • Fehler, die Sie in der Observe-Oberfläche sehen, fehlen in den Ergebnissen → suchen Sie nach dem Abdeckungshinweis. Zeilen ohne parsebares level werden standardmäßig übersprungen; übergeben Sie includeUnparsed=true.

Mitwirken

npm install
npm run build   # tsc, then chmod +x on the bin entry
npm publish      # only if you intend to ship a new version

Kopieren Sie das Muster von get_error_summary/get_log_stats in src/run-server.ts für andere wiederkehrende OPAL-Abfragen (z. B. Kosten pro Dienst, Latenz-Perzentile) – geben Sie dem Tool einen beschreibenden Namen/eine Beschreibung, damit Claude es bei Bedarf run_opal_query vorzieht.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

No tool schema history has been recorded yet.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

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

Related MCP Connectors

Related MCP Servers

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/AryanBansal-launch/Observe-launch-mcp-draft'

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