mcpField
P
PacketExchange

PacketExchange

Remote
packetexchange.ioCommunication0Updated 2w ago

About PacketExchange

PacketExchange is a hosted MCP server for agents and MCP clients using its voice and SMS marketplace. It provides tools for route discovery, messaging, calls, verification, account management and Switch operations.

Key features

  1. 01Search and compare voice routes
  2. 02Purchase and manage routes
  3. 03Send SMS and place calls
  4. 04Run phone verification
  5. 05Check balances and transactions
  6. 06Manage Switch routing and settings

Use cases

  1. 01Find voice routes by destination and price
  2. 02Send verification codes by voice or SMS
  3. 03Place a call and check its status
  4. 04Review account activity and balance

MCP support

The hosted MCP server exposes 33 tools for marketplace discovery, route and account operations, communications, verification and Switch management. It supports Streamable HTTP and a legacy HTTP+SSE endpoint.

Configuration

Remote servers need no local install. Pick your client, then copy the config or install in one click.

Endpointhttps://packetexchange.io/mcp/http
Copy install command
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.

All endpoints
Streamable HTTPhttps://packetexchange.io/mcp/httpAuth required

Tools

33
ParameterTypeRequiredDescription
sortenumNoSort order. Default tested_desc: proven rows first (full caller ID ahead), then cheapest. cli_desc: verified caller ID first. tested_desc and cli_desc need per_network (the default). ASR/ACD/PDD sorts use the seller-declared values; score = Exchange Scoretested_desc | cli_desc | price_asc | price_desc | asr_desc | asr_asc | acd_desc | acd_asc | pdd_asc | pdd_desc | capacity_desc | created_desc | country_asc | score_desc | score_asc
typeenumNoTraffic type: voice or smsvoice | sms
limitintegerNoMax results, 1-100 (default 25)
searchstringNoSearch by country, dial code or number, mobile/fixed, tier (premium/direct/standard/ncli) or an operator name (e.g. "Safaricom")
testedbooleanNoOnly rows proven to connect to their network (a real call or our test). Needs per_network
countrystringNoFilter by country name, substring match (e.g. "United Kingdom")
min_asrstringNoMinimum seller-declared expected ASR in percent, e.g. "40"
networkstringNoOnly this network, exact name as returned (e.g. "Vodafone"). Needs per_network
cli_typeenumNoCaller-ID handling: full_cli (your CLI passed through), local_cli (a local number presented), mixed_cli (CLI passed on some calls), ncli (no CLI)full_cli | local_cli | mixed_cli | ncli
max_pricestringNoMax price per unit in USD (per minute for voice, per message for SMS), e.g. "0.0100"
route_typeenumNoRoute quality tierdirect | premium | standard | ncli
per_networkbooleanNoOne row per route and mobile network, with the measured marks (default true). false = one row per listing, without marks
verificationenumNoOnly listings in this verification tier (voice): cli = International CLI, ncli = NCLI, connected = Qualified, not_verified = Untested. Omitted = every tier, best firstcli | ncli | connected | not_verified
verified_clibooleanNoOnly rows where the caller ID arrived intact on a real phone on that network. Needs per_network
origin_policyenumNoCaller ID origin: dual = listings with a separate (usually lower) price for an EEA caller ID; origin_only = listings that take EEA caller IDs only; any = one price for every caller. Omitted = allany | dual | origin_only

Details

From the project README

PacketExchange MCP server

Connect AI agents and MCP clients to the PacketExchange voice and SMS marketplace.

CI MIT license Smithery

PacketExchange runs a hosted Model Context Protocol server. Once your client is connected, an agent can search the marketplace, compare routes, run a phone verification, send an SMS, place a call and follow it, and check the account balance, by calling tools by name.

This repository holds the documentation and ready-to-use client configurations. There is nothing to build or host: the server runs at PacketExchange.

Server

Endpointhttps://packetexchange.io/mcp/http
TransportStreamable HTTP, stateless (every request stands alone, with no session to keep)
Legacy endpointhttps://packetexchange.io/mcp/sse, for clients that only speak the older HTTP+SSE transport
Tools33: 15 marketplace and account tools, 18 Switch tools
AuthenticationAuthorization: Bearer <API key> header, set in your client configuration. The three public tools work without it.

Install

Pick your client and copy its configuration:

ClientGuideConfiguration
Claude Codedocs/setup/claude-code.mdconfigs/claude-code.json
Claude Desktopdocs/setup/claude-desktop.mdconfigs/claude-desktop.json
Cursordocs/setup/cursor.mdconfigs/cursor.json
VS Codedocs/setup/vscode.mdconfigs/vscode.json
Codexdocs/setup/codex.mdconfigs/codex.toml
Any other MCP clientdocs/setup/other-clients.mdconfigs/generic-stdio.json

Clients that connect to remote servers directly need only the URL and the header. For example, a client that reads an mcpServers file with environment variable expansion:

{
  "mcpServers": {
    "packetexchange": {
      "type": "http",
      "url": "https://packetexchange.io/mcp/http",
      "headers": {
        "Authorization": "Bearer ${PACKETEXCHANGE_API_KEY}"
      }
    }
  }
}

Clients that can only start local commands reach the server through the mcp-remote bridge, which needs a current Node.js LTS release.

Quick start

With the server connected, try a public tool. These need no key and cost nothing:

  • "What are the five cheapest voice routes to Kenya on PacketExchange? Include the seller-stated ASR."
  • "Give me a summary of the PacketExchange marketplace right now."

More in docs/example-prompts.md.

Tools

GroupTools
Discover (public, free)wmmn_list_routes, wmmn_route_details, wmmn_market_summary
Routewmmn_resolve_route, wmmn_purchase_route, wmmn_list_purchases
Send (billed)wmmn_send_sms, wmmn_make_call, wmmn_get_call (free)
Verifywmmn_send_voice_otp, wmmn_verify_start, wmmn_verify_check
Accountwmmn_get_balance, wmmn_list_transactions, wmmn_topup_x402
Switch (Switch plan)18 switch_* tools for routing, customers, suppliers, rates, invoicing and fraud settings

wmmn_make_call places the call asynchronously and can speak text, play audio and collect keypad digits once the call is answered. It waits a short time for the result; if the call is still running, wmmn_get_call reads its status, cost and gathered digits later.

The full reference, with parameters, required scopes and cost notes, is in docs/tools.md.

Authentication

Using account tools needs a PacketExchange account with prepaid credit: sign up at packetexchange.io, add credit, and create an API key in the dashboard under API keys.

  • The key is sent as an Authorization: Bearer <key> header, configured once in your MCP client. It is the only way the server accepts a key: no tool takes a key as an argument, so the key never passes through the model or into the conversation.
  • The public tools (wmmn_list_routes, wmmn_route_details, wmmn_market_summary) work without a key. Any other tool called on a connection without one returns an error asking you to add the header.
  • Use a dedicated key with only the scopes the agent needs. Read docs/security.md before using account tools.

Costs

Tools that spend money say so in their descriptions, so the agent knows before it calls them. Calls and messages are billed from your prepaid balance at the route price plus the platform fee (2% of the route rate, capped at $0.001 per call or message). See pricing for details.

Good to know

  • ASR and ACD figures on listings are stated by the seller, not measured by PacketExchange.
  • wmmn_send_sms returns the send-time outcome (accepted, sent or failed). The delivery outcome, when the route returns a carrier receipt, is available from the REST API (GET /comms/sms/{messageId}) and the sms.delivered and sms.failed webhooks.
  • Voice passcodes and spoken call actions can use English, Spanish, French, German, Portuguese and Hindi.
  • Test keys (wmmn_test_sk_...) simulate calls and messages against test credit. They can read Switch data but cannot change it, and cannot make x402 top-ups: those requests are refused with TEST_KEY_NOT_ALLOWED.
  • Use PacketExchange for transactional messages and calls to people who expect them, such as verification codes, alerts and appointment reminders.

Links

License

The documentation and configurations in this repository are released under the MIT License.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.