Call Me

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

¿Debería usar esto?

Calidad y seguridad

A
Calidad de la descripción
100%
Integridad del esquema
68%
Calidad de los nombres
93%
Riesgo de envenenamiento
100%
Coincidencia de permisos
100%
Cumplimiento del protocolo
100%

Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.

Costo de contexto

~938Tokens (definiciones de herramientas)
~748 BTamaño de respuesta típico
Impacto moderado en la atención (0.73% del contexto de 128k)

Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.

Instalar

Instalación con un clic

Agrega esto a tu archivo `claude_desktop_config.json`:

{
  "mcpServers": {
    "call-me": {
      "url": "https://serdaroztetik.com/aiphone/mcp"
    }
  }
}

Puntos de conexión remotos

https://serdaroztetik.com/aiphone/mcpstreamable-http

Qué puede hacer

Inventario de herramientas

Herramientas (6)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
🟢setup

Return first-setup instructions and a clickable App Store download link when no number is available.

Esquema de entrada

{
  "type": "object",
  "properties": {},
  "title": "setupArguments"
}
🔴call(question, to, from_label, session_token)

Ring the human's iPhone, speak the question aloud, and return what they say. Waits up to ~30s; if the result comes back status "ringing", 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.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "question": {
      "title": "Question",
      "type": "string"
    },
    "to": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "To"
    },
    "from_label": {
      "default": "Someone's AI",
      "title": "From Label",
      "type": "string"
    },
    "session_token": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Session Token"
    }
  },
  "required": [
    "question"
  ],
  "title": "callArguments"
}
🟢poll_result(call_id, session_token)

Check on a call that was still ringing. Waits up to ~25s for it to settle; returns the final status and transcript once the human answers, declines, or the ring times out ("missed").

Esquema de entrada

{
  "type": "object",
  "properties": {
    "call_id": {
      "title": "Call Id",
      "type": "integer"
    },
    "session_token": {
      "title": "Session Token",
      "type": "string"
    }
  },
  "required": [
    "call_id",
    "session_token"
  ],
  "title": "poll_resultArguments"
}
🔴text(body, to, from_label, session_token)

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.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "body": {
      "title": "Body",
      "type": "string"
    },
    "to": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "To"
    },
    "from_label": {
      "default": "Someone's AI",
      "title": "From Label",
      "type": "string"
    },
    "session_token": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Session Token"
    }
  },
  "required": [
    "body"
  ],
  "title": "textArguments"
}
🟢wait_for_reply(session_token, cursor, wait_s)

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.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "session_token": {
      "title": "Session Token",
      "type": "string"
    },
    "cursor": {
      "default": 0,
      "title": "Cursor",
      "type": "integer"
    },
    "wait_s": {
      "default": 25,
      "title": "Wait S",
      "type": "integer"
    }
  },
  "required": [
    "session_token"
  ],
  "title": "wait_for_replyArguments"
}
🔴set_thread_title(session_token, title)

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.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "session_token": {
      "title": "Session Token",
      "type": "string"
    },
    "title": {
      "title": "Title",
      "type": "string"
    }
  },
  "required": [
    "session_token",
    "title"
  ],
  "title": "set_thread_titleArguments"
}

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada6 herramientas
verificadoversión no registrada6 herramientas