PicX MCP Server
PicX MCP Server
Ein FastMCP 4 Server, der PicX Studio Bild- und Videogenerierung jedem MCP-Client über sitzungsloses Streamable HTTP bereitstellt.
Gehosteter Endpunkt: https://mcp.picxstudio.com/mcp
⚠️ Noch nicht bereitgestellt. Der Dienst läuft derzeit lokal; der Produktionsbetrieb ist geplant (siehe PLAN-MCP Phase 6).
Warum FastMCP 4
Das Thema von FastMCP 4 ist „zustandsloser Transport ohne zustandslosen Anwendungscode“. Die von FastMCP 4 anvisierte Protokollrevision — 2026-07-28 — entfernt die Sitzungsaffinität vollständig. Jede Replik hinter einem gewöhnlichen Load Balancer kann jede Anfrage bedienen. Keine Sticky Sessions, keine Cookie-Weiterleitung, kein gemeinsamer In-Memory-Zustand zwischen Anfragen.
Das ist für uns nicht optional: MCP-Clients (Cursor, Claude Code) verwenden intern fetch() und leiten Set-Cookie-Header nicht weiter, daher kann Sticky-Session-Lastverteilung unabhängig von der LB-Konfiguration nicht funktionieren. Der stateless_http=True-Modus von FastMCP 4 ist der einzige gangbare Weg zur horizontalen Skalierung.
FastMCP 4 verhandelt außerdem beide Protokollzeitalter (Legacy-SSE und modernes Streamable HTTP) aus einer einzigen Bereitstellung, sodass ältere Clients nicht auf der Strecke bleiben.
Related MCP server: LLM Wiki Streamable HTTP MCP Server
Tool-Status
# | Tool | Status | Notizen |
1 |
| ✅ Funktioniert | Inline, 5–20 s |
2 |
| ✅ Funktioniert | Erfordert zuerst einen Upload (die API lehnt Data-URIs ab) |
3 |
| ✅ Funktioniert | Hintergrundtask ( |
4 |
| ✅ Funktioniert | Generierung anhand der ID abfragen |
5 |
| ✅ Funktioniert | Gibt eine CDN-URL zurück, die von Bearbeitungswerkzeugen verwendet werden kann |
6 |
| ✅ Funktioniert | |
7 |
| ✅ Funktioniert | |
8 |
| ✅ Funktioniert | Zwischengespeichert (5 Min.) |
9 |
| ✅ Funktioniert | Katalog mit 50K+ Einträgen; zwischengespeichert |
10 |
| ✅ Funktioniert | |
11 |
| ✅ Funktioniert | |
12 |
| ✅ Funktioniert | |
13 |
| 🔴 Blockiert |
|
Bekannte Einschränkungen
Videomodi: Es sind nur die Modi
text,imageundreferenceverfügbar. Die Modiframes,extend,lipsyncundediterfordern Felder, die das Parameterschema ohne dedizierte Validierung nicht sicher serialisieren kann – ihre Bereitstellung würde verwirrende 422-Fehler der API hervorrufen.picx_list_generations: Implementiert und bereit zur Aktivierung, aber blockiert, bis das BackendGET /v1/generationsausliefert.Tariflimits: Die Sichtbarkeit von Rate-Limits pro Tarif und Tageslimits ist möglicherweise nicht verfügbar, bis der Konto-Endpunkt sie bereitstellt.
OAuth: Noch nicht angebunden (Phase 5). Die Authentifizierung per API-Schlüssel funktioniert heute.
Schnellstart
# Clone and install
git clone https://github.com/Type-Think-AI/picx-mcp.git
cd picx-mcp
uv sync
# Configure
cp .env.example .env
# Edit .env — set PICX_API_KEY to your key from https://ai.picxstudio.com/api
# Run
python -m picx_mcpDer Server startet unter http://localhost:8000. Der MCP-Endpunkt befindet sich unter /mcp, der Health-Check unter /health.
Client-Konfiguration
Claude Desktop
{
"mcpServers": {
"picx": {
"url": "http://localhost:8000/mcp",
"headers": {
"Authorization": "Bearer pxsk_your_api_key_here"
}
}
}
}Claude Code
{
"mcpServers": {
"picx": {
"url": "http://localhost:8000/mcp",
"headers": {
"Authorization": "Bearer ${PICX_API_KEY}"
}
}
}
}Cursor
{
"mcpServers": {
"picx": {
"url": "http://localhost:8000/mcp",
"headers": {
"Authorization": "Bearer ${PICX_API_KEY}"
}
}
}
}VS Code (Copilot)
{
"mcp": {
"servers": {
"picx": {
"type": "http",
"url": "http://localhost:8000/mcp",
"headers": {
"Authorization": "Bearer ${PICX_API_KEY}"
}
}
}
}
}Ersetzen Sie localhost:8000 durch mcp.picxstudio.com, sobald der gehostete Dienst live ist.
Authentifizierung
Zwei Authentifizierungsebenen, ein Durchsetzungspunkt:
API Key ( | OAuth (Phase 5, noch nicht verfügbar) | |
Wer | Entwickler, CI, skriptgesteuerte Agenten, Selbst-Hoster | Normale Benutzer auf gehosteten Clients |
Bezugsquelle | Ein-Klick-Zustimmungsbildschirm | |
Funktionsweise | Schlüssel wird pro Anfrage weitergeleitet – der Server speichert keine Anmeldeinformationen | OAuth wird zu einem Sitzungsschlüssel aufgelöst |
Widerruf | Schlüssel löschen | Gewährung widerrufen – echte Schlüssel bleiben unberührt |
Beide Pfade münden in dieselbe /v1-Durchsetzung: Scopes, Rate Limits, tägliches Kreditlimit, Anfrageprotokollierung. Es gibt keinen schwächeren zweiten Pfad.
Der MCP-Server speichert niemals eine Anmeldeinformation. Er leitet den API-Schlüssel des Aufrufers (oder den aufgelösten Sitzungsschlüssel) an /v1 weiter. Ein Schlüssel, den er nie speichert, ist ein Schlüssel, den er nicht preisgeben kann.
Architektur
MCP Client ──▶ PicX MCP Server ──▶ api.picxstudio.com/v1 ──▶ Provider + Storage
(this repo) (owns everything below)Dieser Server ist eine Übersetzungsschicht. Er wandelt MCP-Tool-Aufrufe in /v1-API-Aufrufe um und übersetzt Ergebnisse zurück in Ressourcenlinks. Er tut absichtlich NICHT:
Einen Modellanbieter direkt aufrufen.
/v1besitzt die Anbieterintegration.Geld anfassen.
/v1verwaltet Kreditabzug, Preisgestaltung, Rabatte, Idempotenz und Erstattung bei Anbieterfehlern.Medien speichern. Ergebnisse sind dauerhafte CDN-URLs; nichts wird zwischengespeichert oder weitergeleitet.
Sitzungszustand verwalten.
stateless_http=Truebedeutet, dass jede Anfrage in sich abgeschlossen ist.
Warum nicht Anbieter direkt aufrufen? /v1 führt bereits aus: Authentifizierung → Rate Limit → Tageslimit → Scope-Prüfung → Preis aus Konfiguration → Rabatt anwenden → Idempotenzprüfung → Kredite abziehen → Anbieter aufrufen → Erstattung bei Fehler → Anfrageprotokoll schreiben. Jede Nachimplementierung hiervon würde irgendwann abweichen, und eine Abweichung in der Geldlogik ist ein Abrechnungsfehler — still und dauerhaft vertrauenszerstörend.
Multi-Replica-Tests
Die gesamte These hinter der Wahl von FastMCP 4 ist, dass keine Sitzungsaffinität erforderlich ist. Um es lokal zu beweisen:
docker compose up --scale app=2Dies startet zwei Server-Repliken hinter einem Round-Robin-Proxy sowie eine Valkey-Instanz. Der Test, der die Architektur validiert:
Starten Sie einen interaktiven Tool-Aufruf auf Replik A (löst
InputRequiredResultaus)Setzen Sie die Interaktion fort – die Anfrage landet auf Replik B
Sie ist erfolgreich, weil
REQUEST_STATE_KEYgemeinsam genutzt wird
Wenn REQUEST_STATE_KEY nicht gesetzt ist (oder sich zwischen Repliken unterscheidet), schlagen interaktive Runden mit einem Zustandsvalidierungsfehler fehl. Das ist beabsichtigt – es macht Fehlkonfiguration laut statt subtil falsch.
Umgebungsvariablen
Variable | Erforderlich | Beschreibung |
| Nein (Standard: | PicX-API-Wurzel. Muss auf |
| Ja | ≥32 Bytes, byte-identisch über alle Repliken. Schützt den Zustand interaktiver Runden. |
| Ja | Valkey/Redis-URL. Bildet die Grundlage für Tasks, Antwort-Cache und OAuth-Speicher. |
| Nein (Standard: 2000) | Maximale Kredite, die eine MCP-Sitzung ausgeben darf, unabhängig vom Tageslimit des Kontos. |
| Nein (Standard: 200) | Oberhalb davon gibt das Tool |
| Phase 5 | Expliziter JWT-Schlüssel. Ohne ihn werden Token ungültig, wenn das OAuth-Clientgeheimnis rotiert. |
| Phase 5 | Fernet-Schlüssel. Ohne ihn werden vorgelagerte OAuth-Tokens im Klartext gespeichert. |
| Phase 5 | Google-OAuth-Client-ID. |
| Phase 5 | Google-OAuth-Clientgeheimnis. |
| Phase 5 (Standard: | Öffentliche URL für OAuth-Rückrufe. |
Ehrliche Grenzen
Jede Generierung kostet Kredite. Dieser Server umgeht keine Preisgestaltung – genau das ist der Punkt.
Obergrenze pro Sitzung (Standard: 2000 Kredite) begrenzt einen per Prompt injizierten Kreditabfluss. Dies ist unabhängig vom Tageslimit des Kontos (13.000/Tag).
Bestätigungsaufforderung oberhalb des Schwellenwerts (Standard: 200 Kredite) vor der Ausgabe.
Keine Offline-/lokale Generierung. Jede Generierung erreicht die PicX-API über das Netzwerk.
Video ist asynchron. Selbst wenn
task=Truedas Polling verbirgt, dauert die Generierung Minuten – ein Agent muss warten.Rate Limits gehören der API, nicht diesem Server: standardmäßig 60 Anfragen/Min., 10.000 Anfragen/Tag. Der MCP-Server fügt kein zusätzliches Limit hinzu.
Der Server befindet sich in der Beta. FastMCP 4 ist
4.0.0b3. Rechnen Sie mit rauen Kanten.
Lizenz
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
- AlicenseNot gradedqualityCmaintenanceExposes BookClaw's author workflow to MCP clients over Streamable HTTP, providing tools for managing books, projects, pipelines, and more.MIT
- AlicenseNot gradedqualityBmaintenanceExposes LLM Wiki desktop capabilities via Streamable HTTP transport for MCP clients, enabling project listing, file reading, search, and knowledge graph queries through a secure API.MIT
- AlicenseAqualityBmaintenanceMCP server for Pixmax API enabling generation of images, video, text, audio, and 3D across dozens of models like Midjourney, Kling, and ElevenLabs.10MIT
- FlicenseNot gradedqualityCmaintenanceMCP server for Revspot's image generation, exposing DTC-ads tools such as generate_image, show_marketing_studio, and media upload to generate and manage marketing creatives.
Related MCP Connectors
Generate images with any major model — one API key, one prepaid balance, one MCP.
MCP server for the FFmpeg Micro video transcoding API — create, monitor, download transcodes.
A paid remote MCP for HyperFrames, built to return verdicts, receipts, usage logs, and audit-ready J
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/Type-Think-AI/picx-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server