Skip to content

Call Me

by callmemcp.com · remote · no sign-in to list tools · v1.0.0 · published by com.callmemcp

Your AI rings your iPhone, speaks its question, and gets your spoken answer back as text.

Deletes · 5Changes · 1

8 tools: 5 can delete or cancel things, 1 change things and 2 only read.

Scanned Oct 21, 2026

No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http call-me https://callmemcp.com/mcp

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

8 tools

Deletes or cancels 5Claude Code: deny
  • callRing the human's iPhone, read `question` aloud word for word, and return what they say back.No findings

    Why it is in this group

    • The name "call" says "call": a word for a change.
    • The input addresses people (input.to): what it sends cannot be taken back.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Ring the human's iPhone, read `question` aloud word for word, and return what they say back. It does not have to be a question: an update or a summary of the day ahead works too, up to 2000 characters (about two minutes of speech). Waits up to ~30s; if the result comes back status "ringing" or "in_call", follow up with poll_result. On a local client, read `to` from `~/.aiphone/config.json` → `user_number`; this hosted server cannot read that file itself. It is a Call Me app number, not a regular phone number. If missing, returns setup_required with the App Store link. Pass a previous session_token to stay in the same thread on their phone. By default the call is a conversation: after their answer the line stays up for `say` until you `hang_up`; keep_open=false hangs up after one answer. `language` ("tr", "de", ...) is the language you are speaking; the call's own short lines follow it. Default English.

    Annotations the server declares

    • destructiveHint: true
    • openWorldHint: true
    • readOnlyHint: false
    • title: Call the human
  • hang_upEnd a call you placed.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    End a call you placed. In a keep_open conversation `goodbye` is spoken first (e.g. "Thanks, I'll get on it."); leave it empty to just hang up.

    Annotations the server declares

    • destructiveHint: true
    • openWorldHint: true
    • readOnlyHint: false
    • title: Hang up
  • sayIn a call placed with keep_open=true, speak `text` to the human and return what they answer, in the same shape as `call`.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    In a call placed with keep_open=true, speak `text` to the human and return what they answer, in the same shape as `call`. Only after their previous answer is in. Waits up to ~30s; on "in_call", follow up with poll_result. "open": false means the call has ended. Pass `language` only to switch the language of the call's own lines; empty keeps it. Anything they said while you were thinking comes back as "said_while_waiting".

    Annotations the server declares

    • destructiveHint: true
    • openWorldHint: true
    • readOnlyHint: false
    • title: Say the next line
  • set_thread_titleName this session's conversation thread on the human's phone (e.g.No findings

    Why it is in this group

    • The name "set_thread_title" says "set": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Name this session's conversation thread on the human's phone (e.g. the project or task you are working on). Shown as the thread title in the app.

    Annotations the server declares

    • destructiveHint: true
    • openWorldHint: false
    • readOnlyHint: false
    • title: Set thread title
  • textSend a one-way text to the human's phone (push notification, no ring).No findings

    Why it is in this group

    • The description's first verb is "send": a word for sending, and what is sent cannot be taken back.
    • The input addresses people (input.to): what it sends cannot be taken back.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Send a one-way text to the human's phone (push notification, no ring). On a local client, read `to` from `~/.aiphone/config.json` → `user_number`; this hosted server cannot read that file itself. If missing, returns setup_required with the App Store link. Pass a previous session_token to stay in the same thread.

    Annotations the server declares

    • destructiveHint: true
    • openWorldHint: true
    • readOnlyHint: false
    • title: Text the human
Changes things 1Claude Code: ask
  • poll_resultCheck on a call that was still ringing or in progress.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Check on a call that was still ringing or in progress. Waits up to ~25s for it to settle; returns the final status and transcript once the call ends, the human declines, or the ring times out ("missed").

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: false
    • readOnlyHint: true
    • title: Get call result
Only reads 2Claude Code: allow
  • setupReturn first-setup instructions and a clickable App Store download link when no number is available.No findings

    Why it is in this group

    • The description's first verb is "return": a word for reading.
    Description, as the server wrote it
    Return first-setup instructions and a clickable App Store download link when no number is available.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: false
    • readOnlyHint: true
    • title: Set up Call Me
  • wait_for_replyWait for the human to send something back to this session — texts and voicemail transcripts arrive here.No findings

    Why it is in this group

    • The name "wait_for_reply" says "wait": a word for reading.
    Description, as the server wrote it
    Wait for the human to send something back to this session — texts and voicemail transcripts arrive here. Long-polls up to wait_s (max 30s); returns {events, cursor}. Pass the returned cursor next time to only see new events. An empty events list just means nothing yet — poll again if you are still waiting.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: false
    • readOnlyHint: true
    • title: Wait for a text reply

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 1.0.0. Values in angle brackets are yours to fill in.

claude mcp add --transport http call-me https://callmemcp.com/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__call-me__setup",
      "mcp__call-me__wait_for_reply"
    ],
    "ask": [
      "mcp__call-me__poll_result"
    ],
    "deny": [
      "mcp__call-me__call",
      "mcp__call-me__say",
      "mcp__call-me__hang_up",
      "mcp__call-me__text",
      "mcp__call-me__set_thread_title"
    ]
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as call-me. Review it before you use it.