VoIPBin MCP Server

VoIPBin MCP Server

一个模型上下文协议服务器,使人工智能模型能够与 VoIPBin 的 VoIP 服务进行交互,支持呼叫管理、座席管理、营销活动、电话会议和聊天功能等特性。

Category
访问服务器

README

VoIPBin MCP 服务器

一个用于 VoIPBin API 的模型上下文协议 (MCP) 服务器实现,使 AI 模型能够与 VoIP 服务交互。

免责声明

本软件按“原样”提供,不提供任何明示或暗示的保证。作者不对本软件的完整性、可靠性或准确性做出任何保证。使用本软件的风险由您自行承担。作者不对因使用本软件而造成的任何损失负责。

概述

此 MCP 服务器为 AI 模型与 VoIPBin 的 API 服务交互提供了一个标准化的接口。它实现了模型上下文协议规范,并支持 SSE 和 stdio 传输类型。

特性

  • 通过 MCP 协议完全集成 VoIPBin API
  • 支持 stdio 和 SSE 传输模式
  • 具有适当注释的全面工具定义
  • 类型安全的请求/响应处理
  • 异步 HTTP 请求
  • 适当的错误处理和验证
  • Docker 支持,便于部署

可用工具

呼叫管理

  • get_calls: 检索呼叫列表,可选择过滤
  • get_call: 获取特定呼叫的详细信息
  • create_call: 创建新呼叫
  • end_call: 结束活动呼叫

代理管理

  • get_agents: 检索代理列表
  • get_agent: 获取特定代理的详细信息
  • update_agent_status: 更新代理的状态

活动管理

  • get_campaigns: 检索活动列表
  • get_campaign: 获取特定活动的详细信息
  • create_campaign: 创建新活动

录音管理

  • get_recordings: 检索呼叫录音列表
  • get_recording: 获取特定录音的详细信息

队列管理

  • get_queues: 检索呼叫队列列表
  • get_queue: 获取特定队列的详细信息

会议管理

  • get_conferences: 检索活动会议列表
  • create_conference: 创建新会议

聊天管理

  • get_chats: 检索聊天对话列表
  • send_chat_message: 在聊天对话中发送消息

账单管理

  • get_billing_info: 检索当前账单信息
  • get_billing_history: 检索账单历史记录,可选择日期过滤

设置

本地开发设置

  1. 创建一个虚拟环境:
python -m venv venv
source venv/bin/activate  # 在 Windows 上:venv\Scripts\activate
  1. 安装依赖项:
pip install -r requirements.txt
  1. 创建一个 .env 文件:
cp .env.example .env
  1. 使用您的 VoIPBin API 凭据更新 .env 文件:
VOIPBIN_API_URL=https://api.voipbin.net/v1.0
VOIPBIN_API_KEY=your-api-key-here
PORT=8000

Docker 设置

  1. 使用 Docker Compose 构建和运行:
# 构建并启动容器
docker-compose up --build

# 在分离模式下运行
docker-compose up -d

# 停止容器
docker-compose down
  1. 或者直接使用 Docker 构建和运行:
# 构建镜像
docker build -t voipbin-mcp-server .

# 运行容器
docker run -d \
  -p 8000:8000 \
  -e VOIPBIN_API_KEY=your-api-key-here \
  -e VOIPBIN_API_URL=https://api.voipbin.net/v1.0 \
  voipbin-mcp-server

运行服务器

本地开发

标准 I/O 模式

python src/main.py --transport stdio

SSE 模式

python src/main.py --transport sse --port 8000

Docker

使用 Docker 时,服务器默认以 SSE 模式运行。容器公开端口 8000 用于 SSE 连接。

工具使用示例

创建呼叫

{
  "name": "create_call",
  "arguments": {
    "body": {
      "phone_number": "+1234567890",
      "agent_id": "agent_123",
      "campaign_id": "campaign_456"
    }
  }
}

获取呼叫详细信息

{
  "name": "get_call",
  "arguments": {
    "call_id": "call_789"
  }
}

创建会议

{
  "name": "create_conference",
  "arguments": {
    "body": {
      "name": "Team Meeting",
      "participants": ["+1234567890", "+0987654321"]
    }
  }
}

发送聊天消息

{
  "name": "send_chat_message",
  "arguments": {
    "chat_id": "chat_123",
    "body": {
      "message": "Hello, how can I help you today?"
    }
  }
}

工具注释

每个工具都包含提供有关其行为的元数据的注释:

  • readOnlyHint: 指示该工具是否仅读取数据
  • destructiveHint: 指示该工具是否修改或删除数据
  • idempotentHint: 指示重复调用是否与单次调用具有相同的效果
  • openWorldHint: 指示该工具是否在开放世界上下文中运行

错误处理

服务器包括全面的错误处理:

  • 无效的 API 凭据
  • 网络连接问题
  • 无效的请求参数
  • 速率限制
  • 服务器错误

开发

添加新工具

要添加新工具:

  1. list_tools() 函数中添加工具定义
  2. voipbin_tool() 函数中实现工具处理程序
  3. 更新文档

测试

运行测试套件:

python -m pytest tests/

安全

  • API 密钥安全地存储在环境变量中
  • 所有请求都经过身份验证
  • HTTPS 用于 API 通信
  • 对所有请求执行输入验证
  • Docker 容器以非 root 用户身份运行
  • 健康检查确保容器正常运行

贡献

  1. Fork 存储库
  2. 创建一个功能分支
  3. 提交您的更改
  4. 推送到分支
  5. 创建一个 Pull Request

许可证

本项目根据 MIT 许可证授权 - 有关详细信息,请参阅 LICENSE 文件。

MIT 许可证是一个宽松的许可证,简短而切中要点。 它允许人们对代码做任何他们想做的事情,只要他们提供对您的归属,并且不追究您的责任。

您可以使用此代码做什么:

  • 用于商业用途
  • 修改它
  • 分发它
  • 私下使用它
  • 授予它子许可

你必须做什么:

  • 包括原始版权声明
  • 包括许可证文本
  • 提供对原始来源的明确归属
  • 在任何衍生作品中保持归属

你不能做什么:

  • 让作者对损害负责
  • 删除或模糊归属
  • 声称该作品是您自己的

有关 MIT 许可证的更多信息,请访问 choosealicense.com/licenses/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 模型以安全和受控的方式获取实时的网络信息。

官方
精选