Connect Claude, ChatGPT, Cursor or your own code to Swarmtix, and your assistant answers from your real numbers instead of guessing. Ask it for next year's conference and it builds the draft from this year's. Setup takes about five minutes, and there is no API key to generate.
$ claude mcp add --transport http \
swarmtix https://swarmtix.com/mcp/v1
✓ Added server "swarmtix"
✓ Browser opened, consent approved
> How is MK Code Camp selling this week?
812 / 1,000 sold (+66 this week). Regular pass
is at 85%, Student at 59%. Net sales $61,513.
At ~9/day you sell out in ~20 days, before
the event. Want me to draft a last-call code?
What the connection gives you
Real asks, phrased the way you would say them. The tools underneath are named so you can see exactly what the assistant reaches for.
Open the dashboard, pick the event, open Analytics, open Tickets, copy both into a spreadsheet to compare.
"How is DevConf Berlin selling? Break it down by ticket type."
Revenue, tickets sold against capacity, refunds, page visits and the daily sales curve, in one answer.
swarmtix_analytics_event
swarmtix_tickets_summary
swarmtix_ticket_types_list
Search the attendee list, cross-check the order, work out whether the promo code applied, then reply.
"Did the buyer on this email get their ticket for Friday?"
Their tickets, the type and price, the order it came from, and how many times it has been scanned. Never the barcode.
swarmtix_attendees_search
swarmtix_orders_get
Retype six ticket tiers, three dates and five checkout questions into a form, from a brief you already wrote.
"Copy last year's conference and move it to March."
A new unpublished draft with the same description, branding and location. The assistant sets the new dates and tiers. You review it, then publish it yourself, or let the assistant publish if you granted that permission.
swarmtix_events_duplicate
swarmtix_event_dates_set
swarmtix_ticket_types_create
Open the discounts screen, find the offer, read the dates and the usage count, work out whether it still applies.
"Is EARLYBIRD still valid for the workshop, and what does it take off?"
Whether it would be accepted right now, which offer it belongs to, and the exact reduction.
swarmtix_discounts_check_code
swarmtix_discounts_list
"How is early bird doing against last year?" means four screens and a spreadsheet. Your assistant could answer it in one line, if it could see your data.
Six ticket tiers, three dates, a promo code and five checkout questions. All of it already exists in the brief you wrote. You retype it into a form.
A key is a bearer credential. Whoever holds a copy is you, with every permission you have, until someone notices. Most platforms hand you one and call it integration.
The reason not to connect an assistant is usually the same one: one misread instruction and it refunds an order or emails four thousand people.
47 tools: 19 that read, 28 that write. No refunds, no check-in, no bulk email. Publishing needs its own permission. The only deletes remove an unsold ticket type or parts of an unpublished online event's program; discounts and checkout questions are switched off, not erased.
Pick your client. Each block is complete on its own. You do not need an account on anything but Swarmtix.
https://swarmtix.com/mcp/v1
Run this in your project:
claude mcp add --transport http swarmtix https://swarmtix.com/mcp/v1
Add --scope user to make it available in every project rather than the current one. Then run /mcp inside Claude Code, pick swarmtix, and authenticate.
Create .vscode/mcp.json in your workspace, or put the same block in your user settings for every workspace:
{
"servers": {
"swarmtix": {
"type": "http",
"url": "https://swarmtix.com/mcp/v1"
}
}
}
VS Code prompts you to sign in the first time Copilot uses the server.
Create .cursor/mcp.json in your project, or ~/.cursor/mcp.json for every project:
{
"mcpServers": {
"swarmtix": {
"url": "https://swarmtix.com/mcp/v1"
}
}
}
Then open Settings → MCP and sign in.
JSON-RPC 2.0 over Streamable HTTP. Every call is a POST to the same URL. Authorize with the standard OAuth 2.1 authorization code flow and PKCE; discovery is at /.well-known/oauth-protected-resource.
curl -X POST https://swarmtix.com/mcp/v1 \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-H "MCP-Protocol-Version: 2026-07-28" \
-H "Mcp-Method: tools/list" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
Five protocol revisions are accepted. The dense, machine-readable version of this page is the reference for agents.
Whichever client you used, the last step is the same. Nothing is copied, pasted or stored.
A real Swarmtix page, at the top level of your browser and never inside the assistant. Sign in as you normally would.
One connection covers one organisation. If you run several, add the server once per organisation and name each connection.
Written in plain English, not scope names. Leave out anything you do not want the assistant to have; those tools then never appear in its list.
Nothing is generated, nothing is copied into a config file, and nothing sits in a password manager going stale. Authorization is OAuth 2.1 with PKCE: the assistant gets a short-lived token scoped to exactly the permissions you approved, and you revoke it in one click.
Grouped by the permission you approve on the consent page. Approve none of them and the tools do not appear in the list at all.
List and read your events by ID or URL slug, including dates, ticket types, prices, remaining stock and checkout questions.
events:read
Create an event from a description, duplicate last year's, set its details, images and multi-day dates, add ticket tiers, checkout questions and discounts, and build an online programme. Publishing is a separate permission.
events:write
events:publish
Sales and traffic analytics for one event, and revenue rolled up across the whole organisation.
analytics:read
Read orders and the tickets in them, ticket counts on sale, sold and checked in, list attendees, and find someone's tickets by email. This is buyer personal data, and the consent page says so in those words.
orders:read
attendees:read
List promo codes and offers, check whether a code is valid for an event and what it takes off, create a new one, change it, or switch it off.
discounts:read
discounts:write
Your teams and your saved venues. Not billing, not payouts, not account settings. No permission covers those.
organization:read
profile
These are not gaps we intend to close. The worst outcome of a misread instruction should be that a draft event got edited.
The middle column is the exact sentence you will see on the consent page. Nothing here is a paraphrase of it.
| Permission | What the consent page says | What that covers |
|---|---|---|
profile |
Read your name and email address. | Who you are and which organisation this connection covers. Every connection includes it. |
events:read |
Read your events, event dates and ticket types. | Events, dates, ticket types, prices, remaining inventory and checkout questions. Not who bought anything. |
events:write |
Create, update and remove unsold parts of your events: details, images, dates, ticket types, checkout questions and an online event's program (talks, speakers, categories, hosts). Nothing is published. | Create an event, duplicate one, change its details and images, set its dates, add, change and remove ticket types (only unsold ones can be deleted), add, change and switch off checkout questions, and build an online event's talks, speakers, categories and hosts. Cannot publish. |
events:publish |
Publish your events, which puts their tickets on sale, and unpublish them. Only an event with nothing missing can be published. Nobody is emailed or refunded. | Publish a finished event so its tickets go on sale, and take it off sale again. A publish is refused while anything is missing. Cannot create or change anything else, and cannot move money. |
orders:read |
Read your orders and attendee lists, including ticket buyers' names and email addresses. | Personal data. Order buyer first name, last name and email address; ticket attendee first and last name. Plus ticket counts on sale, sold and checked in. |
attendees:read |
Read your orders and attendee lists, including ticket buyers' names and email addresses. | Personal data. Attendee lists and lookup by email address. Cannot email anyone and cannot check anyone in. |
analytics:read |
Read sales and attendance figures for your events. | Sales and revenue analytics per event, and a roll-up across the organisation. Totals only, no names. |
discounts:read |
Read your discount codes and promotions. | Promo codes and discount offers, and whether a given code is currently valid for an event. |
discounts:write |
Create, update and switch off discount codes, promotions and access codes. | Creates, changes and switches off codes. An access code unlocks a hidden ticket type. It does not publish or move money. |
organization:read |
Read your organization's teams and venues. | Your teams and saved venue layouts. Not billing, payouts or account settings; no permission covers those. |
Orders and attendees share one sentence on the consent page on purpose: they describe the same access to the same personal data, and printing two softer lines instead of one clear one would understate it.
Go to Settings → Developers → Connections and revoke the connection.
It takes effect immediately, on that connection's very next call, not whenever its token happens to expire.
Revoking one assistant does not affect another; each connection is its own grant.
Any client that speaks MCP over HTTP. Claude, ChatGPT, Claude Code, VS Code, Cursor, and your own code all work against the same URL. The server supports five protocol revisions, from 2024-11-05 through 2026-07-28, so older clients and current ones both connect without you choosing a mode.
No. You add the server URL, a Swarmtix page opens in your browser, you pick the organisation and approve the permissions. There is nothing to copy, paste or store. The older 90-day API token used by Zapier and the REST API still works and is unchanged.
https://swarmtix.com/mcp/v1 - with the /v1 on the end. The page you are reading now lives at /mcp and is written for people; /mcp/v1 is the endpoint your assistant talks to. Pasting the wrong one is the most common reason a connection fails to start.
No. Refunds, charges, check-in, bulk attendee email, guest-list import and every delete of an event, order or attendee are outside the tool catalog. An assistant can prepare an event completely. Opening it to the public needs a separate permission, publish, which you approve on its own. Without it, publishing stays your click.
Only what you grant. The orders and attendees permission covers buyer first name, last name and email address, and attendee first and last names. The consent page says so in those words before you approve it. Ticket barcodes and security codes are never returned by any tool, because they are the credential that gets someone through the door.
Settings, then Developers, then Connections. Revoking takes effect on the next call rather than whenever a token happens to expire, because access tokens are checked against our store on every request.
Nothing beyond standard Swarmtix pricing: $0.99 + 1.5% per paid ticket, and free events are always free. There is no separate charge for connecting an assistant and no per-call fee.
60 requests per minute per organisation, sliding window. Over that you get a 429 with a Retry-After header. List tools page at 50 results by default and 200 at most, and a truncated result always says how much it cut and how to get the rest.
One connection covers one organisation. Add the server once per organisation and name each connection so you can tell them apart. A token can never reach data outside the organisation it was granted for.
Your client blocked the pop-up or the browser it chose is not signed in. Open the URL it printed by hand, sign in, and approve. The client picks the token up on its own.
You did not approve the permission that tool needs. Reconnect and approve it, or ask for something covered by what you did approve. Tools you cannot use are hidden rather than refused.
Access tokens are short-lived by design; the client refreshes them silently. If it cannot, the connection was revoked. Reconnect from Setup above.
One connection covers one organisation. Add the server again, pick the other organisation on the consent page, and name the connection so you can tell them apart.
Still stuck? Email [email protected], or read the full documentation.
You pay the same per-ticket fee whether you use the dashboard, the REST API or an assistant. There is no developer tier and no per-call charge.
per paid ticket sold · free tickets are free
Full plan comparison on the pricing page
Add one URL, approve one consent screen. No key to generate, nothing to store.