Hosted MCP Apps Example Gallery
Beispielgalerie für gehostete MCP-Apps
Eine unabhängig gehostete, anfragebegrenzte Adaption von sechs offiziellen MCP-Apps-Beispielen. Die Galerie ist so konzipiert, dass jemand eine entfernte Streamable-HTTP-URL kopieren, sie in einem MCP-Apps-Host verbinden und einen vollständigen interaktiven Tool-/Ressourcenablauf ausprobieren kann, ohne den Quellcode zu klonen oder einen Tunnel zu öffnen.
Dieses Repository und dieser Dienst sind unabhängige Lerninfrastruktur. Sie sind kein offizielles Model-Context-Protocol-Projekt oder -Angebot, haben keine SLA und akzeptieren keine Konten, Uploads, Anmeldeinformationen oder dauerhaften Benutzerdaten.
Probieren Sie die gehostete Galerie aus
Die verifizierte Produktionsgalerie ist openwork-mcp-app-gallery-sol.vercel.app. Fügen Sie eine dieser Streamable-HTTP-URLs zu einem MCP-Apps-kompatiblen Host hinzu:
App | Produktions-MCP-URL | Beispielaufforderung |
Get Time |
| „Zeige mir die aktuelle Serverzeit in einer interaktiven App an.“ |
Budget Allocator |
| „Öffne einen interaktiven Budget-Allokator.“ |
Cohort Heatmap |
| „Zeige mir eine interaktive Kundenbindungs-Kohorten-Heatmap an.“ |
Customer Segmentation |
| „Erkunde die synthetischen Kunden in einem interaktiven Segmentierungsdiagramm.“ |
Scenario Modeler |
| „Modelliere ein synthetisches Wachstumsszenario interaktiv.“ |
Transcript |
| „Öffne die lokale Browser-Transkript-Schnittstelle.“ |
In einem Host, der MCP-Tools, aber nicht MCP-Apps unterstützt, geben dieselben Endpunkte weiterhin gewöhnlichen Text und strukturierte Tool-Ergebnisse zurück; nur die eingebettete interaktive Ressource wird weggelassen. Jede URL stellt genau eine App bereit, verbinden Sie also mehrere URLs, wenn Sie mehrere Beispiele wünschen. Der kopierte Endpunkt benötigt kein Konto, keinen Token und keinen benutzerdefinierten Header.
Der Dienst hat bewusst keine SLA. Eingaben sind begrenzt und synthetisch. Die Transcript-App behält Mikrofonaudio im Browser und lädt es nicht auf diesen Server hoch. Siehe Grenzen und Fehlerverhalten und Diagnose und sichere Beobachtbarkeit, bevor Sie die Galerie in einer gemeinsamen oder automatisierten Umgebung verwenden.
Galeriekatalog
App | Remote-MCP-Pfad | Tool | Interaktives Verhalten | Datengrenze |
Get Time |
|
| Ergebnisauslieferung und serverseitige Aktualisierung | Nur aktueller Server-Zeitstempel |
Budget Allocator |
|
| Budgetsteuerung, Diagramm und von der App bereitgestellte Tools | Feste synthetische Kategorien und Benchmarks |
Cohort Heatmap |
|
| Begrenzte Kohortensteuerung und serverseitige Aktualisierung | Deterministische synthetische Kohorten, maximal 12 × 12 |
Customer Segmentation |
|
| Filter und synthetische Kundenvisualisierung | Feste synthetische Datensätze, begrenzte Filter |
Scenario Modeler |
|
| Vorlagen und begrenzte serverseitige Projektionen | Synthetische Eingaben und 12-Monats-Berechnungen |
Transcript |
|
| Lokale Browser-Sprach-UI und strukturierte Navigation | Audio verbleibt im Browser; kein Server-Upload |
Jeder Pfad ist eine unabhängige MCP-Serveroberfläche mit genau einem Galerie-Tool und einer unveränderlichen ui://-Ressource. Es gibt bewusst keinen übergeordneten Mega-MCP und keinen appübergreifenden Tool- oder Ressourcenzugriff.
Protokoll- und Host-Vertrag
Die Laufzeit verwendet mcp-handler 2.1.1 und @modelcontextprotocol/server 2.0.0 über einen galerieeigenen SDK-v2-Registrierungsadapter. Sie unterstützt:
aktuelle MCP
2026-07-28Discovery- und Request-Envelopes;zustandslosen 2025-Ära Streamable-HTTP-Fallback;
initialize,tools/list,tools/callundresources/read;text/html;profile=mcp-app-Ressourcen mit verschachtelten und Legacy-Flat-UI-Metadaten;gewöhnlichen Textinhalt und strukturierten Inhalt für Nicht-App-Hosts;
App-Initialisierung, anfängliche Eingabe-/Ergebnisauslieferung und UI-ausgelöste serverseitige Tool-Aufrufe;
Anfrageabbrüche, die von Vercel über das Gateway, den Handler, das Tool und die Ressourcenarbeit weitergegeben werden.
Der Dienst ist zustandslos. POST überträgt MCP-Anfragen. GET wird an den Handler weitergeleitet und gibt seinen beabsichtigten sitzungslosen 405 zurück; DELETE gibt 405 zurück; begrenztes OPTIONS ist nur für zugelassene Browser-Ursprünge verfügbar. Dies entspricht dem zustandslosen Transportvertrag des Zwei-Ära-Handlers und vermeidet die Implikation einer serverseitigen Sitzung.
Laufzeitarchitektur
Ein von Vercel erkannter Hono-Einstiegspunkt, app.ts, bedient die Landing Page, Diagnose und sechs parametrisierte MCP-Pfade über eine zustandslose Funktion. Vercel bedient generierte öffentliche Assets aus public/ über sein CDN.
Der Build ist bewusst über eingecheckten Quellcode und die eingefrorene Lockfile geschlossen:
scripts/generate-upstream-manifest.tszeichnet den eingefrorenen Quellcode und die galerieeigenen Adaptionen auf.scripts/bundle-mcp-app-resources.tserstellt deterministische Single-File-HTML-Ressourcen und schlägt fehl, wenn sie 512 KiB überschreiten.scripts/generate-gallery.tsgibt das Landing-Page-Manifest und inhaltsgehashte statische Assets aus.scripts/generate-sbom.tsgibt das festgeschriebene CycloneDX-Inventar aus.src/resources.tsvalidiert die exakte Quellherkunft, Ressourcenidentität, Byte-Größe und SHA-256, bevor die Bereitschaft erfolgreich ist.
Es gibt keinen Laufzeit-Quellcode-Abruf, keine Paketinstallation, keinen Unterprozess, keine willkürliche URL-Eingabe, keinen Upload, keinen beabsichtigten serverseitigen Datenabfluss und keinen veränderlichen Dateisystempfad.
Grenzen und Fehlerverhalten
Anforderungskörper: 256 KiB pro MCP-Anfrage.
Tool-Ergebnis und App-Ressource: jeweils 512 KiB.
Anwendungsfrist: 15 Sekunden.
Vercel-Funktionsobergrenze: 30 Sekunden mit aktiviertem Abbruch.
Gleichzeitigkeit: 48 pro Prozess, mit einer kleineren deklarierten Obergrenze pro App.
Das Gleichzeitigkeits-Gate ist nur ein instanzlokaler Schutz; es wird nicht als global autoritativer verteilter Ratenbegrenzer über Fluid-Instanzen hinweg dargestellt. Anfragen über dem Limit erhalten 429 plus Retry-After; überdimensionierte Anfragen erhalten 413; überdimensionierte nachgelagerte Ergebnisse erhalten 502; Fristüberschreitungen erhalten 504; Client-Abbrüche werden intern unterschieden. Öffentliche Antworten enthalten begrenzte Fehler und niemals Stack-Traces oder Dateisystempfade.
Setzen Sie DISABLED_APP_SLUGS auf eine kommagetrennte Teilmenge der sechs Slugs für den Laufzeit-Notausschalter. Deaktivierte Apps verschwinden aus dem generierten Live-Katalog und geben 404 zurück; /readyz, /version und /apps.json melden den aktivierten Satz. apps.json verwendet eine kurze public, max-age=60, must-revalidate-Richtlinie, sodass eine Änderung einer deaktivierten App nicht hinter einem langen unveränderlichen Cache verborgen bleiben kann.
Diagnose und sichere Beobachtbarkeit
/healthzbeweist nur, dass die Funktion antwortet./readyzvalidiert das Register, die aktivierten Slugs, die Anzahl der gebündelten Ressourcen, Größen und Digests./versiongibt nur Build-SHA, eingefrorenen Upstream-Commit, Modell-Namespace, Adapter-Version, Node-Version, aktivierte Slugs und eine sichere Build-Zeit zurück, wenn konfiguriert.
MCP-Anforderungsprotokolle sind strukturiert und auf den sol-Namespace, App-Slug, Methodenkategorie, Status, Dauer, Byte-Anzahl und sicheren Build-SHA beschränkt. Argumente, Ergebnisse, Aufforderungen, Ressourceninhalte, Autorisierungsheader, Cookies, IP-Adressen, Benutzerkennungen, Anmeldeinformationen und private Bereitstellungs-URLs sind verboten.
Lokale Entwicklung
Verwenden Sie Node.js 24.x und pnpm 10.28.0:
pnpm install --frozen-lockfile
pnpm generate
pnpm devÖffnen Sie http://127.0.0.1:4173. Für einen lokalen oder getunnelten kanonischen Ursprung setzen Sie eine explizite validierte BASE_URL. Außerhalb der Loopback-Entwicklung müssen öffentliche Basis-URLs HTTPS verwenden und dürfen keine Anmeldeinformationen, Abfragezeichenfolgen oder Fragmente enthalten. Willkürliche Host- und Forwarded-Host-Header werden für kopierbare Endpunkte niemals als vertrauenswürdig eingestuft.
Der vollständige repositoryeigene Verifikationspfad ist:
pnpm exec playwright install chromium
pnpm run release:check:ciDieser Pfad führt Formatierung, Linting, striktes TypeScript, Gateway- und Zwei-Ära-Vertragstests, echte Browser-MCP-App-Bridge-Tests, Hinweis-/Herkunftsprüfungen, Vercel-Architekturprüfungen, Produktionsabhängigkeits-Audit, Quellcode-Grenz- und Geheimnis-Scans, SBOM-Generierung und einen produktionsähnlichen Anwendungsbuild aus. pnpm run release:check fügt vercel build --prod --yes hinzu, wenn das genaue Vercel-Projekt verknüpft ist.
Verifikationsdesign
Die Vertragsmatrix verwendet den offiziellen SDK-v2-Client sowohl im festgelegten aktuellen als auch im Legacy-Modus gegen alle sechs Endpunkte. Sie listet Tools auf, ruft jedes repräsentative Tool auf, liest jede App-Ressource, verifiziert den gewöhnlichen Fallback, lehnt fremde Ressourcen ab, prüft ungültige Eingaben, wiederholt Verbindungszyklen und führt 20 repräsentative Clients über den isolierten Katalog aus.
Gateway-Tests decken unbekannte, deaktivierte, traversal-förmige und gespoofte Routen ab; CORS; Methodenrichtlinie; tatsächliche und beworbene Körperobergrenzen; fehlerhaftes JSON und JSON-RPC; Handler-Eindämmung; Ergebnisobergrenzen; Fristen; Abbruch; Gleichzeitigkeit; Boot-Fehler bei fehlender Ressource; sowie Kalt-/Warm-Bereitschaft.
Playwright führt jede gebündelte UI innerhalb eines separaten offiziellen AppBridge-Hosts aus, liefert anfängliche Tool-Eingabe/Ergebnis, übt UI-zu-Tool-Roundtrips aus und prüft die Katalogwiedergabe, das Kopierverhalten, zugängliche Namen, sichtbaren Tastaturfokus, Bildalternativen und das 320-Px-Layout. Diese Testumgebung beweist den Browser-/Bridge-Vertrag der Galerie; sie wird nicht fälschlicherweise als Beweis von einem nicht verwandten Produktionshost bezeichnet.
Freigabenachweise und etwaige bereitstellungsspezifische Beweisstände werden in BENCHMARK_REPORT.md, benchmark/result.json, TIMELINE.md und benchmark/timeline.json festgehalten. Fehlende externe Host-Nachweise bleiben Incomplete oder Skipped, niemals Passed durch Substitution.
Quellcode- und Lizenzgrenze
Der Audit-Snapshot ist auf modelcontextprotocol/ext-apps@10195ad91851502134930e9b80ec2c04e277a720 eingefroren. Nur diese Upstream-Beispielverzeichnisse sind enthalten:
examples/basic-server-reactexamples/budget-allocator-serverexamples/cohort-heatmap-serverexamples/customer-segmentation-serverexamples/scenario-modeler-serverexamples/transcript-server
Jede kopierte Datei verbleibt Byte für Byte unter upstream/ext-apps/, mit ursprünglichem Pfad, SHA-256, Byte-Anzahl, effektiver Lizenz, Hinweis und Änderungsvermerk in upstream/manifest.json. Die ausgewählten Pakete deklarieren MIT zur eingefrorenen Revision.
Drei größenbegrenzte UI-Neuformulierungen befinden sich unter ui-adaptations/; die begrenzte Diagramm-Kompatibilitätsschicht befindet sich unter src/ui/chart-shim.ts. Dies sind galerieeigene Apache-2.0-Codes, und das Manifest zeichnet ihre genauen Dateien, Digests, Größen, Grundlage und Begründung auf. Siehe THIRD_PARTY_NOTICES.md für die vollständige Upstream-MIT-Gewährung und den Lizenzübergangshinweis. Galerieeigener Code ist Apache-2.0 unter LICENSE.
Branch- und Release-Richtlinie
forward ist der einzige Integrations- und Produktionsbranch. Änderungen erfolgen über fokussierte Pull-Requests wie sol/gallery-v1; main und dev sind keine Release-Branches. Der geschützte Branch erfordert Pull-Requests, lineare Historie, abgeschlossene Diskussionen und verbietet Force-Pushes sowie Löschungen. Die Bereitstellung in der Produktion ist eine separate, verifizierte Aktion vom Mergen.
Weitere Informationen zum lokalen Workflow finden Sie in der CONTRIBUTING.md und zum Bedrohungsmodell sowie zur privaten Meldeoption in der SECURITY.md.
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
Build, deploy, and operate hosted web apps on VibeKit (vibekit.bot) from any MCP client.
Access Kernel's cloud-based browsers and app actions via MCP (remote HTTP + OAuth).
Public read-only Précis Finance MCP demo with synthetic data; no account or credentials required.
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/different-ai/openwork-mcp-app-gallery-sol'
If you have feedback or need assistance with the MCP directory API, please join our Discord server