Back to MCP directory
publicPublicdnsLocal runtime

fathom-mcp-server

Fathom AI MCP服务器是一个连接Claude与Fathom会议、转录和AI摘要的工具,通过安全的OAuth认证实现数据直传,不存储用户数据。

article

README

🚀 Fathom AI MCP 服务器

将 Claude 连接到您的 Fathom 会议、会议记录和 AI 摘要。

本服务器允许您无缝地将 Claude 与 Fathom 平台集成,让您可以直接通过 Claude 查询会议相关信息,如会议列表、会议记录和摘要等。

[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE) [![Node.js](https://img.shields.io/badge/Node.js-18+-green.svg)](https://nodejs.org) [![MCP](https://img.shields.io/badge/MCP-Compatible-purple.svg)](https://modelcontextprotocol.io) [![MCP Registry](https://img.shields.io/badge/MCP_Registry-Published-green.svg)](https://registry.modelcontextprotocol.io)

开始使用 | 可用工具 | API 文档 | 自行托管 | 贡献代码

Security

🚀 快速开始

本服务器已作为 io.github.agencyenterprise/fathom-mcp-server 发布到 MCP 注册表

在 60 秒内完成连接:

https://www.fathom-mcp-server.com/mcp

操作步骤如下:

  1. 打开 Claude 桌面版
  2. 转到 设置 > 连接器 > 添加自定义连接器
  3. 粘贴上述 URL。
  4. 使用 Fathom 进行身份验证。

完成以上步骤后,您就可以向 Claude 询问您的会议信息了。

⚠️ 重要提示

对于组织用户,管理员必须通过组织管理设置添加连接器,而不是个人设置。

✨ 主要特性

可用工具

| 工具 | 描述 | 文档 | | ---- | ---- | ---- | | list_meetings | 按过滤器(日期、团队、记录者等)列出会议 | Fathom API | | search_meetings | 按标题、主持人或参会者信息搜索会议 | MCP 自定义工具 | | get_transcript | 获取会议记录的完整文本 | Fathom API | | get_summary | 获取会议记录的 AI 生成摘要 | Fathom API | | list_teams | 列出所有可访问的团队 | Fathom API | | list_team_members | 列出团队成员 | Fathom API |

自定义 MCP 工具

search_meetings

可按会议标题、主持人姓名、主持人电子邮件或参会者姓名/电子邮件搜索 Fathom 会议。该工具会自动扫描最多 5 页的搜索结果。由于 Fathom 的 API 未提供搜索端点,因此这是一个在客户端进行过滤的 MCP 原生工具。

完整的请求和响应参数请参考 Fathom MCP 服务器文档

在 Claude 中的使用示例

"显示我上周的会议"

"获取我昨天站会的记录"

"总结我与设计团队的会议"

🔒 安全说明

本服务器不会存储或泄露您的 Fathom 数据。

| 数据 | 是否存储? | 是否泄露? | 详情 | | ---- | ---- | ---- | ---- | | 会议、会议记录、摘要 | 否 | 否 | 从 Fathom 获取并直接传递给 Claude | | 团队和成员信息 | 否 | 否 | 从 Fathom 获取并直接传递给 Claude | | OAuth 令牌 | 是 | 否 | 静态加密(AES - 256 - GCM),不会记录或泄露 |

  • 直连架构:本服务器充当安全代理,您的 Fathom 数据直接从 Fathom 流向 Claude,不会被存储、缓存或记录。
  • 静态加密:唯一存储的数据(OAuth 令牌)在写入数据库之前使用 AES - 256 - GCM 进行加密。
  • 仅支持 HTTPS:Claude、本服务器和 Fathom 之间的所有通信在传输过程中均进行加密。

有关数据收集、使用和您的权利的详细信息,请参阅我们的完整 隐私政策

📄 权限说明

此 MCP 服务器为向 Claude 颁发的令牌定义了一个名为 fathom:read 的自定义范围。这不是 Fathom API 范围,而是此 MCP 服务器特有的,用于描述对您的 Fathom 数据的只读访问权限。

Fathom API 本身仅通过其 public_api 范围提供只读访问。Fathom API 不支持写操作(创建/编辑会议、会议记录等)。

⚠️ 使用限制

  • 由于 Fathom 的 API 未提供搜索端点,search_meetings 工具在客户端进行过滤。对于会议较多的用户,建议使用带有日期过滤器的 list_meetings 工具。
  • 您可以随时询问大语言模型(LLM)可用的查询参数。

📦 安装指南

Fathom OAuth 应用需要 HTTPS 重定向 URI,因此无法使用 http://localhost 进行本地开发。请部署到托管提供商进行测试。

1. 部署到托管提供商

推荐使用 Railway,也可以选择 Render 或任何提供以下条件的平台:

  • Node.js 18+ 运行时
  • PostgreSQL 数据库
  • HTTPS URL

Railway 设置步骤:

  1. 分叉/克隆此仓库。
  2. 创建一个新的 Railway 项目(您可以直接从分叉的 GitHub 仓库部署)。
  3. 在项目中添加一个 PostgreSQL 数据库服务。
  4. 将数据库 URL 连接到项目中已部署的仓库,并设置其他环境变量。

2. 创建 Fathom OAuth 应用

  1. 访问 Fathom 开发者门户
  2. 点击“注册您的应用”(需要 Fathom 管理员权限)。
  3. 将重定向 URI 设置为 https://your-app-url.railway.app/oauth/fathom/callback
  4. 记录您的客户端 ID 和客户端密钥。

3. 配置环境变量(本地和 Railway)

在托管提供商的仪表板中设置这些变量(以及本地的 .env 文件,以便在推送更改之前在本地测试构建和启动命令)。

| 变量 | 描述 | | ---- | ---- | | DATABASE_URL | PostgreSQL 连接字符串(由 Railway 自动设置 - 使用公共数据库 URL) | | BASE_URL | 您的应用的公共 URL(例如,https://your-app.railway.app) | | TOKEN_ENCRYPTION_KEY | 32 字节的十六进制密钥(使用 openssl rand -hex 32 生成) | | FATHOM_CLIENT_ID | 步骤 2 中获得的客户端 ID | | FATHOM_CLIENT_SECRET | 步骤 2 中获得的客户端密钥 |

4. 初始化数据库

首次部署后运行迁移:

npm run db:migrate

或者通过 Railway CLI 运行:

railway run npm run db:migrate

5. 连接 Claude

在 Claude 桌面版中添加您部署的 URL 作为自定义连接器:

https://your-app.railway.app/mcp

💻 使用示例

开发命令示例

npm run dev          # 启动开发服务器,仅用于测试,支持热重载
npm run build        # 为生产环境构建
npm run start        # 运行生产构建
npm run lint         # 检查代码风格错误
npm run lint:fix     # 修复代码风格错误
npm run typecheck    # 运行 TypeScript 类型检查
npm run ci           # 运行所有 CI 检查(代码风格检查、类型检查、构建)
npm run format       # 使用 Prettier 格式化代码
npm run db:studio    # 打开 Drizzle Studio 进行数据库检查
npm run db:generate  # 根据模式更改生成迁移文件
npm run db:migrate   # 运行待处理的迁移
npm run db:push      # 直接推送模式(仅用于开发)

💡 使用建议

在推送代码之前运行 npm run ci,以确保您的更改通过 GitHub Actions 检查。

📚 详细文档

测试版功能使用

对于预发布功能,请使用测试环境 URL:

https://fathom-mcp-staging.up.railway.app/mcp

Fathom AI 深入了解

更多信息请参考:https://developers.fathom.ai/llms.txt

贡献代码

开发设置和指南请参阅 CONTRIBUTING.md

版本发布

版本和发布说明请参阅 RELEASING.md

未来开发计划

  • 会议记录向量化 — 对大型会议记录进行向量化处理,使大语言模型能够更高效地解析和理解它们。将作为无状态工作进程实现,以确保不保留用户数据。
  • 行动项聚合 — 通过过滤器聚合会议中的行动项。例如,“显示我本周所有未完成的行动项”。
  • 会议分析 — 计算会议总时长、会议频率和主要参会者等统计信息。
  • 发言人时间分析 — 分析会议记录,显示会议中发言最多的人。
  • 会议比较 — 比较两个会议摘要,突出显示随时间的变化。
  • Fathom API 变更日志监控 — 通过 GitHub Action 自动检测 Fathom API 的更改,定期检查其 API 参考,若检测到更改则创建问题。

欢迎为实现这些目标做出贡献。详情请参阅 CONTRIBUTING.md

📄 许可证

本项目采用 MIT 许可证,详情请参阅 LICENSE

help

Runtime guide

cloud

Hosted runtime

Hosted servers run from a provider-managed environment. You usually connect the MCP client to the hosted endpoint or follow the provider's authorization flow, without keeping a local process alive

  1. Open provider connection page
  2. Authorize or copy endpoint
  3. Connect from your MCP client
terminal

Local runtime / other methods

Local servers run on your own machine or infrastructure. You normally copy the server_config into your MCP client, install the required package, and provide env variables from env_schema when needed

  1. Copy server_config
  2. Install required package
  3. Fill env variables and restart client