Quibity AI connector documentation
The Quibity connector is an MCP server that lets an AI assistant (Claude, ChatGPT or any assistant that supports MCP connectors with OAuth) work with your Quibity account: show your eSIMs, their usage and installation details, find plans and prices for your next trip, rename eSIMs, and prepare purchases that you confirm.
It is free for every Quibity customer and needs nothing to install: you add the connector URL in your assistant and log in to your Quibity account once.
Connect your assistant
Add this URL as a custom connector (Claude), a custom MCP server (ChatGPT) or an MCP server (other assistants), with OAuth as the authentication:
https://mcp.quibity.com/mcpThe assistant sends you to the Quibity login page, where you log in with your usual method and choose which permissions the assistant gets. Step by step instructions for Claude and ChatGPT are on the connector page.
You can disconnect an assistant at any time from the Connected apps section of your account settings; its access stops immediately.
Permissions
When you connect, you grant the assistant one or more of these permissions. A tool whose permission was not granted answers that it is not allowed, and the assistant can ask you to reconnect with it.
- See your eSIMs (
esims:read): See your eSIMs, their usage and installation details, plans and prices, and your balance - Manage your eSIMs (
esims:write): Rename your eSIMs - Purchases (
purchases): Start a purchase. Payments are always completed by you on the Quibity checkout page, or from your balance when you ask for it
Tools
These are the tools the assistant can call, with the exact description it receives from the server. A read only tool never changes anything on your account.
| Tool | Permission | Access |
|---|---|---|
List eSIMslist_esims
Lists the customer's eSIMs, newest first, with id, ICCID, name, destination, status, days left, expiry and data left. Unlimited plans show data as unlimited (never quote a data total or usage for them). ready is false while the carrier is still preparing an eSIM. Expired eSIMs and eSIMs the customer archived in the Quibity app are included only on request (archiving is done in the app, not here). Use get_esim for one eSIM in detail and get_esim_installation for its QR code. |
See your eSIMs | Read only |
Get eSIMget_esim
Details of one of the customer's eSIMs by esim_id or ICCID: status, destination, plan, days left, expiry, data used and left, and the installation details (QR code URL, activation code, iPhone link) while the eSIM can still be installed. Unlimited plans show only days and the fair use line, never a data total or usage. A pending eSIM (ready false) is still being prepared by the carrier: the customer gets an email when it is ready. |
See your eSIMs | Read only |
Get eSIM installationget_esim_installation
How to install one of the customer's eSIMs, by esim_id or ICCID: the QR code image URL, the SM-DP+ address and activation code for manual entry, the full LPA string, an iPhone install link and short steps. Available only while the eSIM is not installed yet (or was deleted from the phone). A pending eSIM has no installation details yet: the customer gets an email when it is ready. |
See your eSIMs | Read only |
List destinationslist_destinations
Lists the countries and regions Quibity sells eSIM plans for, with the destination_id that get_plans takes and the name in the customer's language. A region plan covers several countries. |
See your eSIMs | Read only |
Get plansget_plans
Plans and prices for a destination (country or region destination_id from list_destinations), in the customer's currency unless another supported currency is given. Fixed plans list their data in GB and days. Unlimited plans have no data limit and carry a fair use line (high speed GB per day, then the speed after it). VAT, where it applies, is added at checkout. Use the plan_id to buy a plan. |
See your eSIMs | Read only |
Get accountget_account
The connected Quibity account: email, name, language, account balance with its currency, and the number of eSIMs (the same ones list_esims shows by default). The balance can pay for plans and top ups. |
See your eSIMs | Read only |
Rename eSIMrename_esim
Gives one of the customer's eSIMs (by esim_id or ICCID) a custom name, for example the trip it is for. The name is shown in the Quibity app and on the website instead of the plan name. Between 1 and 40 characters. Returns the updated eSIM. |
Manage your eSIMs | Changes data |
Buy planbuy_plan
Buys an eSIM plan (plan_id from get_plans). quantity is the number of eSIMs (default 1), coupon an optional discount code. Two ways to pay. By default (use_balance false) it charges nothing and returns a checkout link with the price summary: the customer opens it in a browser, lands logged in to their Quibity account and pays there. The link works once and expires in 15 minutes; VAT, where it applies, is added at checkout. With use_balance true the purchase is paid from the account balance in two steps. The first call charges nothing and returns a quote (total with VAT, balance, balance after) with a confirmation_token: show the quote to the customer. Only after the customer confirms, call again with the same arguments plus the confirmation_token: that call charges the balance and returns the new eSIMs with their installation details (an eSIM with ready false is still being prepared by the carrier). If the balance does not cover the price, nothing is charged and a checkout link comes back that applies the balance, with to_pay_by_card for the rest. Never send a confirmation_token the customer has not explicitly confirmed. |
Purchases | Changes data |
Top up eSIMtop_up_esim
Buys a top up (more data and days) of one of the customer's eSIMs, by esim_id or ICCID. refill_id must be one of the top ups of that eSIM: a call with an unknown refill_id answers with the available ones (refill_id, data, days, price). Two ways to pay. By default (use_balance false) it charges nothing and returns a checkout link with the price: the customer opens it in a browser, lands logged in to their Quibity account and pays there. The link works once and expires in 15 minutes. With use_balance true the top up is paid from the account balance in two steps. The first call charges nothing and returns a quote (total, balance, balance after) with a confirmation_token: show the quote to the customer. Only after the customer confirms, call again with the same arguments plus the confirmation_token: that call charges the balance and returns the refreshed eSIM. If the balance does not cover the price, nothing is charged and a checkout link comes back that applies the balance, with to_pay_by_card for the rest. Never send a confirmation_token the customer has not explicitly confirmed. |
Purchases | Changes data |
Top up balancetop_up_balance
Returns a checkout link that adds money to the customer's Quibity account balance, which pays for eSIMs and top ups. The customer opens the checkout link in a browser, lands logged in and pays there; this tool charges nothing. amount must be one of the top up amounts of the currency (the account currency unless another supported one is given): a call with another amount answers with the allowed ones. The link works once and expires in 15 minutes. |
Purchases | Changes data |
How purchases work
- By default a purchase tool charges nothing: it returns a checkout link that only you can open. You land logged in on the Quibity checkout page and pay there with your usual payment method. The link works once and expires after 15 minutes.
- Paying from your account balance takes two steps. The assistant first receives a quote (the total, VAT included, and the balance left after it) that it has to show you. Your balance is charged only when the assistant calls again with the confirmation of that quote, which it may send only after you said yes. A quote can be used once and expires after 10 minutes.
- The connector never sees your card details, and it cannot change your payment methods, your address or your login details.
Security and data
- Authentication is OAuth 2.0 with PKCE. Every connection is tied to one Quibity account and to the permissions you granted; an assistant can never reach another account.
- Access tokens expire after one hour and are renewed with a refresh token that expires after 90 days. Tokens are stored as hashes on our side.
- Quibity receives only the tool calls the assistant makes and answers them. Your conversation stays with the assistant's provider and is never sent to Quibity.
- What the connector reads and stores is described in the privacy policy of the connector.
Technical details
- Endpoint:
https://mcp.quibity.com/mcp, MCP over Streamable HTTP (JSON-RPC over POST, JSON answers, no server-sent events, no sessions). - Protocol versions:
2025-03-26,2025-06-18,2025-11-25. - Authorization: OAuth 2.0 authorization code with PKCE (S256), public clients only. Clients register through Dynamic Client Registration (RFC 7591) or a Client ID Metadata Document; both are discovered from the metadata documents below.
- Discovery:
https://mcp.quibity.com/.well-known/oauth-protected-resource/mcp(protected resource metadata, RFC 9728) andhttps://mcp.quibity.com/.well-known/oauth-authorization-server(authorization server metadata, RFC 8414). - Scopes:
esims:read,esims:write,purchases. A request without a scope gets all three; the customer can still grant fewer on the consent page. - Every tool declares a title and the read only or destructive annotation. Requests are rate limited per connection; the server answers with a JSON-RPC error when a limit is reached, never with a partial result.
- The server is operated by Quibity and talks to the Quibity backend only; no data is sent to other services.
Support
For questions about the connector, a connection that fails, or to report a security issue, write to [email protected].