Fathom MCP服务器
  ](https://lobehub.com/mcp/druellan-fathom-simple-mcp)
用于访问Fathom.video会议记录、成绩单、摘要、团队和团队成员的模型上下文协议(MCP)服务器。
该实现提供了对Fathom会议数据的简化访问,同时最大限度地减少了API的消耗。它使用 卡通 输出格式,以减少令牌使用和更好的LLM处理。
特性
- 搜索会议:按关键字在标题、与会者、团队、主题和摘要中搜索会议。可选择在成绩单中搜索。
- 列出会议:通过可选的筛选和包含摘要来检索会议
- 获取会议详细信息:检索全面的会议数据,包括人工智能生成的摘要和记录
- 列出团队:检索所有团队
- 列出团队成员:使用可选的团队筛选检索团队成员
需求
- Python 3.10+
- Fathom API密钥
安装
- 克隆或下载此存储库
- 安装依赖项:
pip install -r requirements.txt或
uv venv && uv sync配置
服务器使用环境变量进行配置:
FATHOM_API_KEY:您的Fathom API密钥(必需)FATHOM_TIMEOUT:请求超时(秒)(默认值:30)OUTPUT_FORMAT:工具响应的输出格式(toon或json,默认:toon)DEFAULT_PER_PAGE:每页结果数(默认值:50)
用法
直接执行Python(推荐)
{
"fathom": {
"command": "python",
"args": [
"server.py"
],
"env": {
"FATHOM_API_KEY": ""
}
}
}使用UV
{
"fathom": {
"command": "uv",
"args": [
"--directory",
"/mcp_path/fathom-mcp",
"run",
"fathom-mcp"
],
"env": {
"FATHOM_API_KEY": ""
}
}
}可用工具
list_meetings
使用可选的筛选和分页功能检索会议。
属性:
calendar_invitees(list\[str\],可选):按受邀者电子邮件筛选calendar_invitees_domains(list\[str\],可选):按域筛选created_after(str,可选):ISO时间戳过滤器created_before(str,可选):ISO时间戳过滤器cursor(str,可选):分页光标include_action_items(bool,可选):包含操作项include_crm_matches(bool,可选):包括CRM匹配项per_page(int,可选):每页结果数(默认值:50,可通过default_per_page env var配置)recorded_by(list\[str\],可选):按记录器电子邮件筛选teams(list\[str\],可选):按团队名称筛选
search_meetings
按关键字在标题、参与者、团队、主题、摘要和可选的成绩单中搜索会议。
属性:
query(str,必填):搜索查询以匹配会议元数据和可选的成绩单内容include_transcript(bool,可选):如果为True,则在成绩单中搜索并将其包含在结果中(默认值:False)。警告:这速度较慢,资源密集。
退货: 包含以下内容的搜索结果对象:
items:附有完整会议细节的匹配会议清单(如有要求,还提供会议记录)query:使用的搜索查询total_matches:与搜索匹配的会议数searched_transcripts:布尔值,指示是否搜索了转录本
示例:
search_meetings("McDonalds")-仅搜索元数据(快速)search_meetings("budget discussion", include_transcript=True)-搜索包括完整成绩单(速度较慢)search_meetings("engineering")-查找与工程主题相关的会议
get_meeting_details
检索全面的会议详细信息,包括摘要和元数据(不包括成绩单)。
属性:
recording_id(int):录制标识符
退货: 包含以下内容的统一会议对象:
recording_id:录制的唯一标识符title:会议标题meeting_url:会议录制的URLshare_url:会议的可共享URLcreated_at:创建会议时scheduled_start_time:原计划开始时间scheduled_end_time:原计划结束时间recording_start_time:录制实际开始时recording_end_time:录制实际结束时transcript_language:记录语言participants:会议参与者名单,包括姓名、电子邮件和外部/内部状态recorded_by:关于谁记录了会议的信息(姓名、电子邮件、团队)teams:与会议相关的团队topics:讨论了人工智能检测到的主题sentiment:总体情绪分析crm_matches:CRM联系人匹配summary:AI生成的会议摘要(从markdown转换为纯文本)
get_meeting_transcript
检索包含基本元数据(id、标题、参与者、日期)的会议记录。
属性:
recording_id(int):录制标识符
退货: 包含以下内容的转录对象:
recording_id:录制的唯一标识符title:会议标题participants:与会者名单created_at:创建会议时scheduled_start_time:原计划开始时间scheduled_end_time:原计划结束时间transcript:带时间戳的完整会议记录
list_teams
使用可选分页检索团队。
属性:
cursor(str,可选):分页光标per_page(int,可选):每页结果数(默认值:50,可通过default_per_page env var配置)
list_team_members
使用可选的过滤和分页功能检索团队成员。
属性:
cursor(str,可选):分页光标per_page(int,可选):每页结果数(默认值:50,可通过default_per_page env var配置)team(str,可选):按团队名称筛选
MCP配置示例
克劳德代码
{
"mcpServers": {
"fathom": {
"command": "python",
"args": ["path/to/fathom-mcp/server.py"],
"env": {
"FATHOM_API_KEY": "your-api-key-here"
}
}
}
}GitHub副本(VS代码)
{
"servers": {
"fathom": {
"command": "python",
"args": ["path/to/fathom-mcp/server.py"],
"env": {
"FATHOM_API_KEY": "your-api-key-here"
}
}
}
}Roo代码
{
"mcp": {
"servers": {
"fathom": {
"command": "uv",
"args": [
"--directory",
"/mcp_path/fathom-mcp",
"run",
"fathom-mcp"
],
"env": {
"FATHOM_API_KEY": "your-api-key-here"
}
}
}
}
}输出格式
服务器支持通过配置的两种输出格式 OUTPUT_FORMAT 环境变量:
- 香椿 (默认):令牌优化对象表示法-针对LLM处理进行优化,减少令牌使用
- 对象符号:标准JSON格式,带缩进,便于人类阅读
所有输出都经过过滤,以删除空、null或冗余信息,从而提高效率。
错误处理
服务器提供全面的错误处理:
- 401未经授权:API密钥无效
- 404未找到:未找到资源
- 429价格有限:请求太多
- 500服务器错误:Fathom API问题
所有错误都通过MCP上下文记录,并具有适当的严重级别。
安全
- API密钥是从环境变量加载的
- 未记录敏感数据
- HTTPS用于所有API请求
- 错误消息不公开内部详细信息
许可证
MIT许可证。
