Nominal MCP Server
Nominal MCP Server
Ein MCP-Server für die Nominal-Hardwaretestplattform. Testdaten abrufen, Telemetriekanäle inspizieren, Analysen ausführen und Ergebnisse zurückschreiben – von Claude Code, Cursor oder einem beliebigen MCP-Client, ohne den Editor zu verlassen.
Implementiert MCP 2026-07-28 (die aktuelle Revision) mit Abwärtskompatibilität zu
2025-11-25, 2025-06-18, 2025-03-26 und 2024-11-05.
10 tools · 467 API operations reachable · 2,992 tokens of tools/list · OAuth 2.1Schnellstart
Es läuft noch keine öffentliche Instanz. Stellen Sie Ihre eigene in etwa zwei Minuten bereit – sie läuft problemlos im kostenlosen Plan von Cloudflare.
Bereitstellen
git clone https://github.com/elirapport1/nominal-mcp && cd nominal-mcp && npm ci
npx wrangler login
npx wrangler kv namespace create OAUTH_KV # paste the id into wrangler.toml
openssl rand -base64 32 | npx wrangler secret put TOKEN_SECRET
openssl rand -base64 32 | npx wrangler secret put HANDLE_SECRET
npx wrangler deployVerbinden
claude mcp add --transport http nominal https://<your-worker>.workers.dev/mcpEin Browserfenster öffnet sich. Fügen Sie Ihren eigenen Nominal-API-Schlüssel ein (Nominal-App → Einstellungen → API-Schlüssel). Der Schlüssel wird in ein Zugriffstoken verschlüsselt, das auf diesen Server beschränkt ist, und wird niemals im Klartext gespeichert. Jede Anfrage an Nominal erfolgt mit Ihrer Anmeldeinformation, sodass die Verbindung niemals mehr sehen kann, als Ihr Konto bereits sehen kann.
Oder über stdio ausführen
NOMINAL_API_KEY=<key> \
NOMINAL_MCP_URL=https://<your-worker>.workers.dev/mcp \
npx github:elirapport1/nominal-mcp(Läuft direkt aus dem Repository – es ist nichts auf npm veröffentlicht, daher wird ein einfaches
npx nominal-mcp nicht aufgelöst.)
Wenn Ihre Nominal-Instanz nicht das GovCloud-Deployment ist, setzen Sie auch NOMINAL_BASE_URL –
kommerziell ist https://api.nominal.io/api, und Private-Cloud- sowie On-Premises-Hosts
unter *.nominal.io werden akzeptiert.
Gemäß der MCP-Auth-Spezifikation lesen stdio-Server Anmeldeinformationen aus der Umgebung, anstatt einen OAuth-Flow auszuführen. Es wird nichts auf die Festplatte geschrieben.
Related MCP server: Apollo Universal MCP Server
Was Sie anfragen können
"Finde den letzten Heißfeuerlauf an Triebwerk A und sag mir, ob der Kammerdruck jemals 900 psi überschritten hat."
"Vergleiche die Ventilbefehl-Verzögerung zwischen Lauf 14 und Lauf 15."
"Markiere ein Ereignis bei diesem Lauf bei T+4.2s und beschrifte es mit
anomaly."
Werkzeuge
Werkzeug | Funktion |
| Durchsuche Assets, Läufe, Datensätze, Arbeitsmappen, Checklisten, Ereignisse und Videos |
| Löse eine |
| Läufe für ein Asset, neueste zuerst, mit Zeitfenster |
| Kanäle eines Laufs/Datasets mit Einheit, Typ und Tags |
| Statistiken + dezimierte Spur für bis zu 10 Kanäle |
| Ein Aggregat über einen Kanal, serverseitig berechnet |
| Vorsignierte URL für Daten in voller Auflösung |
| Ereignisse, Kommentare oder Lauf-Metadaten erstellen |
| Finde eine der 467 API-Operationen per Stichwort |
| Führe eine aus, validiert gegen ihre echte Signatur |
Plus Ressourcen unter nominal:// und vier Workflow-Prompts (investigate_anomaly,
compare_runs, summarize_run, preflight_check).
Drei Designentscheidungen, die Sie kennen sollten
467 Operationen, 10 Tools. Die API von Nominal hat 467 Endpunkte in 57 Diensten. Würde man
sie als Tool-Schemas offenlegen, kostete das etwa 163,000 Tokens für tools/list, bevor Sie
irgendetwas eingegeben haben. Stattdessen gibt nominal_api_search Operations-Deskriptoren
zurück und nominal_api_call führt sie aus, sodass Sie nur ~120 Tokens pro tatsächlich
nachgeschlagener Operation zahlen. tools/list bleibt fest bei 2,992 Tokens und ist öffentlich
cachebar.
Kein Tool gibt jemals ein Dataset zurück. Ein einzelner Lauf kann Gigabytes an Zeitreihen
umfassen. nominal_query_channels liefert Statistiken plus eine Min/Max/Mittelwert-Spur, die in
höchstens 200 Buckets dezimiert ist, sowie einen signierten Handle. Massendaten verlassen das
System über eine vorsignierte URL, die niemals in das Kontextfenster gelangt.
Ihre Anmeldeinformation, niemals unsere. Es gibt kein Dienstkonto. Der OAuth-Flow bindet Ihren Nominal-API-Schlüssel in ein verschlüsseltes, zielgruppengebundenes Ein-Stunden-Zugriffstoken. Die eigene Autorisierung von Nominal ist die einzige Durchsetzungsebene – der MCP-Server erweitert niemals den Zugriff und implementiert kein paralleles Berechtigungsmodell.
Dokumentation
SPEC.md — die Implementierungsspezifikation: Protokollentscheidungen, Tool-Design, Auth- Modell, Grenzen, Bedrohungsmodell und was bewusst weggelassen wurde
docs/SPEC-original.md — der ursprüngliche Design-Brief, zur Dokumentation aufbewahrt; SPEC.md §0 erklärt, wo Messungen ihn verändert haben
Entwicklung
npm ci
npm run typecheck
npm test # 115 unit + conformance tests
npm run budget # fails if tools/list exceeds 3,000 tokens
npm run test:fuzz # adversarial suite
npm run dev # wrangler devTesten
Ebene | Was abgedeckt wird |
| Krypto, Epochenerkennung, Begrenzungen, Dezimation, Handles, Katalogrichtlinie |
| ein Test pro MCP- |
| RFC 9728/8414/8707/9207/7636, PKCE, DCR, Token-Fälschung |
| sechs Generatoren, sieben Invarianten, mit Seed und reproduzierbar |
Verifikationsgrenze: Die Ebenen Protokoll, Auth, Grenzen und Katalogrichtlinie sind
vollständig abgedeckt. Die Nominal-seitige Anfragekodierung für die Tier-1-Tools wurde aus dem
generierten nominal-api-Conjure-Client abgeleitet und gegen einen Stub getestet, nicht gegen
eine Live-Nominal-Bereitstellung – siehe SPEC.md §9.3. Wenn Sie einen Schlüssel haben,
schließt ein einziger Befehl diese Lücke.
Der Fuzzer läuft alle 20 Minuten gegen die Live-Bereitstellung
(.github/workflows/fuzz.yml). Die Generatoren decken
JSON-RPC-Struktur, die Protokoll/Epochen-Matrix, Tool-Argumente, Katalog-Operations-IDs,
Auth-Fälschung und Prompt-Injection-/SSRF-Payloads ab. Invarianten: niemals ein 5xx, immer
gültiges JSON-RPC, niemals Widerspiegelung eines Geheimnisses oder Stack-Traces, resultType
genau dann vorhanden, wenn modern, begrenzte Latenz und Größe, und keine interne Operation wird
jemals ausgeführt. Ein Fehler meldet ein Issue mit dem Seed für exakte Reproduktion.
Eigene Bereitstellung
npx wrangler kv namespace create OAUTH_KV # put the id in wrangler.toml
npx wrangler secret put TOKEN_SECRET # AES-GCM key material
npx wrangler secret put HANDLE_SECRET # HMAC key for result handles
npx wrangler deployFür CI-Bereitstellungen setzen Sie die Secrets CLOUDFLARE_API_TOKEN und CLOUDFLARE_ACCOUNT_ID
sowie eine Repository-Variable DEPLOY_URL.
Kapazität
Die Design-Eigenschaft, die für die Skalierung entscheidend ist: ein Tool-Aufruf schreibt nichts in den Speicher.
Zugriffstokens sind eigenständige verschlüsselte Umschläge und keine Zeiger auf einen Session-Store. Ihre Validierung ist also eine Entschlüsselung und ein paar Vergleiche – kein KV-Read auf dem heißen Pfad. Das Rate-Limiting nutzt Cloudflares Edge-Binding, das ebenfalls nichts schreibt. Die einzigen KV-Schreibvorgänge passieren während einer OAuth-Autorisierung: ungefähr drei pro Benutzer und Login, danach keine.
Das bedeutet, dass das Anfragevolumen durch Ihr Workers-Anfragelimit begrenzt ist und nicht durch ein Speicherkontingent, und dass die Anzahl der Personen, die eine Bereitstellung nutzen können, durch neue Logins pro Tag begrenzt ist, nicht durch die Intensität der Nutzung.
Das galt für die erste Implementierung nicht. Der Rate-Limiter zählte Anfragen in KV – ein Read und ein Write pro Anfrage – was im kostenlosen Plan von Cloudflare den Server nach etwa tausend Anfragen pro Tag gestoppt hätte. Prüfen Sie die aktuellen Limits Ihres Plans, aber das Muster ist: intensive Nutzung durch einen bestehenden Benutzer ist nahezu kostenlos, und nur das Onboarding greift auf Speicher zu.
/health meldet, welcher Rate-Limiter aktiv ist (binding vs. isolate-fallback),
und der Deployment-Smoke-Test schlägt fehl, wenn eine Bereitstellung stillschweigend zurückfällt.
Endpunkte
Pfad | |
| MCP-Endpunkt (Streamable HTTP) |
| RFC 9728 |
| RFC 8414 |
| OAuth 2.1 |
| Liveness |
Lizenz
MIT
This server cannot be installed
Maintenance
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
- AlicenseAqualityCmaintenanceEnables AI agents to programmatically inspect, test, and validate other MCP servers by exposing MCP Workbench capabilities as structured tools. It supports automated test spec generation, execution, and detailed failure analysis to ensure server reliability.410Apache 2.0
- AlicenseNot gradedqualityDmaintenanceEnables access to Apollo's tools and services through a standardized MCP interface, compatible with MCP-compliant clients.1MIT
- AlicenseCqualityBmaintenanceProvides an MCP-native operational interface for diagnostics, explainability, regression checks, and operational memory on data-system internals like PostgreSQL and Databricks toy engines.47MIT
- AlicenseAqualityDmaintenanceEnables test execution and management through MCP clients, allowing retrieval of projects, listing tests, executing tests with browser selection, and monitoring results.623MIT
Related MCP Connectors
MCP server exposing the Backtest360 engine API as tools for AI agents.
Remote MCP for Gemini upgrade evals, prompt regressions, output diffs, and eval receipts.
Autopilot MCP server for GEO analyses, reports, content, audits, memories and agents.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/elirapport1/nominal-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server