使用说明
TwelveLabs MCP服务器
该项目不隶属于TwelveLabs(视频理解平台)。 这是一个MCP服务器 ElevenLabs 对话人工智能API --语音代理、知识库、对话和TTS。名称“TwelveLabs”只是项目代号。
一个增强的MCP(模型上下文协议)服务器,提供任何兼容的MCP 客户直接访问ElevenLabs对话人工智能API,包括 ElevenLabs官方MCP连接器没有公开的功能。
这包括什么
- 代理 --列表,获取完整配置(包括LLM模型+温度),更新提示/设置,管理webhooks和文件上传
- 知识库 --列表、阅读完整内容、添加文本/URL文档、删除文档
- 对话 --过滤和标记历史记录,检查成绩单,并重新运行调用后分析/评估
- 声音 --列出并搜索可用语音
先决条件
- Node.js>=18
- ElevenLabs API密钥 --得到一个在 十一个实验室.io
快速开始
选项A:npx(不需要克隆)
ELEVENLABS_API_KEY=your-key npx twelvelabs-mcp-server
选项B:克隆和构建
git clone https://github.com/micro-JAY/twelvelabs-mcp-server.git
cd twelvelabs-mcp-server
npm install --include=dev
npm run build
连接MCP客户端
将等效的服务器条目添加到MCP客户端的配置中。配置 文件位置和周围语法因客户端而异;这是标准的stdio 服务器定义:
{
"mcpServers": {
"twelvelabs": {
"command": "node",
"args": ["/path/to/twelvelabs-mcp-server/dist/index.js"],
"env": {
"ELEVENLABS_API_KEY": "your-api-key-here"
}
}
}
}
重新启动或重新连接MCP客户端。你应该看看 twelvelabs 在其中
可用工具列表。
用它
请您的启用MCP的助手使用这些工具,例如:
“列出我的代理人” “获取agent_1001kjbh14xce5kbreh55ydf4rae的完整配置” “显示该代理的最后10个对话” “获取对话的文字记录和分析_xyz”
兼容性
此服务器与支持以下功能的MCP客户端配合使用 标准 运输和出租 您可以为本地服务器进程配置环境变量。客户认为 仅支持远程HTTP MCP服务器需要兼容的stdio网桥或代理。
工具参考
代理工具
| 工具 | 它做什么 |
|---|---|
twelvelabs_list_agents |
列出您帐户中的所有代理 |
twelvelabs_get_agent |
完整配置:LLM模型、语音、KB文档、webhook、提示预览 |
twelvelabs_get_agent_prompt |
完整的未截断系统提示文本 |
twelvelabs_update_agent_prompt |
替换系统提示和/或第一条消息 |
twelvelabs_update_agent_settings |
更改温度、语音、TTS设置、语言 |
twelvelabs_update_agent_conversation_capabilities |
启用聊天文件上传并设置最长持续时间消息 |
twelvelabs_list_agent_conversations |
一个代理最近的对话 |
twelvelabs_get_agent_webhook |
当前webhook URL |
twelvelabs_set_agent_webhook |
设置或删除webhook URL |
知识库工具
| 工具 | 它做什么 |
|---|---|
twelvelabs_list_kb_docs |
所有带有大小和创建日期的KB文档 |
twelvelabs_get_kb_doc |
文档的完整提取文本内容 |
twelvelabs_add_kb_text |
添加纯文本文档 |
twelvelabs_add_kb_url |
按URL添加网页 |
twelvelabs_delete_kb_doc |
永久删除文档 |
对话工具
| 工具 | 它做什么 |
|---|---|
twelvelabs_list_conversations |
按代理、时间、成功、持续时间、评级、状态和标签筛选历史记录 |
twelvelabs_get_conversation |
完整成绩单、音频/标签元数据、数据收集和评估结果 |
twelvelabs_rerun_conversation_analysis |
使用当前代理设置重新分析已完成的对话 |
twelvelabs_rerun_conversation_evaluation |
为已完成的对话重新运行单个评估标准 |
twelvelabs_list_conversation_tags |
列出工作区对话标签 |
twelvelabs_create_conversation_tag |
创建工作区对话标签 |
twelvelabs_update_conversation_tag |
重命名标记或更改其描述 |
twelvelabs_assign_conversation_tags |
将一个或多个标签应用于对话 |
twelvelabs_remove_conversation_tag |
从对话中删除标签 |
twelvelabs_delete_conversation_tag |
永久删除工作区对话标签 |
语音工具
| 工具 | 它做什么 |
|---|---|
twelvelabs_list_voices |
浏览带有ID和标签的可用语音 |
安全
- 输入验证 --在到达API之前,所有工具参数都要使用Zod模式进行验证
- HTTPS强制 --webhook URL被验证为仅使用HTTPS
- 路径遍历保护 --对文档和代理ID进行清理,以防止路径遍历
- 错误清理 --内部错误被捕获并作为安全的MCP错误响应返回;原始堆栈跟踪永远不会暴露给客户端
发展
npm run dev # watch mode with tsx -- auto-reloads on file changes
npm run build # compile to dist/
贡献
- 分叉存储库
- 创建要素分支(
git checkout -b feat/my-feature) - 提交您的更改(
git commit -m 'feat: add my feature') - 推到分支(
git push origin feat/my-feature) - 打开拉取请求
许可证
麻省理工学院——见 许可证 了解详情。
架构说明
所有工具共享一个Axios客户端实例(src/client.ts)初始化自
ELEVENLABS_API_KEY 在启动时。工具实现已上线 src/tools/ --一个
每个域的文件,并在McpServer上注册 src/index.tsThe
服务器通过stdio传输(stdin/stdout)进行通信,这就是为什么所有debug
日志记录用途 console.error (stderr),不是 console.log.
