Aller au contenu

Developers · MCP

Connect your own AI to ASCENT 27.

A read-only MCP server on this site. Add its address to Claude, ChatGPT or any client that speaks the Model Context Protocol, then ask about the programme, the speakers, the exhibitors and the live totals in your own words.

The address

MCP server

https://ascent27.zephyr.events/mcp

No sign-in and no key. Server name ascent27.

Transport

  • Streamable HTTP: each POST carries one JSON-RPC message and gets one JSON answer.
  • Stateless: no session id, no event stream; a GET answers 405.
  • Protocol versions 2025-11-25, 2025-06-18, 2025-03-26.
  • Tools only, every one marked read-only.

Add it to your assistant

Claude

  1. On claude.ai or in the Claude app, open Settings, then Connectors.
  2. Choose Add custom connector, name it ASCENT 27 and paste the address above.
  3. Leave the sign-in settings empty and add it, then switch it on in a chat.

On Team and Enterprise plans an owner adds it for the organisation first. Free plans hold one custom connector.

Claude Code

claude mcp add --transport http ascent27 https://ascent27.zephyr.events/mcp

Then /mcp in a session lists the server and its tools.

ChatGPT

  1. In Settings, under Apps and Connectors, Advanced, switch on developer mode. On Business and Enterprise plans an admin allows it first.
  2. Create a new app (some screens still say connector), name it ASCENT 27, paste the address and choose no authentication.
  3. Pick it from the tools in a chat.

Developer mode needs a paid plan, and ChatGPT moves these settings from time to time, so the labels may differ.

Any other client

Give it the address with the Streamable HTTP transport and no authentication. To see the raw exchange, call a tool with curl:

curl -X POST "https://ascent27.zephyr.events/mcp" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"list_sessions","arguments":{"day":"wednesday","text":"payments"}}}'

Tools

Each tool mirrors an endpoint of the public API and returns its JSON, as text and as structured content. Each carries readOnlyHint: true, destructiveHint: false, idempotentHint: true and openWorldHint: false.

The three list tools, list_sessions, list_speakers and list_exhibitors, return 25 at a time unless limit asks for up to 100; offset moves to the next page, text searches, sort and dir order the list, and each answer gives total (every match) and count (on this page).

get_event The event

ASCENT 27: names, dates, the venue in Lisbon, the three days and the two passes anyone can buy, with prices in US cents and points.

Returns Name, dates, venue, the three days with their names and summaries, the Full Summit Pass and the Day Pass with price, points, early rate date and what each includes.

  • langen, es, fr, de

list_sessions Sessions

The programme by day and time, or by title, a page at a time. Filter by day (a date such as 2027-05-19, a weekday such as wednesday, or a day name such as the climb), by kind and by words that must all appear.

Returns The total that match, then each session with id, day, start and end (Lisbon time), kind, title, description, room, speakers, topics and its page.

  • daystring
  • kindkeynote, session, workshop, social, registration, exhibits
  • textstring
  • sorttime, title
  • dirasc, desc
  • limitinteger
  • offsetinteger
  • langen, es, fr, de

get_session One session

One session by the id list_sessions gives.

Returns The session with its speakers, room, times, topics and page.

  • idrequired, string
  • langen, es, fr, de

list_speakers Speakers

The speakers A to Z by name or by company, a page at a time, optionally only those whose name, role, company or biography has every word given.

Returns The total that match, then each speaker with role, company, biography, photo, sessions and page.

  • textstring
  • sortname, company
  • dirasc, desc
  • limitinteger
  • offsetinteger
  • langen, es, fr, de

get_speaker One speaker

One speaker by slug, such as marco-dizon.

Returns The speaker with role, company, biography, photo and sessions.

  • slugrequired, string
  • langen, es, fr, de

list_exhibitors Exhibitors

The exhibitors A to Z by name or by booth, a page at a time. Filter by hall (A or B), by product category and by words that must all appear.

Returns The total that match, then each exhibitor with description, website, product categories, hall, booth and page.

  • hallA, B
  • categoryloyalty, payments, fraud, data, travel, cx, marketing, mobile
  • textstring
  • sortname, booth
  • dirasc, desc
  • limitinteger
  • offsetinteger
  • langen, es, fr, de

get_exhibitor One exhibitor

One exhibitor by slug, such as nordvale.

Returns The exhibitor with description, website, product categories, hall, booth and page.

  • slugrequired, string
  • langen, es, fr, de

get_totals Totals

Live counts: confirmed registrations by pass, by day (the last days in Lisbon, today so far last, with each pass) and by country, exhibitors, sponsors, booths and check-ins. Counts only, never names.

Returns Confirmed registrations by pass, by day and by country; exhibitors, sponsors; booths sold, reserved and available; people checked in, check-ins today and session scans.

  • daysinteger
  • langen, es, fr, de
tools/call list_sessions
{
  "day": "wednesday",
  "text": "payments"
}
structuredContent, sessions cut to the first
{
  "total": 3,
  "offset": 0,
  "limit": 25,
  "count": 3,
  "sessions": [
    {
      "id": "68a404ff-f2b6-4a89-8754-8e65b4909477",
      "day": "2027-05-19",
      "dayName": "The Climb",
      "dayLabel": "Wednesday 19 May",
      "start": "2027-05-19T09:00:00+01:00",
      "end": "2027-05-19T10:00:00+01:00",
      "kind": "keynote",
      "title": "Opening keynote: the next decade of rewards",
      "description": "What Halvora ships over the next twelve months, and why points and payments are becoming one thing.",
      "room": "Main stage",
      "speakers": [
        {
          "slug": "marco-dizon",
          "name": "Marco Dizon",
          "role": "Chief Product Officer",
          "company": "Halvora",
          "url": "https://ascent27.zephyr.events/speakers/marco-dizon"
        }
      ],
      "topics": [
        {
          "id": "payments",
          "name": "Payments"
        },
        {
          "id": "loyalty",
          "name": "Loyalty and rewards"
        },
        {
          "id": "roadmap",
          "name": "Halvora's roadmap"
        }
      ],
      "url": "https://ascent27.zephyr.events/programme/68a404ff-f2b6-4a89-8754-8e65b4909477"
    }
  ]
}

Six questions to try

  1. Which sessions on Wednesday are about payments?

    list_sessions with day and text
  2. How many people registered this week, by pass?

    get_totals, registrations by day with each pass
  3. Who gives the closing keynote, and where else are they speaking?

    list_sessions, then get_speaker
  4. Which exhibitors in hall B work on fraud and risk, and where are their booths?

    list_exhibitors with hall and category
  5. What does the Day Pass include, and what does it cost in points?

    get_event
  6. Which five countries send the most guests?

    get_totals, registrations by country

What it cannot do

  • Register anyone, book, pay, or change and delete anything: there are no write tools.
  • Read personal records: no guest's name, address or registration; the totals are counts.
  • See text added on the demo since its last reset: new or edited records count in the totals and stay out of the text.
  • Answer about anything outside ASCENT 27's own content; your assistant may still answer from what it knows, so check its sources.
  • Remember earlier requests: each one stands alone.

Security

  • Read-only: every tool only reads, and none can write.
  • No personal records: content and totals only.
  • Seed text only: the text comes from the event's own content as the site was seeded, never from what visitors typed into this open demo, so nobody can plant instructions for your assistant in an exhibitor's description.
  • Rate limited: 120 requests a minute from one address, then 429 with Retry-After.
  • No sign-in, no cookies, nothing stored about who asked.