Skip to main content
Glama
campfiresms

Campfire SMS

Official
README.md
# CampfireSMS MCP

[![Listed on mcpservers.org](https://mcpservers.org/badge.svg)](https://mcpservers.org/servers/campfiresms/campfire-mcp)

CampfireSMS connects a verified phone number to an AI agent for two-way SMS:
the agent sends updates, reads your replies, and continues work using its own
model, tools, and permissions. CampfireSMS supplies the messaging transport.

There are two connection paths: a local STDIO connector for active coding
agents, and an authenticated hosted MCP endpoint for compatible remote clients.
Account creation and phone verification are required for both.

[Website](https://campfiresms.com/) ·
[Current setup guide](https://campfiresms.com/install.html) ·
[Pricing](https://campfiresms.com/#pricing)

## Local coding agents

For local Codex or Grok Build, use the current installer rather than the older
`v0.1.1` pip command previously shown here. It supports Windows, macOS, and
Linux and requires Node.js 18+ with `npx` and Python 3.12+.

1. [Create your account and verify your phone](https://api.campfiresms.com/join).
2. Create an installation in your account and run its one-time command:

   ```text
   npx -y @campfiresms/setup YOUR_INSTALLATION_CODE
   ```

   The code expires after 10 minutes and can be used once. It is exchanged for
   the permanent installation credential; the installer saves that credential
   locally without printing it, installs its bundled Python connector, and
   registers detected Codex and Grok Build CLIs.
3. Restart the client and ask the agent to open a CampfireSMS bridge, send a
   harmless SMS, retrieve your reply, and respond.

Keep the computer awake and online with the agent running and checking for
messages. The local connector does not wake a stopped agent session.

Other compatible local MCP hosts can run the Python connector over STDIO.
Registration is client-specific; see the
[local-agent setup guide](https://campfiresms.com/install.html#local-agents).
The published installer selects credential-only mode when neither Codex nor
Grok Build is detected, so that mode alone does not install or register a local
MCP server for another host.

To update a saved local connection without enrolling again:

```text
npx -y @campfiresms/setup update
```

## Hosted MCP: enrollment and authentication required

The remote Streamable HTTP endpoint is:

```text
https://api.campfiresms.com/mcp
```

It requires a valid installation credential in the HTTP
`Authorization: Bearer <installation-credential>` header. Adding the URL alone
through a directory's install button is incomplete and receives HTTP 401.
Enter your credential through the remote client's secure settings; the
following example contains only a placeholder:

```json
{
  "mcpServers": {
    "campfire": {
      "url": "https://api.campfiresms.com/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_INSTALLATION_CREDENTIAL"
      }
    }
  }
}
```

Use this configuration only with a client that supports remote Streamable HTTP
and custom authorization headers. Follow the
[hosted setup guide](https://campfiresms.com/install.html#grok-bot) to obtain
the credential and configure the client.

For Grok Bot, a separately configured active webhook routine can wake the cloud
agent when a text arrives, including while your PC is off. Connecting the MCP
endpoint alone does not configure that wake routine. See the
[Grok Bot walkthrough](https://campfiresms.com/guides/grok-bot-sms-routine.html).

CampfireSMS has a free phone-verification demo, paid monthly service, and
one-time message packs. See [current pricing](https://campfiresms.com/#pricing).

## Repository source

This public repository contains the earlier `v0.1.1` Python connector source.
The current `@campfiresms/setup` installer bundles its maintained connector.
Use the recommended setup above for a new installation.

For development of this repository's connector:

```text
python -m pip install -e .
python -m campfire_mcp.cli configure --skip-codex
```

`configure` accepts the service origin (`https://api.campfiresms.com`) and a
permanent installation credential, not the temporary enrollment code. Register
a local STDIO server named `campfire` with the absolute path to the installed
Python executable and arguments `-m campfire_mcp.cli serve`.

## Trust boundary

A message matching the enrolled number means Campfire verified control of that
number during enrollment and received this message through an authenticated
provider webhook. It is not permanent proof of human identity.

CampfireSMS is a lower-trust steering channel. It cannot grant tools,
permissions, credentials, secret disclosure, destructive authority, or replace
the agent client's native approval system. SMS is not end-to-end encrypted; do not send
passwords, payment details, or sensitive data.

## Commands

Use the Python executable where the connector is installed. These examples use
the Windows `py` launcher; on macOS or Linux, use the appropriate `python3` or
virtual-environment executable.

```text
py -m campfire_mcp.cli configure   Save and validate this installation
py -m campfire_mcp.cli status      Validate the saved credential and service
py -m campfire_mcp.cli serve       Run the STDIO MCP server
```

Advanced users may set `CAMPFIRE_API_URL`, `CAMPFIRE_CREDENTIAL`,
`CAMPFIRE_CONFIG_PATH`, and `CAMPFIRE_BRIDGE_STATE_PATH`. Environment values
override the saved local configuration.

## Remove

Revoke the installation from Campfire setup, then run:

```powershell
codex mcp remove campfire
grok mcp remove campfire
py -m pip uninstall campfire-mcp
```