
这是一个用于 VoIPBin API 的模型上下文协议 (MCP) 服务器实现,使AI模型能够与VoIP服务进行交互。
本软件按“原样”提供,不附带任何形式的保证,无论是明示或暗示的。作者不对该软件的完整性、可靠性或准确性做出任何保证。使用此软件的风险由您自行承担。作者对因使用此软件而产生的任何损害不负责任。
此MCP服务器为AI模型提供了与VoIPBin API服务交互的标准接口。它实现了模型上下文协议规范,并支持SSE和stdio传输类型。
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: 获取计费历史记录,可选日期过滤python -m venv venv
source venv/bin/activate # 在Windows上:venv\Scripts\activate
pip install -r requirements.txt
.env文件:cp .env.example .env
.env文件:VOIPBIN_API_URL=https://api.voipbin.net/v1.0
VOIPBIN_API_KEY=your-api-key-here
PORT=8000
# 构建并启动容器
docker-compose up --build
# 以分离模式运行
docker-compose up -d
# 停止容器
docker-compose down
# 构建镜像
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
python src/main.py --transport stdio
python src/main.py --transport sse --port 8000
当使用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": "团队会议",
"participants": ["+1234567890", "+0987654321"]
}
}
}
{
"name": "send_chat_message",
"arguments": {
"chat_id": "chat_123",
"body": {
"message": "你好,今天我能为你做些什么?"
}
}
}
每个工具都包含提供其行为元数据的注释:
readOnlyHint: 表示工具仅读取数据destructiveHint: 表示工具修改或删除数据idempotentHint: 表示重复调用具有与单次调用相同的效果openWorldHint: 表示工具在开放世界环境中操作服务器包括全面的错误处理:
要添加新工具:
list_tools()函数中添加工具定义voipbin_tool()函数中实现工具处理器运行测试套件:
python -m pytest tests/
本项目根据MIT许可证发布 - 请参阅LICENSE文件获取详细信息。
MIT许可证是一个许可条款简洁明了的许可证。只要您提供原始来源的归属并不要求作者承担责任,您可以自由地使用此代码。
有关MIT许可证的更多信息,请访问choosealicense.com/licenses/mit/。