# Call2Me

> Place real phone calls, read transcripts, run a live interpreter and buy numbers.

- name: app.call2me/mcp
- version: 1.0.0
- connection class: R0 (autonomous)
- trust: 83/100 flags: no-repository
- quality: 69/100 (needs work)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/app.call2me%2Fmcp
- tools: https://api.protogrid.dev/v1/servers/app.call2me%2Fmcp/tools

**An agent can connect right now, no human step.** Remote endpoint, no authentication, reachable on the last probe.

## Connection (mcpServers)

```json
{
  "mcpServers": {
    "call2me": {
      "type": "http",
      "url": "https://mcp.call2me.app/mcp"
    }
  }
}
```


## Trust

- hygiene: 80
- liveness: 100
- freshness: 100
- provenance: 55
- drivers: +dns-namespace +website +reachable +uptime-100% +updated-17d-ago -no-repository
- Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed.

## Quality 69/100 (needs work)

### protocol: 75 (weight 25)

- warn `protocol.modern`: newest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
- n/a `protocol.stateless`: only applies to 2026-07-28 servers
- pass `protocol.transport`: streamable HTTP
- n/a `protocol.list_ttl`: only applies to 2026-07-28 servers

### authorization: n/a (weight 15)

- n/a `auth.prm`, `auth.as_metadata`, `auth.cimd`: no remote uses OAuth
- n/a `auth.secret_in_url`: no templated URL

### tool hygiene: 86 (weight 30)

- pass `tools.descriptions`: every tool has a description
- pass `tools.description_length`: descriptions are concise
- pass `tools.schemas`: every tool has an object input schema
- pass `tools.annotations`: 79 of 79 tools declare readOnlyHint or destructiveHint
- warn `tools.directory_hints`: 42 of 79 tools declare all four hints; missing: call2me_list_agents (idempotentHint); call2me_list_phone_numbers (idempotentHint); call2me_get_pricing (idempotentHint); …
- warn `tools.token_cost`: about 10,306 tokens to load every tool
- pass `tools.api_dump`: tools are not a one-to-one API dump

### stability: 25 (weight 15)

- warn `stability.changes`: 44 tool changes in 30 days
- fail `stability.rug_pull`: 1 tools kept their name but changed most of their description in 30 days; review before trusting them

### dependencies: n/a (weight 15)

- n/a `deps.known_vulns`, `deps.mcp_sdk_version`, `deps.resolvable`: no npm or PyPI package

- tools: 79, about 10,306 tokens to load them all
- tool set hash: fa303ff085d1889881824ca05723e3f2
- tools last changed: 2026-10-15T02:31:09.393Z
- badge: [![protogrid quality](https://protogrid.dev/badge/app.call2me/mcp.svg)](https://protogrid.dev/servers/app.call2me/mcp)
- Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed.

### Tool changes

- 2026-10-15 `call2me_delete_notification_target` added
  - Removes a post-call notification target. Cannot be undone. Confirm with the user first.
- 2026-10-15 `call2me_send_sms` added
  - Sends a REAL, charged SMS. Needs the sender number (one the account owns), the recipient and the text. Never invent numbers; confirm with the user first.
- 2026-10-15 `call2me_delete_sip_trunk` added
  - PERMANENTLY deletes a SIP trunk; numbers on it stop working. Cannot be undone. Confirm with the user first.
- 2026-10-15 `call2me_delete_campaign` added
  - PERMANENTLY deletes a campaign and its contacts. Cannot be undone. Confirm with the user first.
- 2026-10-15 `call2me_campaign_action` added
  - Runs start, pause, resume or cancel on a campaign. START and RESUME place REAL, charged phone calls to every contact; cancel cannot be undone. Confirm with the user first and never guess the campaign.
- 2026-10-15 `call2me_send_chat_message` added
  - Sends a message in a chat session and returns the assistant's reply. Each message is BILLED (about $0.01). Confirm with the user first.
- 2026-10-15 `call2me_delete_widget` added
  - PERMANENTLY deletes a widget; embedded copies stop working. Cannot be undone. Confirm with the user first.
- 2026-10-15 `call2me_delete_knowledge_base` added
  - PERMANENTLY deletes a knowledge base and its sources. Cannot be undone. Confirm with the user first; never guess which one.
- 2026-10-15 `call2me_make_outbound_call` changed (inputSchema)
- 2026-10-15 `call2me_create_notification_target` added
  - Adds a post-call notification (email, SMS, WhatsApp or custom URL) to an assistant. Messages will be sent to the destination after calls; never invent the destination. Confirm the exact destination/value with the user first.

Full history: https://api.protogrid.dev/v1/servers/app.call2me%2Fmcp/changes

## Remotes

- https://mcp.call2me.app/mcp (streamable-http, auth none, reachable true, uptime30d 1)

## Packages

_none_

## Tools (79)

- `call2me_add_campaign_contacts`: Adds contacts to a campaign from a JSON list. Numbers must be real E.164 numbers supplied by the user; never invent them.
- `call2me_add_knowledge_base_sources`: Adds text and/or URL sources to an existing knowledge base.
- `call2me_bind_number`: Binds a phone number to an assistant, which then answers calls to that number. Replaces any existing binding.
- `call2me_campaign_action`: Runs start, pause, resume or cancel on a campaign. START and RESUME place REAL, charged phone calls to every contact; cancel cannot be undone. Confirm with the user first and never guess the campaign.
- `call2me_cancel_schedule`: Cancels a scheduled call. Cannot be undone.
- `call2me_checkout_number`: Creates a checkout link for buying a number. DOES NOT BUY and DOES NOT CHARGE — the user confirms on the payment screen themselves. Use this path when the balance is insufficient.
- `call2me_create_agent`: Creates a new voice assistant. Do not call it unless the user asks explicitly; do not invent fields such as name and language — ask.
- `call2me_create_campaign`: Creates a bulk calling campaign in draft state. It does NOT call anyone until call2me_campaign_action start is used. Add contacts afterwards.
- `call2me_create_interpreter`: Creates a new live interpreter. name, source language and target language are REQUIRED — never guess any of them, ask the user.
- `call2me_create_interpreter_passcode`: Mints a single-use join passcode for the browser session.
- `call2me_create_knowledge_base`: Creates a knowledge base from text and/or URLs. To make an assistant use it, pass agent_id here (auto-links), or add the id to the assistant's knowledge_base_ids via call2me_update_agent. Provide at least one text or URL.
- `call2me_create_notification_target`: Adds a post-call notification (email, SMS, WhatsApp or custom URL) to an assistant. Messages will be sent to the destination after calls; never invent the destination. Confirm the exact destination/value with the user first.
- `call2me_create_schedule`: Schedules a call for a given time. This WILL produce a REAL call — the target number is dialled when the time comes. agent_id, phone_number and scheduled_at are REQUIRED; never guess any of them, ask the user if anything is missing.
- `call2me_create_sip_trunk`: Registers a SIP trunk (the user's own telephony provider). The password is stored but never returned. Calls may be routed through this server: Confirm the exact destination/value with the user first.
- `call2me_create_topup_link`: Creates a payment link for adding credit. It does NOT pay: the user must open the link and pay. Never invent the amount; ask the user.
- `call2me_create_voice_session`: Opens a browser voice session and returns connection details. Does NOT place a phone call.
- `call2me_create_widget`: Creates a website chat widget for an assistant. Returns the embed code.
- `call2me_delete_agent`: PERMANENTLY deletes an assistant. Cannot be undone. If it is unclear which assistant is meant, NEVER guess — ask the user.
- `call2me_delete_campaign`: PERMANENTLY deletes a campaign and its contacts. Cannot be undone. Confirm with the user first.
- `call2me_delete_interpreter`: PERMANENTLY deletes an interpreter. Cannot be undone. If it is unclear which one is meant, NEVER guess — ask the user.
- `call2me_delete_knowledge_base`: PERMANENTLY deletes a knowledge base and its sources. Cannot be undone. Confirm with the user first; never guess which one.
- `call2me_delete_notification_target`: Removes a post-call notification target. Cannot be undone. Confirm with the user first.
- `call2me_delete_sip_trunk`: PERMANENTLY deletes a SIP trunk; numbers on it stop working. Cannot be undone. Confirm with the user first.
- `call2me_delete_widget`: PERMANENTLY deletes a widget; embedded copies stop working. Cannot be undone. Confirm with the user first.
- `call2me_duplicate_agent`: Creates a copy of an assistant with the same settings.
- `call2me_enable_interpreter_web`: Opens or closes the browser session link for an interpreter. Does NOT place a phone call.
- `call2me_end_call`: Cuts off a call in progress IMMEDIATELY. Cannot be undone — the conversation ends.
- `call2me_end_interpreter_web`: Cuts off the browser session in progress IMMEDIATELY. Cannot be undone.
- `call2me_get_agent`: Full settings for a single assistant: language, voice, system prompt, model.
- `call2me_get_agent_stats`: Call statistics for one assistant (volume, duration, success) over a period.
- `call2me_get_auto_charge`: Shows the wallet auto top-up settings: enabled, threshold and charge amount.
- `call2me_get_call`: Details of a single call: start and end, duration, status, cost.
- `call2me_get_call_recording`: Returns a temporary signed URL (valid about 1 hour) for a call's audio recording.
- `call2me_get_call_transcript`: Returns the conversation transcript in vCon format — who said what, with timestamps. Use when the user asks what was said on a call.
- `call2me_get_campaign`: Details of one bulk calling campaign: status, settings and progress.
- `call2me_get_campaign_results`: Per-contact outcomes of a campaign (answered, failed, duration).
- `call2me_get_chat`: Returns one chat session with its full message history.
- `call2me_get_interpreter`: Settings for a single interpreter: language pair, voice, transparency mode, phone number, browser session link.
- `call2me_get_interpreter_web_status`: Shows who is currently connected to the interpreter browser session.
- `call2me_get_knowledge_base`: Details of one knowledge base: name, status and its sources.
- `call2me_get_pricing`: Per-minute call rates and number prices.
- `call2me_get_schedule`: Details of one scheduled call: time, timezone, status, recurrence.
- `call2me_get_usage_analytics`: Spending and usage analytics for the wallet over a period.
- `call2me_get_wallet`: Current account balance in USD, the same wallet that calls and numbers draw on.
- `call2me_get_webhook`: Shows the account webhook URL and whether a signing secret is set. The secret itself is never returned.
- `call2me_get_widget`: Full widget settings plus the ready-to-paste embed code (script tag) for the user's website.
- `call2me_list_agents`: Lists the voice assistants on the account. Use when the user wants to see their assistants, or needs to pick one for another operation.
- `call2me_list_allowed_countries`: Countries where a phone number can be purchased. Use before searching numbers to see which countries are open.
- `call2me_list_calls`: Lists past calls: direction, duration, status, number. Pass agent_id to restrict to one assistant.
- `call2me_list_campaigns`: Lists bulk calling campaigns: status, target count, progress.
- `call2me_list_chats`: Lists text chat sessions with assistants. Pass agent_id to restrict to one assistant.
- `call2me_list_interpreter_calls`: Lists sessions run through an interpreter: duration, languages, status.
- `call2me_list_interpreters`: Lists the live interpreters on the account: name, language pair, bound number. An interpreter connects two people who each speak their own language, translating in real time.
- `call2me_list_knowledge_bases`: Lists the knowledge bases (documents the assistants can search during calls). Pass agent_id to restrict to one assistant.
- `call2me_list_notification_targets`: Lists post-call notification targets (email, SMS, WhatsApp, webhook) of one assistant.
- `call2me_list_phone_numbers`: Lists the phone numbers on the account and which assistant each one is bound to.
- `call2me_list_schedules`: Lists scheduled calls: when, which number, which assistant.
- `call2me_list_sip_trunks`: Lists the account's SIP trunks. Passwords are never returned.
- `call2me_list_sms`: Lists sent and received SMS messages.
- `call2me_list_transactions`: Lists wallet transactions (top-ups, call charges, number fees).
- `call2me_list_voices`: Lists available text-to-speech voices; use a voice id when creating or updating an assistant. Filter by language, provider or gender.
- `call2me_list_widgets`: Lists website chat/voice widgets. Pass agent_id to restrict to one assistant.
- `call2me_make_outbound_call`: Places a REAL phone call: the target number is dialled IMMEDIATELY and charged. Cannot be undone. Call this ONLY when the user explicitly asks for a call to be placed. agent_id and to_number are REQUIRED — never guess either one, never infer it from earlier conversation and never assign a default. Ask the user if anything is missing.
- `call2me_profile`: Safe summary of the connected Call2Me account: email, name, account type. NEVER returns the API key. Use when the user asks which account they are connected to.
- `call2me_purchase_number`: BUYS a phone number: the balance IS CHARGED and monthly rent starts. Cannot be undone. Call this ONLY when the user explicitly asks to buy and has picked the number themselves. NEVER guess the number — show options with call2me_search_numbers first and let the user choose. If the balance is insufficient, use call2me_checkout_number.
- `call2me_query_knowledge_base`: Runs a semantic search over one knowledge base and returns the best matching passages. Use to test what an assistant would retrieve.
- `call2me_register_phone_number`: Registers a phone number the user already owns together with the user's own SIP trunk (trunk_id is required). Does NOT buy a number. Never invent the number. Confirm the exact destination/value with the user first.
- `call2me_release_number`: PERMANENTLY releases a phone number: it leaves the account, may be reassigned to someone else, and cannot be recovered. Incoming calls stop.
- `call2me_search_numbers`: Lists purchasable phone numbers in a country. DOES NOT BUY — it only shows them. The country code is required; do not guess it, ask the user or call call2me_list_allowed_countries first.
- `call2me_send_chat_message`: Sends a message in a chat session and returns the assistant's reply. Each message is BILLED (about $0.01). Confirm with the user first.
- `call2me_send_sms`: Sends a REAL, charged SMS. Needs the sender number (one the account owns), the recipient and the text. Never invent numbers; confirm with the user first.
- `call2me_set_webhook`: Sets or replaces the account webhook URL (events are POSTed there). The signing secret is never returned; supply your own webhook_secret if you need to know it, otherwise one is generated and hidden. All call events will be sent to this URL: Confirm the exact destination/value with the user first.
- `call2me_start_chat`: Starts a text chat session with an assistant and returns session_id. Starting is free; each message sent with call2me_send_chat_message is billed.
- `call2me_start_interpreter_call`: Places a REAL phone call: the target number is dialled IMMEDIATELY, both sides are connected through live translation, and the call is charged. Cannot be undone. Call this ONLY when the user explicitly asks. interpreter_id and target_number are REQUIRED — never guess either one.
- `call2me_unbind_number`: Removes the number's assistant binding; calls to it are no longer answered. The number stays on the account.
- `call2me_update_agent`: Changes an existing assistant. Send only the fields the user named explicitly. Other API fields are accepted too, notably: knowledge_base_ids (attach knowledge bases), post_call_actions and post_call_extraction (post-call automation), voice_id, webhook_url, transfer_targets, begin_message, enable_recording.
- `call2me_update_interpreter`: Changes an existing interpreter. Send only the fields the user named explicitly.
- `call2me_update_schedule`: Changes a scheduled call (time, timezone, contact name, recurrence). Send only the fields the user named.
- `call2me_update_widget`: Changes widget settings. Send only the fields the user named.
