ChatGPT Orchestrator MCP Server
ChatGPT Orchestrator MCP Server
Minimaler Remote-MCP-Server in Python für das folgende Schema:
ChatGPT -> MCP server -> main orchestrator -> helper agentsIn der ersten Phase enthält der Server ein Tool:
run_orchestratorEingabe:
goal: stringAusgabe: einfacher JSON
Im Inneren befindet sich derzeit ein Platzhalter. Später kann dieser durch den Aufruf Ihres echten Hauptagenten ersetzt werden.
Warum FastMCP
FastMCP wurde gewählt, weil es ermöglicht, ein MCP-Tool mit einer normalen Python-Funktion zu beschreiben und sofort einen Remote-MCP-Endpunkt über HTTP zu starten. Für die Verbindung mit ChatGPT ist ein öffentlicher HTTPS-Endpunkt der Form /mcp erforderlich.
Related MCP server: impart-mcp
Projektstruktur
.
├── .gitignore
├── server.py
├── requirements.txt
├── Procfile
├── render.yaml
└── README.mdLokaler Start
Anforderungen:
Python 3.11+
pip
1. Virtuelle Umgebung erstellen
PowerShell:
python -m venv .venv
.\.venv\Scripts\Activate.ps1Falls unter Windows der Befehl python den Microsoft Store öffnet oder die Version nicht anzeigt, verwenden Sie:
py -3.11 -m venv .venv
.\.venv\Scripts\Activate.ps1macOS/Linux:
python3 -m venv .venv
source .venv/bin/activate2. Abhängigkeiten installieren
pip install -r requirements.txt3. Server starten
python server.pyLokaler MCP-Endpunkt:
http://localhost:8000/mcpStandardprüfung, ob der Server läuft:
http://localhost:8000/healthWenn der Client einen Endpunkt mit einem Schrägstrich am Ende anfordert, verwenden Sie:
http://localhost:8000/mcp/Lokale Überprüfung
Lassen Sie python server.py laufen. Führen Sie in einem zweiten Terminal Folgendes aus:
Invoke-RestMethod http://localhost:8000/healthErwartete Antwort:
{
"status": "ok"
}Wichtig: Wenn Sie http://localhost:8000/mcp im Browser öffnen oder mit einem normalen curl ohne MCP-Header aufrufen, sehen Sie möglicherweise einen Fehler:
{
"error": {
"message": "Not Acceptable: Client must accept text/event-stream"
}
}Das ist für einen MCP-Endpunkt normal. Überprüfen Sie /health mit einem normalen Browser und /mcp mit einem MCP-Client.
@'
import asyncio
from fastmcp import Client
async def main():
async with Client("http://localhost:8000/mcp") as client:
tools = await client.list_tools()
print("TOOLS:")
for tool in tools:
print("-", tool.name)
result = await client.call_tool(
"run_orchestrator",
{"goal": "Create an MVP launch plan"}
)
print("RESULT:")
print(result)
asyncio.run(main())
'@ | pythonErwartete Bedeutung der Antwort: Der Server zeigt das Tool run_orchestrator an und gibt ein JSON mit dem Text zurück, dass der Platzhalter die Aufgabe akzeptiert hat.
Sie können dies auch über den MCP Inspector überprüfen:
npx @modelcontextprotocol/inspectorWählen Sie in der UI den Transport Streamable HTTP und die URL:
http://localhost:8000/mcpDeployment auf Render
Variante über GitHub
Erstellen Sie ein neues GitHub-Repository.
Laden Sie diese Dateien dort hoch.
Öffnen Sie Render.
Klicken Sie auf
New->Web Service.Verbinden Sie das GitHub-Repository.
Render liest normalerweise
render.yamlautomatisch.Bei manueller Konfiguration:
Runtime:
PythonBuild Command:
pip install -r requirements.txtStart Command:
python server.py
Klicken Sie auf
Deploy.
Nach dem Deployment gibt Render eine URL in etwa dieser Form aus:
https://chatgpt-orchestrator-mcp.onrender.comDer Production-MCP-Endpunkt lautet:
https://chatgpt-orchestrator-mcp.onrender.com/mcpProduction-Health-Endpunkt zur Überprüfung im Browser:
https://chatgpt-orchestrator-mcp.onrender.com/healthGenau diese URL muss in ChatGPT eingefügt werden.
Verbindung mit ChatGPT herstellen
Öffnen Sie ChatGPT im Browser.
Gehen Sie zu
Settings.Öffnen Sie
Apps & ConnectorsoderConnectors.Aktivieren Sie den Developer Mode, falls dieser noch nicht eingeschaltet ist:
Advanced settingsDeveloper mode
Klicken Sie auf
CreateoderCreate connector.Ausfüllen:
Name:
OrchestratorDescription:
Runs my main orchestrator agent through MCP.Connector URL:
https://YOUR-RENDER-SERVICE.onrender.com/mcp
Speichern.
Wählen Sie in einem neuen Chat diesen Connector/Tool aus und bitten Sie ChatGPT, den Orchestrator aufzurufen.
Beispiel für eine Testanfrage in ChatGPT
Используй Orchestrator и вызови run_orchestrator с goal:
"Составь пошаговый план запуска MVP моего продукта"Die erwartete Antwort des Tools sieht derzeit etwa so aus:
{
"status": "ok",
"message": "Stub orchestrator accepted the goal.",
"goal": "Составь пошаговый план запуска MVP моего продукта",
"next_step": "Replace call_real_orchestrator() in server.py with your real agent call."
}Wo der Platzhalter durch den echten Agenten ersetzt wird
Öffnen Sie server.py und suchen Sie die Funktion:
def call_real_orchestrator(goal: str) -> dict[str, Any]:Derzeit gibt sie ein Test-JSON zurück. Ersetzen Sie später den Funktionskörper durch den echten Aufruf Ihres Hauptagenten.
Beispiel für eine zukünftige Ersetzung:
def call_real_orchestrator(goal: str) -> dict[str, Any]:
result = my_main_agent.run(goal)
return {
"status": "ok",
"goal": goal,
"result": result,
}Wichtig: Erstellen Sie in der ersten Phase keinen separaten MCP-Server für jeden Hilfsagenten. Lassen Sie ChatGPT nur das Tool run_orchestrator sehen, und lassen Sie Ihren Hauptagenten intern entscheiden, welche Hilfsagenten aufgerufen werden sollen.
Zusammenfassende URLs
Lokal:
http://localhost:8000/mcpProduction-URL-Vorlage:
https://YOUR-RENDER-SERVICE.onrender.com/mcpURL für ChatGPT:
https://YOUR-RENDER-SERVICE.onrender.com/mcpNützliche offizielle Dokumente
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.
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
LLM Orchestration Agent (Mcp)
Hosted MCP runtime where the agent is the operator: sign up by tool call, publish your own tools.
MCP-Native LLM Orchestration Agent
Discover and call AI agents via MCP. Supports A2A agents and platform agents with async tasks.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceAn MCP-based tool orchestrator that exposes a single execute_task tool to Claude while internally managing 100+ tools through hierarchical navigation with a cheaper LLM, preventing context overflow from loading all tool definitions.MIT
- AlicenseAqualityDmaintenanceAn agent orchestration layer that wraps expert agents as MCP tools, enabling integration with Claude Desktop, Cursor, and other MCP-compatible environments.4179MIT
- FlicenseNot gradedqualityCmaintenanceEnables LLM-powered agents to securely communicate with and orchestrate downstream microservices via FastAPI endpoints exposed as MCP tools.-
- AlicenseNot gradedqualityBmaintenanceEnables multi-model leader-worker agent orchestration, workflow execution, and deterministic validation via structured MCP tools.16Apache 2.0
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/vadimsey/MCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server