TwilioManager MCP

TwilioManager MCP

一个服务器,通过模型上下文协议将 Claude AI 连接到 Twilio,从而实现对 Twilio 账户、电话号码和法规遵从性的提示辅助管理。

Category
访问服务器

README

Twilio Manager MCP

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

功能

  • 列出 Twilio 子账户
  • 获取与子账户关联的电话号码
  • 在子账户之间转移电话号码
  • 获取监管包 SID
  • 支持直接和服务器发送事件 (SSE) 通信
  • 与 Claude Desktop、Cursor 和其他 MCP 兼容工具集成

安装

前提条件

安装 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. 在根目录中创建一个 .env 文件,其中包含您的 Twilio 凭据:
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 凭据
TWILIO_ACCOUNT_SID=your_account_sid
TWILIO_AUTH_TOKEN=your_auth_token

# Traefik 的域名配置
DOMAIN_NAME=yourdomain.com
ACME_EMAIL=user@yourdomain.com

# 地址详细信息(可选)
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. 直接 UV 集成

    • 使用 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. 列出所有子账户:
# AI 将自动使用 MCP 列出所有子账户
# 无需编写代码 - 只需询问“列出所有 Twilio 子账户”
  1. 获取子账户的电话号码:
# 只需询问:“显示子账户 AC... 的所有电话号码”

直接 Python 用法

对于直接编程用法:

from mcp import ClientSession
from clients.client import MCPClient

async with MCPClient("uvx", ["twilio-manager-mcp"], env={}) as session:
    # 列出可用工具
    tools = (await session.list_tools()).tools
    
    # 列出所有子账户
    subaccounts = await session.invoke("list_twilio_subaccounts")
    
    # 获取子账户的电话号码
    numbers = await session.invoke("get_account_phone_numbers", {"account_sid": "AC..."})

项目结构

twilio_manager_mcp/
├── api/
│   └── async_twilio_api.py    # 异步 Twilio API 实现
├── clients/
│   ├── client.py              # 直接 MCP 客户端实现
│   └── client_sse.py          # SSE 客户端实现
├── twilio_manager_mcp.py      # 核心 MCP 服务器实现
├── twilio_manager_mcp_sse.py  # SSE 服务器包装器
├── requirements.txt           # 项目依赖项
└── README.md                 # 此文件

开发

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

# 创建一个虚拟环境
uv venv

# 激活虚拟环境
source .venv/bin/activate  # 在 Unix 上
.venv\Scripts\activate     # 在 Windows 上

# 在开发模式下安装依赖项
uv pip install -e .

贡献

欢迎贡献!请随时提交 Pull Request。

许可证

MIT 许可证

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选