MCP HeartbeatTHE MCP OBSERVATORY
Public workspace

Explore

Evidence for your next connection.

Independent measurements of remote MCP servers. Every observation has a timestamp.

Read-only probes

MCP server · Payments & trading

Ucode SMS

Virtual phone numbers for SMS/OTP verification. Browse free; pay with credits or USDC (x402).

Checks passed
12 / 22

2 failed · 8 not measured

Median response
263 ms

Median of successful probes over 7 days

30-day uptime
Not measured

Share of countable probes over 30 days, including daily rollups. Auth challenges are excluded.

Discovered tools
50

Tool definitions returned by this server

Independent monitoring

Health & checks

Status history

Responded

The server completed its last measured handshake. This is an observation, not a guarantee.

Last checked
Check summary by test group
Test areaPassedFailedUnmeasured
ConnectionCan a client connect and discover tools?
500
Reliability & speedDoes it respond consistently and quickly?
004
Access & authenticationWhat is required to use this server?
102
Tool qualityAre the tool definitions usable by an agent?
310
Publisher identityCan the publisher be traced to its source?
312

Unmeasured means there is not enough evidence to decide. How these checks work

Inspect individual checks 22 recorded

Core

  • Pass
    Reachable

    Latest probe returned HTTP 200 in 263 ms.

  • Pass
    Valid handshake

    protocolVersion 2025-11-25, serverInfo.name ucode-panel.

  • Pass
    Lists tools

    tools/list returned 50 tools.

  • Pass
    Current protocol

    Negotiated 2025-11-25. The bar is 2025-06-18 or newer.

  • Pass
    HTTPS

    The endpoint URL is https.

Performance

  • Not measured
    Fast (p50)

    Median latency 263 ms over 1 samples in 7 days. The bar is 1000 ms. Need at least 5 samples.

  • Not measured
    Consistent (p95)

    95th percentile 263 ms over 1 samples in 7 days. The bar is 3000 ms. Need at least 20 samples.

  • Not measured
    Reliable (uptime)

    1 of 1 attempts returned a tool list in 30 days (100%). The bar is 99%. Need at least 30 samples.

  • Not measured
    Stable tool list

    Fewer than two successful probes in 30 days, so tool-list stability is not measured.

Access

  • Pass
    Open access

    tools/list succeeded with no credential, and the record declares none.

  • Not measured
    Standard auth

    Auth is not required, so the OAuth metadata check does not apply.

  • Not measured
    Free tier cited

    No publisher quote has been checked.

Tools

  • Pass
    Tools described

    Every tool description is at least 20 characters.

  • Pass
    Valid input schemas

    Every inputSchema is a JSON Schema object.

  • Fail
    Parameters documented

    24 of 73 parameters have a description (33%). The bar is 80%.

  • Pass
    Safety hints

    Every tool sets readOnlyHint or destructiveHint.

Publisher

  • Pass
    Verified namespace

    Listed in the Official MCP Registry.

  • Pass
    Website matches publisher

    The website host matches the reverse-domain namespace.

  • Fail
    Source repo linked

    No repository URL is on file.

  • Not measured
    Repo owner matches

    This namespace is not an io.github login, so the owner comparison does not apply.

  • Pass
    Recently updated

    Updated 2026-09-29T11:35:42.089969Z, within 180 days.

  • Not measured
    Open-source licence

    No GitHub repository to ask about a licence.

Start using Ucode SMS

Connect to this server

Choose your client, copy the configuration, then enable the server in your client’s MCP settings.

Run this command in your terminal, then restart Claude Code.

Claude Code

claude mcp add --transport http ucode-sms https://mcp.ucodesim.com/mcp

Capabilities

Tools 50

ucode_agent_billing

No login. Lists prepaid credit packs priced in USDC on Base for autonomous agents/bots (packageId, credits, usd, payTo). Buy one with **ucode_agent_buy_credits**. Signed-in humans pay by card at https://ucode.uk/app/credits instead (**ucode_render_credits**).

Discovered
ucode_agent_buy_credits

Autonomous agents: buy a prepaid credit pack with USDC on Base using the x402 protocol — no account or card needed. Step 1: call with {pack, acceptLawfulUse:true} (no paymentHeader) → returns PAYMENT_REQUIRED with exact x402 requirements. Step 2: sign that payment with your x402 wallet and call again with paymentHeader → credits are added and a uc_live_ API key is returned (shown once, also stored for this MCP session). Pack ids come from ucode_agent_billing (aliases: starter, plus, pro). Only spend what the user approved.

Discovered
ucode_agent_cancel

Cancel an agent rental when no SMS arrived; credits return to the agent wallet. Requires the uc_live_ API key.

Discovered
ucode_agent_check_sms

Poll an agent rental for the SMS/OTP. Pass id and pollToken from ucode_agent_rent (or rely on the session API key).

Discovered
ucode_agent_quote

Exact USDC (Base) price to rent ONE number for a service/country without prepaid credits. Use the 'service' code from ucode_find_numbers and a countryId.

Discovered
ucode_agent_rent

Rent one virtual number for a lawful SMS verification. Pays from the agent wallet when a uc_live_ API key is active (from ucode_agent_buy_credits, ucode_agent_use_api_key, or an Authorization: Bearer uc_live_… header on the MCP connection). Without a key it uses pay-per-SMS: first call returns PAYMENT_REQUIRED (x402, USDC on Base); call again with paymentHeader. Returns phone, id and pollToken → then call ucode_agent_check_sms. Signed-in human accounts should use ucode_sms_rent_with_credits instead.

Discovered
ucode_agent_use_api_key

Activate a previously issued uc_live_ agent API key for this MCP session (for clients that cannot set an Authorization header).

Discovered
ucode_agent_wallet

Credit balance of the agent wallet behind the active uc_live_ API key.

Discovered
ucode_app_init_snapshot

Combined snapshot (packages, rentals, credit status, settings). Use platform web for ChatGPT (Stripe/crypto web packages); ios/android for native.

Discovered
ucode_authenticate

Hidden escape hatch: only if the user explicitly already has a mobile Bearer token and asks to use it. Do NOT suggest this for normal sign-in — use ucode_login_start + ucode_login_poll instead.

Discovered
ucode_connect

Starts browser sign-in for the visual card **Connect** button. Returns linkUrl + sessionId with uiView sign-in. Poll **ucode_login_poll** until linked.

Discovered
ucode_credit_gift_breakdown

Free-credit badges / gift breakdown.

Discovered
ucode_credit_packages

Same packs as **ucode_render_credits** (data). Prefer **ucode_render_credits**; credits are added on the Ucode website dashboard, never in chat.

Discovered
ucode_credit_referral_redeem

Apply a friend's referral code (once per account, only if the referral program is active). Never guess, generate or loop over codes.

Discovered
ucode_credit_referral_stats

Referral code and earnings summary.

Discovered
ucode_credits_status

Linked wallet — **credits** are in-app points for renting numbers, not a bank balance. Always say “you have X credits”. After the user adds credits on the dashboard, call this so the ChatGPT card refreshes. Never imply USD wallet unless discussing listed pack prices.

Discovered
ucode_credits_verify_app_store_purchase

Server-side verify of RevenueCat / store purchase (same as mobile). Requires packageId, transactionId, productId, platform (iOS/Android), and purchaseToken for Android.

Discovered
ucode_disconnect

Sign out / unlink this ChatGPT conversation from Ucode. Clears the MCP session only (not account deletion). Use when the user asks to sign out, log out, disconnect, or switch accounts. Shows the welcome card with **Connect** again.

Discovered
ucode_find_numbers

No sign-in needed. Search which apps/services (Telegram, WhatsApp, Google, OpenAI…) have virtual numbers in stock, by country, with the price in Ucode credits. Use this first whenever someone asks for a number or a price. Then: signed-in humans rent with ucode_sms_rent_packages → ucode_sms_rent_with_credits; autonomous agents use ucode_agent_buy_credits / ucode_agent_rent.

Discovered
ucode_help

Optional natural-language help about Ucode features and flows. Uses the OpenAI key from Panel (Settings → ChatGPT App) when set, else OPENAI_API_KEY on the MCP host. Respects the “AI help” toggle in Panel.

Discovered
ucode_instructions

Full product guide (read-only). **Not for the first message** — use **ucode_welcome** first. If the user is not signed in, call **ucode_welcome** / **ucode_login_start** instead of answering rental questions. Official site https://ucode.uk.

Discovered
ucode_login_poll

Poll after **ucode_login_start**. Links the ChatGPT session when the user has finished in the browser — **call repeatedly** until complete; do not ask users to paste tokens or to type “done” as the only completion signal.

Discovered
ucode_login_start

Creates a one-time browser sign-in URL. Prefer the in-card **Connect** button (**ucode_connect**). Poll **ucode_login_poll(sessionId)** until linked.

Discovered
ucode_panel_ping

Public health check against Ucode Panel (no auth). Official downloads and info: https://ucode.uk — do not use unrelated domains (e.g. ucode.io).

Discovered
ucode_payments_nowpayments_create

Creates a crypto invoice (NOWPayments) for human web/Telegram top-ups. ChatGPT humans should use **https://ucode.uk/app/credits** instead. Autonomous agents/bots must pay **USDC on Base via x402**, not NOWPayments.

Discovered
ucode_payments_nowpayments_status

Poll invoice / payment status by NOWPayments id.

Discovered
ucode_payments_stripe_create_checkout

**Do not use in ChatGPT.** In-card Stripe is blocked. For humans, call **ucode_render_credits** and open **https://ucode.uk/app/credits**. For agents/bots, call **ucode_agent_billing** and pay USDC on Base via x402.

Discovered
ucode_payments_stripe_prices

**Rare.** Resolve fiat display for Stripe IDs — do **not** read raw **prod_**/ **price_** strings to end users; use **ucode_credit_packages** for storefront-style copy.

Discovered
ucode_payments_stripe_verify

After Checkout completes, pass checkout **session id** plus **packageId** so Panel credits the account.

Discovered
ucode_render_credits

Opens the **Add credits** card with the current wallet balance. Payments never happen in chat — the user taps through to **https://ucode.uk/app/credits**. After they add credits there, call **ucode_credits_status**. No payment details are collected in chat.

Discovered
ucode_render_home

**Call on the first user message** in every new chat. Renders the interactive Ucode card with a **Connect Ucode account** button. Until linked, only welcome/connect/login tools — never rent or checkout.

Discovered
ucode_render_services

Opens the **visual service picker** (popular apps + search). Call after sign-in or when the user wants a number — same data as **ucode_sms_summary** but optimized for the in-chat card.

Discovered
ucode_services_catalog

Paginated Ucode service catalog with per-country availability from the Panel database.

Discovered
ucode_session_status

Check whether this ChatGPT session is linked to Ucode. Use at chat start; if connected is false, run **ucode_render_home** — do not process rental requests. If they already have a live number, the card shows it.

Discovered
ucode_sign_out

Same as **ucode_disconnect** — unlinks Ucode from this ChatGPT chat. Call for sign out, log out, or disconnect requests.

Discovered
ucode_sms_active_rentals

Active/received rentals with SMS snippets if already fetched.

Discovered
ucode_sms_cancel_rental

Cancel an active rental and refund credits when no SMS has arrived. Requires a cancel reason for analytics. Reasons: service_rejected | number_has_account | code_not_arrived | other. If an SMS arrives during cancel, credits stay charged and the code is returned.

Discovered
ucode_sms_countries

Raw worldwide country id table — pairs with legacy APIs only. For renting, use **ucode_sms_summary** / **ucode_sms_service_detail** so users pick by country name + credits.

Discovered
ucode_sms_get_code

Poll latest SMS for a rental id (provider rental id string).

Discovered
ucode_sms_prices

**Avoid for ChatGPT users.** Uses backend USD-ish snapshots; assistants must guide rentals via credits-only summaries (**ucode_sms_summary**, **ucode_sms_service_detail**) and **ucode_sms_rent_packages**. Responses are partially sanitized.

Discovered
ucode_sms_refund_expired

Trigger server-side refund scan for expired rentals (same as app).

Discovered
ucode_sms_rent_packages

After user picks **serviceCode** + **country** (numeric id from summary/detail), list **credit-priced routes** only. Same package picker as the app (rentalFlowVersion 2). Present **credits**, recommended badge, labels — never quote USD or backend provider names.

Discovered
ucode_sms_rent_provider_direct

**Do not use for ChatGPT end users.** Legacy rental against upstream balances — skips normal credit UX and exposes provider-era assumptions. Only **ucode_sms_rent_with_credits** with packages.

Discovered
ucode_sms_rent_with_credits

**Primary rental** — charges Ucode credits. Always use **rentalFlowVersion: 2** and **packageId** from **ucode_sms_rent_packages** (matches mobile). Never mention wholesale/provider IDs or dollar amounts to the user.

Discovered
ucode_sms_service_detail

Load one service’s countries after you have its short **serviceCode** (from summary `service` field). Matches opening that service in the iOS/Android app: availability, credits per country. Prefer over legacy `/prices` APIs.

Discovered
ucode_sms_services

Low-level provider service codes — exposes internal naming. Do NOT use for normal rentals; prefer **ucode_sms_summary** or **ucode_sms_service_detail** then credits-only packages.

Discovered
ucode_sms_summary

Primary discovery: search by app/service name (e.g. Telegram, WhatsApp). Returns services with countries, **credits** only (no provider names / no USD in assistant copy). Same idea as the app Services tab. Then **ucode_sms_service_detail** or go straight to **ucode_sms_rent_packages** once service + country are chosen.

Discovered
ucode_sms_transactions

Provider ledger audit trail — sanitized before ChatGPT. Prefer explaining rentals via **ucode_sms_active_rentals** for users.

Discovered
ucode_welcome

Same as **ucode_render_home** — product summary + sign-in card. Prefer **ucode_render_home** on first message.

Discovered
ucode_whoami

Current linked Ucode user (requires ucode_login_poll complete or ucode_authenticate).

Discovered

Recent measurements

Probe history

View status
Latest stored probes. Raw probe rows are kept for 14 days.
CheckedResultResponseTools
Connected263 ms50