Fathom MCP Server

io.github.agencyenterprisePublished by GitHub account agencyenterprisev1.0.0Updated Nov 2, 2026

Connect Claude to Fathom meeting recordings, transcripts, and summaries

The publisher's own server: Fathom

VerifiedStreamable HTTPWeb executableProductivity & WorkflowCommunication & Collaboration

Overview

AI-generated overview

Remote MCP server that connects an assistant to Fathom meeting recordings, transcripts and AI summaries through OAuth-authenticated read-only access.

What you can do
  • List and search meetings by date, team, recorder, title, host or attendee
  • Retrieve the full transcript of a recording
  • Retrieve the AI-generated summary of a recording
  • List accessible teams and their members
When to use it
Useful when you want an assistant to answer questions about your own Fathom-recorded meetings, such as pulling last week's meetings, fetching a standup transcript, or summarizing a call with a team.
Requirements
A remote endpoint (streamable HTTP, with a legacy SSE endpoint for older clients) and OAuth sign-in to Fathom. Organization admins must add the connector through organization admin settings. Self-hosting needs Node.js 18+, PostgreSQL, an HTTPS URL and a Fathom OAuth app with client credentials.
Before you install
The server stores OAuth tokens encrypted at rest and passes meeting data through to the assistant; it is a third-party proxy, not Fathom's official server, and the README points to an official Fathom MCP instead. Access is read-only via the Fathom public_api scope. Self-hosting requires secrets such as FATHOM_CLIENT_SECRET and TOKEN_ENCRYPTION_KEY.

Installation

In SourceWeft

  1. Open Fathom MCP Server in the dashboard and add it to a workspace.
  2. Connect the required credentials. They are stored privately and never shown on public pages.
  3. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.github.agencyenterprise%2Ffathom-mcp-server/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config. The client completes OAuth sign-in on first connect.

{
  "mcpServers": {
    "fathom": {
      "type": "http",
      "url": "https://fathom-mcp-server.com/mcp"
    }
  }
}

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.

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]


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

ToolDescriptionDocs
list_meetingsList meetings with filters (date, team, recorder, etc.)Fathom API
search_meetingsSearch meetings by title, host, or attendee informationMCP Custom
get_transcriptGet full transcript for a recordingFathom API
get_summaryGet AI-generated summary for a recordingFathom API
list_teamsList all accessible teamsFathom API
list_team_membersList members of a teamFathom 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.

DataStored?Exposed?Details
Meetings, transcripts, summariesNoNoFetched from Fathom and passed directly to Claude
Team and member infoNoNoFetched from Fathom and passed directly to Claude
OAuth tokensYesNoEncrypted 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)

VariableDescription
DATABASE_URLPostgreSQL connection string (auto-set by Railway - use public db url)
BASE_URLYour app's public URL (e.g., https://your-app.railway.app)
TOKEN_ENCRYPTION_KEY32-byte hex key (generate with openssl rand -hex 32)
FATHOM_CLIENT_IDFrom step 2
FATHOM_CLIENT_SECRETFrom step 2

4. Initialize Database

Run migrations after first deploy:

bash
npm run db:migrate

Or via Railway CLI:

bash
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

bash
npm run dev          # Start dev server with hot reload only for testingnpm run build        # Build for productionnpm run start        # Run production buildnpm run lint         # Check for linting errorsnpm run lint:fix     # Fix linting errorsnpm run typecheck    # Run TypeScript type checkingnpm run ci           # Run all CI checks (lint, typecheck, test, build)npm run format       # Format code with Prettiernpm run db:studio    # Open Drizzle Studio for database inspectionnpm run db:generate  # Generate migrations from schema changesnpm run db:migrate   # Run pending migrationsnpm 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.

Source: README.md at commit 305c9cb

Tools

0
This server asks you to sign in, so SourceWeft could not read its tools without an account and has not indexed them. What a connected account sees can depend on that account and its permissions.

Version history

1
  1. v1.0.0LatestSep 16, 2026

Score

85% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

Other Fathom integrations