{
  "markdown": "# @eztexting/mcp-server\n\nmcp-name: com.eztexting/mcp\n\nStdio bridge to the EZTexting MCP service at `https://mcp.eztexting.com`. Use this **only** when your client doesn't speak Streamable HTTP MCP natively.\n\n> **Prefer remote.** Most modern MCP clients (Claude.ai, ChatGPT, Claude Desktop, Claude Code, Cursor 0.46+, VS Code 1.99+, Windsurf, Cline 3.0+) connect direct to `https://mcp.eztexting.com/mcp` — no npm, no Node, no child process. See the [onboarding guide](https://mcp.eztexting.com/) for copy-paste configs.\n\nThin wrapper around [`mcp-remote`](https://www.npmjs.com/package/mcp-remote) targeting the unified `/mcp` endpoint. One stdio MCP entry, all 38 tools (some staticly loaded and others discoverable), one OAuth 2.1 PKCE dance. ~3k tokens of catalog (measured).\n\n## Remote (recommended)\n\nPoint your client at:\n\n```\nhttps://mcp.eztexting.com/mcp\n```\n\nOAuth 2.1 PKCE auto-discovers via `/.well-known/oauth-authorization-server`. See [https://mcp.eztexting.com/](https://mcp.eztexting.com/) for per-client snippets (Claude Desktop, Claude Code `--transport http`, Cursor, VS Code `type: http`, Windsurf, Cline).\n\n## Local stdio bridge — fallback\n\nAdd to `claude_desktop_config.json` (or equivalent — only if your client lacks remote MCP support):\n\n```json\n{\n  \"mcpServers\": {\n    \"eztexting\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@eztexting/mcp-server\"]\n    }\n  }\n}\n```\n\n**First run:** browser opens to `https://mcp.eztexting.com/oauth2/...`. Sign in. Tokens persist to `~/.mcp-auth/mcp-remote-<version>/<hash>/`. Subsequent launches skip the browser.\n\nTo force a fresh sign-in, delete that directory.\n\n## Sub-servers\n\nThe unified `/mcp` endpoint includes all of these. Use the per-sub-server form below only if you want narrow tool catalogs or separate Claude Code identities.\n\n| Sub-server | URL | Tools |\n|-----------|-----|-------|\n| `messaging` | `https://mcp.eztexting.com/mcp/messaging` | `message_send`, `message_list`, `message_get`, `message_template_*`, `conversation_*`, `message_report_*` |\n| `contacts` | `https://mcp.eztexting.com/mcp/contacts` | `contact_*`, `contact_group_*`, `contact_field_*` |\n| `workflows` | `https://mcp.eztexting.com/mcp/workflows` | `wf_list`, `wf_fetch`, `wf_save`, `wf_status`, `wf_schema`, `wf_templates`, `wf_stat`, `wf_create_from_template` |\n| `admin` | `https://mcp.eztexting.com/mcp/admin` | `account_details`, `buy_credits`, `stat_get`, `webhook_*`, `keyword_list` |\n\nTool names are exposed unprefixed; EZTexting's catalog has no cross-sub-server collisions.\n\n## Local bridge — per sub-server (advanced)\n\nPass `--server <name>` to scope to one sub-server. Each invocation runs its own mcp-remote child. Remote clients should just point at the sub-server URL directly (e.g., `https://mcp.eztexting.com/mcp/messaging`) — no flag needed.\n\n```json\n{\n  \"mcpServers\": {\n    \"eztexting-messaging\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@eztexting/mcp-server\", \"--server\", \"messaging\"]\n    },\n    \"eztexting-contacts\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@eztexting/mcp-server\", \"--server\", \"contacts\"]\n    }\n  }\n}\n```\n\nValid names: `messaging`, `contacts`, `workflows`, `admin`.\n\n## Build from source\n\n```\ngit clone https://github.com/eztexting/mcp-server.git\ncd mcp-server\nnpm install\nnpm run build\nnode dist/cli.js                        # unified /mcp endpoint\nnode dist/cli.js --server messaging     # single sub-server\n```\n\n## Files written\n\nmcp-remote owns the auth cache: `~/.mcp-auth/mcp-remote-<version>/<serverUrlHash>/{tokens.json,client_info.json}`. One hash per distinct upstream URL.\n\n## Requirements\n\n- EZTexting account\n- Browser available on first connect (OAuth 2.1 PKCE)\n- Node.js 20+ — **only** if using the local stdio bridge (remote clients don't need it)\n",
  "bytes": 3768,
  "sha": "29dd44f1cb2833be545cc78bc9ff0225625a6b62ef8bda67cf51fd0ff15d0e0f",
  "repo_slug": "eztexting/mcp-server",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_com_eztexting_mcp_6751a0fd/readme"
}