ChatterBox MCP Server
ChatterBox MCP 服务器
ChatterBox 的模型上下文协议服务器实现,使 AI 代理能够与在线会议进行交互并生成会议摘要。
概述
ChatterBox MCP 服务器为 AI 代理提供以下工具:
加入在线会议(Zoom 和 Google Meet)
捕获文字记录和录音
生成会议摘要
Related MCP server: Google Meet MCP Server
安装
通过 Smithery 安装
要通过Smithery自动为 Claude Desktop 安装 chatterboxio-mcp-server:
npx -y @smithery/cli install @OverQuotaAI/chatterboxio-mcp-server --client claude手动安装
您可以使用 npm 或 pnpm 安装依赖项:
# Using npm
npm install
# Using pnpm
pnpm install配置
获取 API 密钥
您可以在我们的网站ChatterBox上注册,免费获取 API 密钥。注册后,您将收到 API 端点和密钥。
环境设置
在根目录中创建一个.env文件,其中包含以下变量:
CHATTERBOX_API_ENDPOINT=https://api.chatter-box.io
CHATTERBOX_API_KEY=your_api_key_here用法
启动服务器
npm start可用工具
加入会议
加入 Zoom 或 Google Meet 会议并获取文字记录和录音。
参数:
platform(字符串):在线会议平台(“zoom”或“googlemeet”)meetingId(字符串):会议的IDmeetingPassword(字符串,可选):会议密码botName(字符串):机器人的名称webhookUrl(字符串,可选):用于接收会议状态的 webhook 事件的 URL
获取会议信息
获取有关会议的信息,包括会议记录和录音。
参数:
sessionId(字符串):获取信息的会话 ID
总结会议
根据会议记录生成会议内容的简明摘要。
参数:
transcript(字符串):需要总结的会议记录
发展
先决条件
Node.js 16+
npm 或 yarn
建筑
npm run build执照
该项目根据 MIT 许可证获得许可 - 有关详细信息,请参阅LICENSE文件。
支持
如需支持,请访问ChatterBox 文档或联系support@chatter-box.io 。
贡献
欢迎贡献代码!欢迎提交 Pull 请求。
Available Tools
3 toolsgetMeetingInfoC
Get information about a meeting
| Name | Required | Description | Default |
|---|---|---|---|
| sessionId | Yes | The session ID to get information for |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. 'Get information about a meeting' implies a read-only operation, but it doesn't specify what information is returned, whether it requires authentication, if there are rate limits, or any error conditions. This leaves significant gaps for an agent to understand the tool's behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence with no wasted words. It's front-loaded with the core purpose, making it easy for an agent to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of annotations and output schema, the description is incomplete. It doesn't explain what information is returned (e.g., meeting details, participants, timing), which is critical for a tool with 'get' functionality. The agent is left guessing about the tool's output and full behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, with the single parameter 'sessionId' documented as 'The session ID to get information for'. The description doesn't add any meaning beyond this, such as explaining what a session ID is or where to obtain it. With high schema coverage, the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Get information about a meeting' states a clear verb ('Get') and resource ('meeting'), but it's vague about what specific information is retrieved. It doesn't distinguish this tool from its sibling 'summarizeMeeting', which might also provide meeting information in a summarized form.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like 'summarizeMeeting' or 'joinMeeting'. It doesn't mention prerequisites (e.g., needing a sessionId) or contextual factors that would help an agent choose between these tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
joinMeetingB
Join a Zoom, Google Meet, or Microsoft Teams meeting using the provided meeting ID and password and capture transcript and audio recording
| Name | Required | Description | Default |
|---|---|---|---|
| platform | Yes | The online conference platform (zoom, googlemeet, or teams) | |
| meetingId | Yes | The ID of the Zoom ('###########') or Google Meet ('xxx-xxx-xxx') or Microsoft Teams ('##########') meeting | |
| meetingPassword | No | The password or the passcode for the Zoom or Google Meet or Microsoft Teams meeting (optional) | |
| botName | Yes | The name of the bot | |
| webhookUrl | No | URL to receive webhook events for meeting status (optional) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions joining and capturing data, but lacks critical details: whether this requires specific permissions or authentication, if it's a read-only or mutative operation (e.g., does joining affect meeting state?), rate limits, error handling (e.g., invalid IDs), or what happens post-capture (e.g., where recordings are stored). The description is insufficient for a tool with significant behavioral implications.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that efficiently conveys the core functionality without unnecessary words. It is front-loaded with the primary action ('join') and key outcomes, making it easy to parse. Every part of the sentence contributes essential information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (joining meetings and capturing data), lack of annotations, and no output schema, the description is incomplete. It fails to address critical behavioral aspects like permissions, mutative effects, error scenarios, or output format (e.g., how transcripts/recordings are returned). For a tool with significant operational impact, this leaves too many gaps for effective agent use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, providing clear documentation for all 5 parameters. The description adds minimal value beyond the schema, only implicitly referencing 'meeting ID and password' without elaborating on their semantics or the optional 'webhookUrl' for status updates. Since the schema does the heavy lifting, the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('join'), the resources affected ('Zoom, Google Meet, or Microsoft Teams meeting'), and the outcomes ('capture transcript and audio recording'). It distinguishes itself from sibling tools like 'getMeetingInfo' (which likely retrieves information) and 'summarizeMeeting' (which likely processes existing data) by focusing on active participation and data capture.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like 'getMeetingInfo' or 'summarizeMeeting'. It does not mention prerequisites (e.g., needing valid credentials or meeting access), exclusions (e.g., not for already-ended meetings), or contextual triggers (e.g., use when real-time transcription is needed).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
summarizeMeetingB
Generate a concise summary of a meeting's contents from its transcript
| Name | Required | Description | Default |
|---|---|---|---|
| transcript | Yes | The meeting transcript to summarize |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool generates a summary but doesn't describe key behaviors like output format, length, quality, or any limitations (e.g., handling long transcripts, language support). For a tool with no annotations, this leaves significant gaps in understanding how it operates.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that clearly states the tool's purpose without any wasted words. It is front-loaded with the core action and resource, making it easy to parse quickly. Every part of the sentence earns its place by conveying essential information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (summarization task) and lack of annotations and output schema, the description is minimally adequate. It covers the basic purpose but misses behavioral details and usage context. Without an output schema, it should ideally explain return values, but it doesn't, leaving gaps in completeness for effective agent use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, with the single parameter 'transcript' well-documented in the schema. The description adds no additional parameter details beyond what the schema provides (e.g., format expectations, length constraints). Since the schema does the heavy lifting, the baseline score of 3 is appropriate, as the description doesn't compensate but also doesn't detract.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Generate a concise summary of a meeting's contents from its transcript.' It specifies the verb ('generate'), resource ('summary'), and source ('transcript'), making it easy to understand what the tool does. However, it doesn't explicitly differentiate from sibling tools like getMeetingInfo or joinMeeting, which prevents a perfect score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools (getMeetingInfo, joinMeeting) or any context for choosing this tool over others. The usage is implied from the purpose, but there are no explicit when/when-not instructions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
v1.0.0- Changed
joinMeeting4 fields changed- changed
Input schema / properties / meetingId / descriptionPrevious value: -"The ID of the Zoom ('###########') or Google Meet ('xxx-xxx-xxx') meeting"New value: +"The ID of the Zoom ('###########') or Google Meet ('xxx-xxx-xxx') or Microsoft Teams ('##########') meeting" - changed
Input schema / properties / meetingPassword / descriptionPrevious value: -"The password for the Zoom meeting (optional)"New value: +"The password or the passcode for the Zoom or Google Meet or Microsoft Teams meeting (optional)" - changed
Input schema / properties / platform / descriptionPrevious value: -"The online conference platform (zoom or googlemeet)"New value: +"The online conference platform (zoom, googlemeet, or teams)" - changed
Input schema / properties / platform / enumPrevious value: -[ - "zoom", - "googlemeet" -]New value: +[ + "zoom", + "googlemeet", + "teams" +]
3 tool updates
- First observed
getMeetingInfo - First observed
joinMeeting - First observed
summarizeMeeting
TDQS
Scored across 3 tools
Each tool has a clearly distinct purpose: getMeetingInfo retrieves meeting details, joinMeeting handles joining and recording, and summarizeMeeting processes transcripts. There is no overlap in functionality, making tool selection straightforward for an agent.
The tools follow a consistent verb_noun pattern (getMeetingInfo, joinMeeting, summarizeMeeting), with minor deviations in capitalization (camelCase). This consistency aids readability and predictability, though the mixed case style is a slight deviation from pure snake_case.
With only 3 tools, the server feels thin for a meeting management domain. While the tools cover core actions, additional operations like creating meetings, updating details, or managing participants are missing, suggesting the scope could be expanded for better utility.
There are significant gaps in the tool surface for meeting management. The server lacks create, update, or delete operations for meetings, and does not include tools for handling participants, scheduling, or notifications. This incompleteness will likely cause agent failures in broader workflows.
Maintenance
Related MCP Connectors
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
Meeting bots for Zoom, Google Meet and Teams: record, transcribe, summarize, run voice agents.
Model Context Protocol server for the Apideck Unified API. Connect any MCP-compatible agent framework to 100+ accounting systems, HRIS platforms, file storage providers, and more through one integration. More information https://www.apideck.com/mcp-server
A Model Context Protocol server for Wix AI tools
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol server that enables AI assistants to manage meeting data, including creating meeting bots, searching transcripts, and organizing calendar events.30MIT
- AlicenseNot gradedqualityFmaintenanceThe Google Meet MCP Server enables AI agents to create, manage, and retrieve Google Meet meetings. Built on the Model Context Protocol, it exposes tools for scheduling, updating, and deleting meetings, making it easy to integrate Google Meet functionalities10 npm2MIT
- AlicenseAqualityDmaintenanceA Model Context Protocol server that allows users to create and manage meeting bots capable of joining video calls, speaking, sending chat messages, and retrieving meeting transcripts.1113MIT
- -licenseNot gradedqualityNot gradedmaintenanceAn MCP Server that enables interaction with Zoom's API through the Multi-Agent Conversation Protocol, allowing users to access and control Zoom's functionality via natural language commands.-