Fathom AI MCP Server

Fathom AI MCP Server

Enables Claude to access your Fathom meetings, transcripts, and AI summaries.

Category
访问服务器

README

It was fun while it lasted! Fathom now has an offical mcp: https://developers.fathom.ai/mcp-docs

However, I plan on adding very customizable tools to this mcp so it will be kept alive and expanded on once I have time or if anyone else contributes.

<div align="center">

Fathom AI MCP Server

Connect Claude to your Fathom meetings, transcripts, and AI summaries.

License: MIT Node.js MCP MCP Registry

Get Started | Available Tools | API Docs | Self-Hosting | Contributing

Security

</div>


Get Started

This server is published to the MCP Registry as io.github.agencyenterprise/fathom-mcp-server.

Claude Desktop (Streamable HTTP)

Connect in under 60 seconds:

https://www.fathom-mcp-server.com/mcp
  1. Open Claude Desktop
  2. Go to Settings > Connectors > Add Custom Connector
  3. Paste the URL above
  4. Authenticate with Fathom

That's it. Ask Claude about your meetings.

Organizations: Admins must add the connector via organization admin settings, not personal settings.

Perplexity Desktop and other SSE clients

For clients that use the legacy SSE transport (such as Perplexity Desktop for Mac), use the SSE endpoint:

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

Refer to your client's documentation for how to add a remote SSE connector.

Available Tools

Tool Description Docs
list_meetings List meetings with filters (date, team, recorder, etc.) Fathom API
search_meetings Search meetings by title, host, or attendee information MCP Custom
get_transcript Get full transcript for a recording Fathom API
get_summary Get AI-generated summary for a recording Fathom API
list_teams List all accessible teams Fathom API
list_team_members List members of a team Fathom API

Custom MCP Tools

search_meetings

Search Fathom meetings by title, meeting title, host name, host email, or attendee name/email. Automatically scans up to 5 pages of results. This is an MCP-native tool that performs client-side filtering since Fathom's API doesn't provide a search endpoint.

See the Fathom MCP Server documentation for full request and response parameters.

Example Usage in Claude

"Show me my meetings from last week"

"Get the transcript from my standup yesterday"

"Summarize my meeting with the design team"

Security

Your Fathom data is never stored or exposed by this server.

Data Stored? Exposed? Details
Meetings, transcripts, summaries No No Fetched from Fathom and passed directly to Claude
Team and member info No No Fetched from Fathom and passed directly to Claude
OAuth tokens Yes No Encrypted at rest (AES-256-GCM), never logged or exposed
  • Pass-through architecture: This server acts as a secure proxy, your Fathom data flows directly from Fathom to Claude without being stored, cached, or logged
  • Encryption at rest: The only stored data (OAuth tokens) is encrypted using AES-256-GCM before being written to the database
  • HTTPS only: All communication between Claude, this server, and Fathom is encrypted in transit

See our full Privacy Policy for details on data collection, usage, and your rights.

Permissions

This MCP server defines a custom scope called fathom:read for tokens it issues to Claude. This is not a Fathom API scope - it's specific to this MCP server to describe read-only access to your Fathom data.

The Fathom API itself only provides read access via its public_api scope. Write operations (creating/editing meetings, transcripts, etc.) are not available in the Fathom API.

Limitations

  • search_meetings performs client-side filtering since Fathom's API doesn't provide a search endpoint. For users with many meetings, use list_meetings with date filters instead.
  • You can always ask the LLM what query params are avaialable.

Self-Hosting

Fathom OAuth apps require HTTPS redirect URIs, so local development with http://localhost isn't possible. Deploy to a hosting provider to test.

1. Deploy to a Hosting Provider

Railway (recommended), Render, or any platform that provides:

  • Node.js 18+ runtime
  • PostgreSQL database
  • HTTPS URL

Railway setup:

  1. Fork/clone this repo
  2. Create a new Railway project (you can deploy directly from your forked Github repo)
  3. Add a PostgreSQL database service in project
  4. Connect Database url to deployed repo in project and setup other envs

2. Create a Fathom OAuth App

  1. Go to Fathom Developer Portal
  2. Click "Register your app" (requires Fathom admin access)
  3. Set the redirect URI to https://your-app-url.railway.app/oauth/fathom/callback
  4. Note your Client ID and Client Secret

3. Configure Environment Variables (locally and in Railway)

Set these in your hosting provider's dashboard (as well as your local .env file to test build and start commands locally before pushing changes)

Variable Description
DATABASE_URL PostgreSQL connection string (auto-set by Railway - use public db url)
BASE_URL Your app's public URL (e.g., https://your-app.railway.app)
TOKEN_ENCRYPTION_KEY 32-byte hex key (generate with openssl rand -hex 32)
FATHOM_CLIENT_ID From step 2
FATHOM_CLIENT_SECRET From step 2

4. Initialize Database

Run migrations after first deploy:

npm run db:migrate

Or via Railway CLI:

railway run npm run db:migrate

5. Connect Claude

Add your deployed URL as a custom connector in Claude Desktop:

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

For SSE clients (Perplexity Desktop, etc.):

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

Development

npm run dev          # Start dev server with hot reload only for testing
npm run build        # Build for production
npm run start        # Run production build
npm run lint         # Check for linting errors
npm run lint:fix     # Fix linting errors
npm run typecheck    # Run TypeScript type checking
npm run ci           # Run all CI checks (lint, typecheck, test, build)
npm run format       # Format code with Prettier
npm run db:studio    # Open Drizzle Studio for database inspection
npm run db:generate  # Generate migrations from schema changes
npm run db:migrate   # Run pending migrations
npm run db:push      # Push schema directly (dev only)

Tip: Run npm run ci before pushing to ensure your changes pass GitHub Actions.

Beta Testing

For pre-release features, use the staging URLs:

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

Fathom AI Deep dive

https://developers.fathom.ai/llms.txt

Contributing

See CONTRIBUTING.md for development setup and guidelines.

Releasing

See RELEASING.md for version and release instructions.

Future Development Plans

  • Transcript vectorization — Enable vectorization of large transcripts so LLMs can parse and understand them more efficiently. Would be implemented as a stateless worker to ensure no user data is persisted.
  • Action item aggregation — Aggregate action items across meetings with filters. "Show all my incomplete action items from this week."
  • Meeting analytics — Calculate stats like total meeting time, meeting frequency, and top attendees.
  • Speaker time analysis — Analyze transcripts to show who spoke most in a meeting.
  • Meeting comparison — Compare two meeting summaries to highlight what changed over time.
  • Fathom API changelog monitoring — Automated detection of Fathom API changes via GitHub Action that periodically checks their API reference and creates an issue if changes are detected.

Contributions toward these goals are welcome. See CONTRIBUTING.md.

License

MIT License - see LICENSE for details.

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选