Skip to main content
Glama
TwilioManager MCP

TwilioManager MCP

by errajibadr

Twilio 管理器 MCP

用于管理 Twilio 资源的模型上下文协议 (MCP) 实现。此软件包提供了通过标准化 MCP 接口管理 Twilio 子账户、电话号码和监管捆绑包的工具。

特征

  • 列出 Twilio 子账户

  • 获取与子账户关联的电话号码

  • 在子账户之间转移电话号码

  • 获取监管软件包 SID

  • 支持直接通信和服务器发送事件 (SSE) 通信

  • 与 Claude Desktop、Cursor 和其他 MCP 兼容工具集成

Related MCP server: Twilio MCP Server

安装

先决条件

安装 uv

在 macOS 上:

brew install uv

在 Windows 上:

powershell -c "irm https://astral.sh/uv/install.ps1 | iex"

在 Linux 上:

curl -LsSf https://astral.sh/uv/install.sh | sh

项目设置

  1. 克隆存储库:

git clone https://github.com/yourusername/twilio_manager_mcp.git
cd twilio_manager_mcp
  1. 使用 uv 安装依赖项:

uv sync

配置

  1. 使用您的 Twilio 凭据在根目录中创建一个.env文件:

TWILIO_ACCOUNT_SID=your_account_sid
TWILIO_AUTH_TOKEN=your_auth_token
  1. 通过创建.cursor/mcp.json文件为您的工具(Cursor、Claude Desktop 等)配置 MCP:

{
  "mcpServers": { 
    "twilio_manager_mcp_abs": {
      "command": "uv",
      "args": ["--directory", "/path/to/twilio_manager_mcp", "run", "mcp", "run", "./twilio_manager_mcp.py"],
      "env": {
        "TWILIO_ACCOUNT_SID": "your_account_sid",
        "TWILIO_AUTH_TOKEN": "your_auth_token"
      }
    },
    "twilio_manager_mcp_uvx": {
      "command": "uvx",
      "args": [ "twilio-manager-mcp" ],
      "env": {
        "TWILIO_ACCOUNT_SID": "your_account_sid",
        "TWILIO_AUTH_TOKEN": "your_auth_token"
      }
    },
    "twilio_manager_mcp_sse": {
      "url": "http://localhost:8000/sse"
    }
  }
}

Docker

您可以使用 Docker 运行 Twilio Manager MCP,以便更轻松地部署和管理。

使用 Docker Compose

该项目包括一个 Docker Compose 配置,用于设置:

  • Twilio Manager MCP 服务

  • 具有自动 HTTPS 的 Traefik 反向代理

  1. 在.env文件中配置环境变量:

# Twilio credentials
TWILIO_ACCOUNT_SID=your_account_sid
TWILIO_AUTH_TOKEN=your_auth_token

# Domain configuration for Traefik
DOMAIN_NAME=yourdomain.com
ACME_EMAIL=user@yourdomain.com

# Address details (optional)
ADDRESS_CUSTOMER_NAME=
ADDRESS_FRIENDLY_NAME=
ADDRESS_STREET=
ADDRESS_CITY=
ADDRESS_REGION=
ADDRESS_POSTAL_CODE=
ADDRESS_ISO_COUNTRY=
  1. 启动服务:

docker-compose up -d

该应用程序将在启用 HTTPS 的配置域中可用。

不使用 Docker Compose 来使用 Docker

如果您只想运行 Twilio Manager MCP 容器而不运行 Traefik:

  1. 构建 Docker 镜像:

docker build -t twilio-manager-mcp .
  1. 运行容器:

docker run -p 8000:8000 \
  -e TWILIO_ACCOUNT_SID=your_account_sid \
  -e TWILIO_AUTH_TOKEN=your_auth_token \
  twilio-manager-mcp

SSE 端点将在http://localhost:8000/sse上可用。

用法

使用 Cursor、Claude Desktop 或其他 MCP 兼容工具

您有三种选择来使用此 MCP:

  1. 直接 UVX 集成(推荐):

    • 使用twilio_manager_mcp_uvx配置

    • 这是最简单的方法,可以直接使用 uvx

  2. 直接紫外线集成:

    • 使用twilio_manager_mcp_abs配置

    • 需要指定安装的完整路径

  3. SSE 服务器:

    • 使用twilio_manager_mcp_sse配置

    • 首先启动SSE服务器:

      uvicorn twilio_manager_mcp_sse:app --host 0.0.0.0 --port 8000

可用工具

工具名称

描述

list_twilio_subaccounts

列出所有 Twilio 子账户

get_account_phone_numbers

获取特定子账户的电话号码

get_all_phone_numbers

在子账户之间转移电话号码

get_regulatory_bundle_sid

获取子账户的监管捆绑包 SID

Cursor/Claude Desktop 中的示例用法

配置完成后,您可以直接在 AI 助手对话中使用这些工具:

  1. 列出所有子账户:

# The AI will automatically use the MCP to list all subaccounts
# No need to write code - just ask "List all Twilio subaccounts"
  1. 获取子账户的电话号码:

# Simply ask: "Show me all phone numbers for subaccount AC..."

直接使用 Python

对于直接编程使用:

from mcp import ClientSession
from clients.client import MCPClient

async with MCPClient("uvx", ["twilio-manager-mcp"], env={}) as session:
    # List available tools
    tools = (await session.list_tools()).tools
    
    # List all subaccounts
    subaccounts = await session.invoke("list_twilio_subaccounts")
    
    # Get phone numbers for a subaccount
    numbers = await session.invoke("get_account_phone_numbers", {"account_sid": "AC..."})

项目结构

twilio_manager_mcp/
├── api/
│   └── async_twilio_api.py    # Async Twilio API implementation
├── clients/
│   ├── client.py              # Direct MCP client implementation
│   └── client_sse.py          # SSE client implementation
├── twilio_manager_mcp.py      # Core MCP server implementation
├── twilio_manager_mcp_sse.py  # SSE server wrapper
├── requirements.txt           # Project dependencies
└── README.md                 # This file

发展

对于开发,您可以使用uv的虚拟环境管理:

# Create a virtual environment
uv venv

# Activate the virtual environment
source .venv/bin/activate  # On Unix
.venv\Scripts\activate     # On Windows

# Install dependencies in development mode
uv pip install -e .

贡献

欢迎贡献代码!欢迎提交 Pull 请求。

执照

MIT 许可证

Available Tools

4 tools
get_account_phone_numbersC

Get all phone numbers associated with a Twilio subaccount

Inputs: account_sid (required).

get_all_phone_numbersC

Get all phone numbers associated with a Twilio subaccount

Inputs: source_account_sid (required), phone_number_sid (required), target_account_sid (required).

get_regulatory_bundle_sidC

Get the regulatory bundle SID for a Twilio subaccount

Inputs: subaccount_sid (required).

list_twilio_subaccountsB

List all Twilio subaccounts or filter by friendly name. Provide an empty string for all subaccounts

Inputs: no named parameters.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    C2.9/5.0

    Scored across 4 tools

    Disambiguation2/5

    Two tools have nearly identical purposes: 'get_account_phone_numbers' and 'get_all_phone_numbers' both retrieve phone numbers for Twilio subaccounts, creating clear ambiguity. The other two tools target distinct resources (regulatory bundles and subaccounts), but the overlap between the first two tools is significant and likely to cause misselection.

    Naming Consistency4/5

    All tools follow a consistent verb_noun pattern (e.g., get_account_phone_numbers, list_twilio_subaccounts) with clear, descriptive names. The naming style is uniform across the set, making it easy to parse and understand the actions and targets.

    Tool Count3/5

    With only 4 tools, the count feels thin for a server named 'TwilioManager MCP', which suggests broader Twilio API management. This limited set may not cover essential operations like sending messages, managing calls, or updating resources, making it borderline for the implied scope.

    Completeness2/5

    The tool surface is severely incomplete for Twilio management, lacking core functionalities such as sending SMS, making calls, or updating subaccounts. It focuses narrowly on retrieval operations (get/list) without create, update, or delete capabilities, leading to significant gaps that will hinder agent workflows.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers