MCP on My SAMP
MCP on My SAMP
Umfang: Lokale Server oder Server, die dir gehören bzw. von dir autorisiert sind. Kein Werkzeug für die Automatisierung öffentlicher Server.
Was kann es?
MCP on My SAMP ermöglicht es KI-Agenten, Spieleserver mit wiederholbaren Workflows zu testen:
open.mp starten / stoppen / Status prüfen;
Headless-RakClient starten / stoppen / Status prüfen;
warten, bis der Client tatsächlich
Spawnedist;erlaubte Slash-Befehle senden;
den Ausgabeverlauf des Clients lesen;
verifizieren, dass die Serverantwort beim Client angekommen ist;
Befehle aus dem Pawn-Quellcode des Gamemodes ermitteln;
Befehle außerhalb der Zulassungsliste ablehnen.
Es bietet kein Flooding, Spamming, Lag Injection, beliebiges RCON oder die Automatisierung öffentlicher Server.
Arbeitsablauf
flowchart LR
A[AI Agent] -->|MCP stdio| B[MCP on My SAMP]
B --> C[open.mp Server]
B --> D[Headless RakClient]
D -->|UDP localhost| C
C -->|server response| D
D --> B
B -->|assertion| AGültiger Roundtrip-Nachweis:
command dikirim
→ server callback menerima command
→ gamemode mengirim response
→ client menerima response
→ MCP assertion berhasilAllein Spawned ist kein Beweis dafür, dass der Befehl erfolgreich war.
Installation
1. Python einrichten
Python 3.10 oder neuer ist erforderlich.
2. Projekt installieren
Vom Repository-Stammverzeichnis ausführen:
Windows
py -3 -m venv .venv
.venv\Scripts\activate
python -m pip install --upgrade pip
python -m pip install ".[dev]"Linux / macOS
python3 -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pip
python -m pip install ".[dev]"3. Überprüfen
pytest -qErwartete Ausgabe:
35 passedDie open.mp- und RakClient-Binärdateien werden nur für Live-Tests benötigt. Die Python-Unit-Tests können auch ohne diese Binärdateien ausgeführt werden.
Konfiguration
Erstelle eine lokale Konfigurationsdatei aus der Vorlage:
Windows
copy config.example.json local-server.jsonLinux / macOS
cp config.example.json local-server.jsonInhalt der Datei:
{
"executable": "vendor/openmp/Server/omp-server.exe",
"working_dir": "vendor/openmp/Server",
"args": ["--config-path", "config.json"],
"ready_text": "Legacy Network started on port",
"startup_timeout": 30
}Passe executable und working_dir an den Speicherort von open.mp auf deinem Computer an. local-server.json ist nicht in Git eingecheckt, da die Pfade auf jedem Computer unterschiedlich sind.
MCP-Server ausführen
Nur Server
mcp-gta-samp --config local-server.jsonMit Headless-RakClient
Windows
mcp-gta-samp ^
--config local-server.json ^
--client-executable vendor/rakclient-bin/rakclient.exe ^
--client-arg --server ^
--client-arg 127.0.0.1:7777 ^
--client-arg --nick ^
--client-arg MCPBot ^
--client-arg --scripts-dir ^
--client-arg vendor/rakclient-bin/scripts ^
--gamemode-source vendor/openmp/Server/gamemodes/mcp_test.pwnLinux / macOS
mcp-gta-samp \
--config local-server.json \
--client-executable vendor/rakclient-bin/rakclient \
--client-arg --server \
--client-arg 127.0.0.1:7777 \
--client-arg --nick \
--client-arg MCPBot \
--client-arg --scripts-dir \
--client-arg vendor/rakclient-bin/scripts \
--gamemode-source vendor/openmp/Server/gamemodes/mcp_test.pwnDer MCP-Transport verwendet stdio.
MCP-Tools
Tool | Funktion |
| Startet den Server und wartet auf die Bereitschaft. |
| Prüft den Serverstatus und die PID. |
| Fährt den Server herunter. |
| Startet den Headless-RakClient. |
| Prüft den Clientstatus. |
| Fährt den Client herunter. |
| Sendet erlaubte Slash-Befehle nach |
| Ruft die gepufferte Client-Ausgabe ab. |
| Stellt sicher, dass eine bestimmte Ausgabe beim Client eintrifft. |
| Zeigt Befehle aus dem Pawn-Quellcode an. |
| Validiert Befehle anhand der Zulassungsliste. |
Die letzten beiden Tools sind verfügbar, wenn --gamemode-source verwendet wird.
Workflow für KI-Agenten
1. server_status
2. server_start jika belum berjalan
3. client_start
4. tunggu state Spawned
5. server_list_commands
6. server_assert_command("/help")
7. client_send_chat("/help")
8. client_assert_output("MCP Test Commands:")
9. client_get_history bila perlu diagnosis
10. client_stop
11. server_stopWichtige Anweisungen für den Agenten:
greife nicht auf öffentliche Server zu;
betrachte Booten, Beitreten oder
Spawnednicht als Befehls-Roundtrip;klassifiziere bei Fehlern die Grenze: Boot, Verbindung, Spawn, Warteschlange, ausgehendes Paket, Server-Callback, Serverantwort, Client-Parser oder MCP-Assertion;
beende die Prozesse nach dem Test immer;
stelle sicher, dass der UDP-Port
7777wieder frei ist.
Beispiel für einen Live-Test
Ein Test-Gamemode ist verfügbar unter:
vendor/openmp/Server/gamemodes/mcp_test.pwnVerfügbare Befehle:
/help
/statusWenn der Pawn-Quellcode geändert wird, kompiliere die .amx aus dem Serverordner neu:
qawno\pawncc.exe -i.\qawno\include -o.\gamemodes\mcp_test .\gamemodes\mcp_test.pwnLive-Workflow:
server_start
→ client_start
→ client mencapai Spawned
→ client_send_chat("/help")
→ client_assert_output("MCP Test Commands:")
→ client_assert_output("/status - show a test response")
→ client_stop
→ server_stopDer Headless-RakClient weist Protokoll, Zustand und Befehle nach. Er erzeugt keine Screenshots. Für visuelle Tests ist ein separater gerenderter GTA-Client erforderlich.
Entwicklung
Tests ausführen:
pytest -qWheel erstellen:
python -m pip wheel . --no-deps -w distWheel installieren:
python -m pip install dist/mcp_gta_samp-0.1.0-py3-none-any.whlKernstruktur:
mcp_gta_samp/ package Python dan MCP facade
tests/ unit, contract, dan bridge tests
config.example.json template konfigurasi
vendor/ binary dan fixture live testSicherheit
Dieses MCP beschränkt die Nutzung auf lokale/eigene Server. Gib keine Anmeldedaten, Proxy-Pools, privaten Konfigurationen, privaten Protokolle oder Testserverdaten in ein öffentliches Repository.
Wenn du den Server aus dem Internet erreichbar machst, füge selbst Authentifizierung und Netzwerkisolierung hinzu. Dieses Paket ist nicht als öffentliche Spielsteuerungs-API konzipiert.
Lizenz
MIT-Lizenz. Siehe LICENSE.
Links
Repository: marhenrik635-oss/mcponmysamp
Issues: Problem melden
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 Connectors
Hosted MCP server connecting claude.ai, ChatGPT and other AI apps to your own computer
MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.
Connect AI agents to Flato's editable canvas runtime through a hosted MCP server.
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/marhenrik635-oss/mcponmysamp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server