mcpField
S
smsportal.app SMS

smsportal.app SMS

Remote
smsportal.appCommunication0Updated today

About smsportal.app SMS

smsportal.app SMS is an MCP server for people who want AI agents to send and read SMS through their own paired Android phone and SIM. It exposes device and message operations, with an option to disable sending.

Key features

  1. 01Send SMS from a paired phone
  2. 02Read and search SMS messages
  3. 03Check per-recipient send status
  4. 04View device and account statistics
  5. 05Disable sending with read-only mode

Use cases

  1. 01Send messages from an agent using a personal number
  2. 02Review incoming SMS synced from a phone
  3. 03Search messages by sender, text, status, or time

MCP support

Exposes SMSPortal account tools to MCP clients over hosted Streamable HTTP or a locally run stdio server. Clients authenticate with an API key.

Configuration

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

Endpointhttps://smsportal.app/mcp
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://smsportal.app/mcpAuth required

Tools

Details

From the project README

smsportal.app MCP server

Send and read SMS from your own Android phone through AI agents such as Claude, Cursor or any other Model Context Protocol client.

smsportal.app turns an Android phone into an SMS gateway: messages go out from your own number and SIM, and incoming SMS are available through the API. This server exposes that account to AI agents. It is not affiliated with SMSPortal (Pty) Ltd of South Africa.

Use the hosted server (recommended)

  1. Create an account at smsportal.app, pair your Android phone and create an API key in the dashboard.
  2. Add the server to your client.

Claude Code

claude mcp add --transport http smsportal https://smsportal.app/mcp \
  --header "Authorization: Bearer $SMSPORTAL_API_KEY"

Claude Desktop and other clients without custom headers (via mcp-remote, Node.js 18+)

{
  "mcpServers": {
    "smsportal": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://smsportal.app/mcp", "--header", "Authorization:${AUTH_HEADER}"],
      "env": { "AUTH_HEADER": "Bearer YOUR_SMSPORTAL_API_KEY" }
    }
  }
}

Step-by-step guide: smsportal.app/en/integrations/mcp.

Tools

ToolWhat it does
smsportal_list_devicesPhones paired with the account and their last heartbeat and SIM state
smsportal_get_statsSent, received and device totals
smsportal_list_messagesSearch sent and received SMS by text, number, phone, status and time
smsportal_read_received_smsIncoming SMS already synchronised by the phone
smsportal_get_send_statusPer-recipient status of a batch returned by smsportal_send_sms
smsportal_send_smsSend an exact message to up to 50 E.164 numbers from your phone

API acceptance is not proof of delivery; check the send status afterwards. Set SMSPORTAL_READ_ONLY=true to remove the sending tool.

Run it yourself

git clone https://github.com/aleksanderem/smsportal-mcp && cd smsportal-mcp
npm ci && npm run build

Local (stdio) client entry:

{
  "mcpServers": {
    "smsportal": {
      "command": "node",
      "args": ["/path/to/smsportal-mcp/dist/index.js"],
      "env": { "SMSPORTAL_API_KEY": "YOUR_SMSPORTAL_API_KEY" }
    }
  }
}
VariableDefaultMeaning
SMSPORTAL_API_KEY—API key (stdio mode)
SMSPORTAL_API_URLhttps://smsportal.app/api/v1API base URL
SMSPORTAL_READ_ONLYfalsetrue hides the sending tool
SMSPORTAL_PUBLIC_ORIGINhttp://localhost:18080HTTP mode: the only browser origin allowed
SMSPORTAL_TRUST_PROXYfalseHTTP mode: trust one reverse-proxy hop for the caller address
HOST, PORT127.0.0.1, 3002HTTP mode listener

HTTP mode (node dist/index.js --http, or the Dockerfile) serves Streamable HTTP at /mcp, takes the API key from Authorization: Bearer (or an x-api-key header, for hosts that cannot add the Bearer prefix), validates it before every request and rate-limits per caller network.

Development

npm ci && npm test

Security reports: see SECURITY.md. License: MIT.

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.