MCP App Store
by KeenEthics
Communication
doctorSIM icon

doctorSIM

by doctorSIM.com

Overview

Remote MCP server for mobile top-ups, travel eSIM plans, and digital gift cards across 200+ countries and 1,600+ carriers. Guest checkout via payment link; OAuth for PRO credits, order history, and webhooks.

Tools

create_esim_order

Claude
Alias of create_order with type=esim (kept for existing connectors). Guest / consumer: call without Authorization as soon as the plan is chosen — preview is optional. Show the buyer only payment_link and order_id when one exists. Never display checkout_hash (machine id for get_order_status). Buyer types email on the doctorsim.com checkout page and receives the eSIM by email after payment — do not promise an in-chat QR for guests. PRO OAuth: preview first, then create — debits prepaid credits and returns order_id, status, credits_used. Pass a unique idempotency_key per create. If the result lacks order_id, call list_orders / get_order_status — never re-create. Confirmation is emailed to the titular account when one is linked. Sandbox keys create a fake eSIM order (sandbox_esim_{id}, no credit debit, no ticket).

create_order

Claude
Place the order — one tool for every vertical; type is inferred from price_token / catalog_id. Success always returns order_id, status, and (PRO credits) credits_used — never treat raw payment-gateway text as confirmation. Guest / consumer: call as soon as the product is chosen (preview optional). Show the buyer only payment_link and order_id when one exists. Never display checkout_hash. Guest products are emailed after the buyer pays on doctorsim.com. OAuth PRO: preview first, then create — debits credits. Multi-SKU (e.g. three gift cards): N create_order calls with a DISTINCT idempotency_key each. If a response lacks order_id, call list_orders / get_order_status — never re-create on ambiguous success. Offer account linking only if the user asks for PRO credits or saved settings.

get_balance

Claude
PRO accounts only (requires balance:read OAuth scope). Returns the authenticated PRO user prepaid credit balance in EUR. Requires linking a doctorSIM account — do NOT call for guest checkout flows.

get_countries

Claude
List countries available for top-up, travel eSIM, and gift card services.

get_esim_destinations

Claude
List travel eSIM destinations (countries and regional/global coverage) with starting prices. country_iso is ISO-2 (es) or a region slug (eu, ww, as). Use it for get_esim_plans.

get_esim_line

Claude
Look up remaining data for a titular-owned eSIM by ICCID (from a fulfilled get_order_status). The line is the same on every device. Requires OAuth. Refreshes from the provider only when the last check is older than five minutes.

get_esim_plan_detail

Claude
Full detail for one eSIM plan by catalog_id, including price_token and unlimited (boolean).

get_esim_plans

Claude
List publishable travel eSIM plans for a destination. country_iso is matched strictly: ISO-2 (es) returns that country only — not eu/ww regional or global plans. Use region slugs (eu, ww, as) for regional/global coverage. Each plan includes catalog_id, price_token, and unlimited (boolean). Optional data_type filters unlimited or limited plans; omit or all returns both.

get_giftcard_brand_products

Claude
Gift card denominations for a brand (id_operator from get_giftcard_brands) with token (use as price_token), service fee, and total per price point. Then preview_order / create_order with price_token only — never send a phone for gift cards.

get_giftcard_brands

Claude
List gift card brands (gaming, streaming, retail) for a country — no phone number involved. Each brand is an id_operator; pass it to get_giftcard_brand_products for denominations and price tokens. Paginated: pass cursor=meta.cursor when meta.has_more is true.

get_operator_rates

Claude
Get live pricing for an operator. Each rate has product_name, description (bundle/data details), and token for preview_order/create_order. Use operator_id from get_operator_service_types for the chosen type (bundle vs airtime vs data). Pass q to search descriptions (e.g. q="5GB whatsapp"). Rate totals are indicative — call preview_order for the authoritative breakdown before the user confirms.

get_operator_service_types

Claude
After carrier lookup, list what recharge types are available for an operator: airtime (saldo), bundles, mobile data, etc. Each type has its own id_operator — use that id for get_operator_rates. Ask the user: "Do you want airtime, bundles, or data?" then call rates with the matching service type.

get_operators

Claude
List mobile operators for a country (uses id_country from get_countries). Use when carrier lookup failed or the user already knows the operator.

get_order_status

Claude
Check order or checkout status. Guests: pass payment_link (preferred) or checkout_hash from create_order — no login; the hash is unguessable. Do not pass a sequential order_id without OAuth (IDs are enumerable). Do not ask the buyer for the hash or show it. OAuth / PRO: pass order_id. Fulfilled eSIM orders include iccid, lpa_string, install_url, a hosted qr_code_url PNG, and remaining balance_amount (provider refresh only when last check is older than five minutes). Fulfilled gift cards may include redemption_code or redemption_url.

list_orders

Claude
List completed or refunded orders for the authenticated user. Requires OAuth — not available for guest checkout. type=esim includes iccid, install_url, and hosted qr_code_url on fulfilled rows. balance_amount is "per order basis" on the list (no provider call); remaining data is only on get_order_status.

list_webhooks

Claude
PRO accounts only (requires webhooks:read OAuth scope). Lists registered webhook subscriptions. Requires OAuth.

lookup_carrier

Claude
Identify the mobile carrier (operator) and country from a phone number in E.164 format (e.g. +522221231231). ALWAYS call this FIRST when the user provides a phone number for a top-up. Returns id_operator and id_country for the next steps. If lookup fails, ask the user which carrier/network the number uses.

preview_esim_order

Claude
Alias of preview_order with type=esim (kept for existing connectors). Guest can call this without Authorization (same as preview_order). Preview a travel eSIM order without placing it (no credits deducted). Returns unlimited (boolean), data_gb, and checkout_mode (credits for PRO, payment_link for guest / consumer OAuth). Sandbox keys (test_*) use the sandbox catalog.

preview_order

Claude
Returns the price breakdown WITHOUT placing an order — one tool for every vertical (top-up, travel eSIM, gift card; type is inferred from price_token / catalog_id). Required for PRO credits (shows the debit before create_order). Optional for guest / consumer payment_link — guests can skip preview and create immediately. Guest checkout_mode=payment_link; OAuth PRO checkout_mode=credits. Travel eSIM also returns unlimited and data_gb.

search_products

Claude
Browse the country catalog by operator/brand name (gift cards, gaming, etc.). For mobile top-ups with a phone number, use lookup_carrier first, then get_operator_service_types and get_operator_rates — NOT this tool alone. When operator_id AND q are both set, searches live rate descriptions (bundles/data) for that operator instead of catalog names. Paginated: pass cursor=meta.cursor when meta.has_more is true.

App Stats

20

Tools

Claude

Platforms

Works with

Claude

Data refreshed daily