nt-mcp-server
nt-mcp-server
Ein eigenständiger MCP-Server zum Lesen, Schreiben und Überwachen von FRC-NetworkTables-Daten. Er ermöglicht es einem KI-Agenten, über das NetworkTables-Protokoll mit den Netzwerktabellen eines Roboters zu kommunizieren. Das primäre Ziel ist die lokale RobotPy-Simulation (python -m robotpy sim auf 127.0.0.1:5810).
festgelegte Abhängigkeiten (fastmcp==3.4.7, pyntcore==2026.2.2).
Server ausführen
uv run nt-mcp-serverOder, äquivalent, aus einem Checkout ohne uv-Shim:
python -m nt_mcp_serverDer Server läuft auf stdio, so kommunizieren MCP-Clients (wie opencode) mit ihm.
Related MCP server: agent-comm
Verbindung zu RobotPy-sim-NetworkTables herstellen
Die Simulation muss laufen, bevor der Server etwas Nützliches lesen oder schreiben kann. Starten Sie sie aus ihrem eigenen Projekt und ihrer venv:
cd <path-to-try-robotpy> && .venv\Scripts\activate && python -m robotpy simDer Server verbindet sich standardmäßig mit 127.0.0.1:5810, wo die Simulation lauscht.
Verbindung zu echten Robot-NetworkTables herstellen
In den meisten Fällen reicht es, NetworkTables aufzuzeichnen und den MCP zur Analyse der Aufzeichnungen zu verwenden.
Wenn Sie sich in Echtzeit mit den NetworkTables eines echten Roboters verbinden möchten, benötigen Sie zwei Netzwerkadapter an Ihrem Gerät: einen für das Internet und den anderen für die Roboter-Kommunikation. Ein Ansatz ist, Ihren WLAN-Adapter für die WLAN-Verbindung zu nutzen und ein Ethernet-Kabel für die Verbindung zum Roboter. Alternativ können Sie einen USB-Netzwerkadapter als zweiten Adapter verwenden. In beiden Fällen müssen Sie möglicherweise das Netzwerk-Routing Ihres Geräts konfigurieren.
NetworkTables in NDJSON aufzeichnen (offline)
Die nt-recorder-CLI verbindet sich mit einem Live-NT4-Server und schreibt Werteereignisse in eine mit Zeitstempel versehene .ndjson-Datei. Sie läuft auf dem Entwicklungs-Laptop und liest NT von der Simulation oder dem Roboter; keine Änderungen auf der Roboterseite sind erforderlich.
uv run nt-recorder --prefixes /SmartDashboard/ --output-dir recordingsOptionen:
--prefixes— Themenpräfixe, die abonniert werden sollen (Standard:/)--output-dir— Verzeichnis für Ausgabedateien (Standard:./recordings)--duration— N Sekunden aufzeichnen, dann beenden (Standard: bis Strg+C)--team— Verbindung über Teamnummer statt Server-IP/Port--server-ip/--server-port— NT4-Serveradresse (Standard:127.0.0.1:5810)--identity— Client-Identitätszeichenfolge (Standard:nt-recorder)--quiet— Statusausgabe auf stderr unterdrücken
Ausgabedateien werden als nt-record-<YYYY-MM-DDTHHMMSSZ>.ndjson benannt (keine Doppelpunkte, Windows-sicher). Jede Zeile ist {"time": float, "topic": str, "value": jsonable}. Exit-Codes: 0 sauber, 1 Verbindungsfehler, 2 Datenträger-/E/A-Fehler.
Werkzeuge
Der Server stellt 17 Werkzeuge bereit (13 live + 4 offline). Jede Live-Werkzeugantwort enthält ein connected-Flag.
Live-Werkzeuge
Tool | Beschreibung |
| Startet den NT4-Client und wartet auf eine Live-Verbindung. Gibt |
| Stoppt den NT4-Client und baut persistente Abonnements ab. Gibt |
| Gibt den Verbindungsstatus zurück: |
| Gibt den JSON-normalisierten Wert eines Themas zurück. Antwort: |
| Gibt jedes angeforderte Thema zurück. Antwort: |
| Gibt Themen-Metadaten zurück. Antwort: |
| Veröffentlicht einen Wert. Antwort: |
| Schreibt jedes |
| Listet Themennamen auf, gefiltert nach |
| Sampelt Aktualisierungen unter Präfixen für |
| Öffnet ein persistentes Abonnement. Antwort: |
| Liest gepufferte Stichproben aus einem persistenten Abonnement. Antwort: |
| Stoppt ein persistentes Abonnement. Antwort: |
Offline-Aufzeichnungswerkzeuge
Tool | Beschreibung |
| Listet Aufzeichnungen auf. Jeder Eintrag enthält |
| Gibt Dauer, Gesamtzahl der Stichproben, Themenanzahl und Dateimetadaten für eine Aufzeichnung zurück. |
| Gibt den Ereignisverlauf für ein Thema zurück. Unterstützt |
| Listet eindeutige Themennamen in einer Aufzeichnung auf, gefiltert nach |
| Gibt Ereignisse für jedes Thema unter Präfixen zurück. Unterstützt |
Die Offline-Werkzeuge lesen aus dem Verzeichnis, das durch die Umgebungsvariable NT_RECORDINGS_DIR festgelegt ist (Standard: ./recordings). Aufzeichnungen sind nur lokal – der Recorder läuft auf dem Entwicklungs-Laptop und liest NT von der Simulation/dem Roboter; keine Änderungen auf der Roboterseite sind erforderlich.
In jedem Agenten registrieren
Der Server ist ein über uvx ausführbares Paket aus Git, sodass jeder MCP-Client ihn ohne lokalen Checkout oder vorgefertigte venv starten kann. Führen Sie ihn bei Bedarf aus:
uvx --from git+https://github.com/Mzzj114/nt-mcp-server.git nt-mcp-serverOder installieren Sie das Konsolenskript einmal und führen Sie es überall aus:
uv tool install "git+https://github.com/Mzzj114/nt-mcp-server.git"
uvx nt-mcp-serverFügen Sie diesen Eintrag zur MCP-Konfiguration Ihres Agenten hinzu (hier gezeigt als projektweites opencode.jsonc von opencode):
{
"mcp": {
"nt": {
"type": "local",
"command": [
"uvx",
"--from",
"git+https://github.com/Mzzj114/nt-mcp-server.git",
"nt-mcp-server"
],
"enabled": true
}
}
}Überprüfen Sie mit opencode mcp list aus dem Projektstammverzeichnis: Der nt-Server sollte als verbunden angezeigt werden.
Entwicklung
Python 3.14.0-venv in
.venv; Abhängigkeiten ausrequirements.txtinstalliert (fastmcp==3.4.7,pyntcore==2026.2.2).Tests:
uv run pytest tests/ -v
Lizenz
Dieses Projekt steht unter der MIT-Lizenz.
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
- AlicenseNot gradedqualityDmaintenanceAn MCP server that enables AI agents to interact with the SpaceTraders API, managing agents, fleets, contracts, and trading operations in the SpaceTraders universe.MIT
- AlicenseNot gradedqualityDmaintenanceMCP server that enables AI coding agents to communicate, share state, and coordinate work in real time via MCP tools or REST API.1305MIT
- AlicenseAqualityDmaintenanceMCP server that injects verified FTC documentation and code examples into AI assistants, enabling teams to write correct, competition-ready Java robot code through natural language.3162MIT
- AlicenseCqualityCmaintenanceMCP server for Inductive Automation Ignition, enabling AI assistants to browse and write tags, query history and alarms, manage projects, and deploy Perspective views through natural language.431MIT
Related MCP Connectors
MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.
Person-owned, portable AI memory as a remote MCP server, readable and writable by any MCP client.
Remote MCP server for The Colony — a social network for AI agents (posts, DMs, search, marketplace).
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/Mzzj114/nt-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server