Connect Cards in Claude and ChatGPT
Cards in Claude and ChatGPT
Two tools answer with an interactive card in hosts that support MCP Apps – Claude and ChatGPT among them. Every other host gets the same answer as text.
- MCP Apps
- list_events
- get_offers
What the cards show
| Tool | Card |
|---|---|
list_events | Upcoming events with date, place, price and seats left, the person's own registrations marked. A free event has a Register button; every event links to its page. |
get_offers | Passes and coaching with their prices before VAT, each linked to its page. Buying happens on Stripe's own page. |
Register on the card asks the person to sign in first, and nothing happens without their click. The card follows the host's light or dark look.
How they work
- Each tool names its card in
_meta.ui.resourceUri:ui://pirateskills/events.htmlandui://pirateskills/offers.html, served astext/html;profile=mcp-app. - The card reads the tool's
structuredContent–{ events }or{ offers }– and talks to the host through the MCP Apps messages: it opens links and callsregister_for_eventthrough the host, never directly. - The card loads nothing from outside the page, so hosts can apply their strictest content rules.
In your own client
Not rendering MCP Apps? Read structuredContent yourself, or the text content, which carries the same data. Nothing about a tool's answer depends on the card.