MCP App Store
by KeenEthics
doctorSIM Agentic Commerce icon

doctorSIM Agentic Commerce

By doctorSIM

Get New App Alerts

Overview

doctorSIM Agentic Commerce helps users browse supported countries, identify mobile carriers, compare mobile top-up prices, buy gift cards, choose travel eSIM plans, preview order totals, place confirmed orders, and check order status through ChatGPT. Regular users pay via a doctorsim.com payment link; PRO users can debit prepaid credits. Guest checkout does not require a doctorSIM login.

Tools

create_esim_order

ChatGPT
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_esim_topup

ChatGPT
Create an eSIM top-up for a titular-owned ICCID. Body: catalog_id + price_token from get_esim_topup_plans. Consumer OAuth returns payment_link; PRO debits catalog retail_eur from credits and returns order_id + credits_used. Insufficient wallet is INSUFFICIENT_CREDITS with no debit. Idempotency-Key replay does not double-debit. Fulfilment is is_topup (no new QR). Requires OAuth orders:write.

create_order

ChatGPT
Place the order after user confirmation (reuse price_token from preview_order). Guest default: returns payment_link + checkout_hash — no doctorSIM login required; share the link for payment on doctorsim.com. OAuth PRO: debits credits and returns order_id. Offer account linking only if the user asks for PRO credits or saved settings.

get_balance

ChatGPT
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

ChatGPT
List countries available for top-up and gift card services.

get_esim_destinations

ChatGPT
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

ChatGPT
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. Also returns nested consumption (cron snapshot: activated, unlimited, data_remaining_gb, days_left).

get_esim_plan_detail

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

get_esim_plans

ChatGPT
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_esim_topup_plans

ChatGPT
List the exact doctorsim.com top-up packs for a titular-owned eSIM ICCID (same order as Mi Cuenta). No custom amount. Each plan includes catalog_id and a signed price_token on catalog retail_eur (the same amount PRO credits debit). PRO accounts receive checkout_mode=credits. Requires OAuth orders:read.

get_giftcard_brand_products

ChatGPT
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

ChatGPT
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

ChatGPT
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

ChatGPT
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

ChatGPT
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

ChatGPT
Check order or checkout status. Guest: pass checkout_hash from create_order (no login). OAuth: pass order_id from create_order or list_orders. Fulfilled gift cards may include redemption_code or redemption_url.

guest_order_lookup

ChatGPT
Guest order status when checkout_hash is gone. Pass the buyer email and the user-visible ticket (order_id). No login. Wrong email or wrong ticket both return generic ORDER_NOT_FOUND. Prefer get_order_status with payment_link when the hash is still known. Sequential GET /orders/{id} still requires OAuth.

list_orders

ChatGPT
List completed or refunded orders for the authenticated user. Requires OAuth — not available for guest checkout.

list_webhooks

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

lookup_carrier

ChatGPT
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

ChatGPT
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

ChatGPT
Returns the price breakdown WITHOUT placing an order. Guest (no login): checkout_mode=payment_link — show amount_due_eur; user pays on doctorsim.com after create_order. OAuth PRO: checkout_mode=credits with credit applied. Ask whether the user wants a payment link (default) or to link a PRO account for credits. Call once after rate selection, then confirm before create_order.

search_products

ChatGPT
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.

Capabilities

Writes

Example Prompts

Click any prompt to copy it.

Similar Apps