Skip to main content
Glama

Fathom MCP Server

Fathom MCP Server

A Model Context Protocol (MCP) server that provides AI agents with access to Fathom AI meeting data, including transcripts, summaries, teams, and team members.

Features

This MCP server exposes 5 tools for interacting with Fathom AI:

  • fathom_list_meetings - List meetings with optional filters (date ranges, invitees, teams, etc.)

  • fathom_get_summary - Get meeting summary by recording ID

  • fathom_get_transcript - Get meeting transcript with speaker information and timestamps

  • fathom_list_teams - List all teams in the organization

  • fathom_list_team_members - List team members for a specific team

Architecture

  • Framework: Next.js 15 with App Router

  • MCP Adapter: mcp-handler (Vercel's official MCP adapter)

  • Transport: Supports both Streamable HTTP and Server-Sent Events (SSE)

  • Deployment: Vercel with automatic HTTPS and global CDN

  • Type Safety: Full TypeScript support with Zod validation

Quick Start

1. Clone and Install

git clone <your-repo-url> cd fathom-mcp-server npm install

2. Environment Setup

Copy the environment template and add your Fathom API key:

cp .env.example .env.local

Edit .env.local:

FATHOM_API_KEY=your_fathom_api_key_here

Get your API key from Fathom Settings.

3. Local Development

npm run dev

The MCP server will be available at http://localhost:3000/api/mcp

4. Deploy to Vercel

Deploy with Vercel

Or deploy manually:

npm install -g vercel vercel

Add your FATHOM_API_KEY environment variable in the Vercel dashboard.

Client Integration

OpenAI AgentKit

Connect directly to the HTTP endpoint with Bearer token authentication:

{ "mcpServers": { "fathom": { "url": "https://fathom-mcp.vercel.app/api/mcp", "auth": { "type": "bearer", "token": "YOUR_FATHOM_API_KEY" } } } }

Configuration Steps:

  1. Replace YOUR_FATHOM_API_KEY with your actual Fathom AI API key

  2. The API key is passed as a Bearer token in the Authorization header

  3. This keeps the API key client-side controlled and secure

Claude Desktop

Add to your claude_desktop_config.json:

{ "mcpServers": { "fathom": { "command": "npx", "args": [ "-y", "mcp-remote", "https://fathom-mcp.vercel.app/api/mcp" ] } } }

Config file locations:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

  • Windows: %APPDATA%\\Claude\\claude_desktop_config.json

Cursor

Add to your ~/.cursor/mcp.json:

{ "mcpServers": { "fathom": { "url": "https://your-app.vercel.app/api/mcp" } } }

Tool Usage Examples

List Recent Meetings

{ "name": "fathom_list_meetings", "arguments": { "created_after": "2024-01-01T00:00:00Z", "include_summary": true, "limit": 10 } }

Get Meeting Transcript

{ "name": "fathom_get_transcript", "arguments": { "recording_id": 123456789 } }

Filter Meetings by Team

{ "name": "fathom_list_meetings", "arguments": { "teams": ["Engineering", "Product"], "include_action_items": true } }

List Team Members

{ "name": "fathom_list_team_members", "arguments": { "team_id": "team_123" } }

API Reference

fathom_list_meetings

List meetings with optional filters.

Parameters:

  • calendar_invitees (string[]): Email addresses to filter by

  • calendar_invitees_domains (string[]): Company domains to filter by

  • calendar_invitees_domains_type (enum): Filter by external domains

  • created_after (string): ISO 8601 timestamp

  • created_before (string): ISO 8601 timestamp

  • include_transcript (boolean): Include transcript data

  • include_summary (boolean): Include summary data

  • include_action_items (boolean): Include action items

  • include_crm_matches (boolean): Include CRM matches

  • limit (number): Max results (1-100)

  • cursor (string): Pagination cursor

  • recorded_by (string[]): Filter by recorder emails

  • teams (string[]): Filter by team names

fathom_get_summary

Get meeting summary by recording ID.

Parameters:

  • recording_id (number): The recording ID

fathom_get_transcript

Get meeting transcript with speaker information.

Parameters:

  • recording_id (number): The recording ID

fathom_list_teams

List all teams in the organization.

Parameters:

  • cursor (string): Optional pagination cursor

fathom_list_team_members

List team members for a specific team.

Parameters:

  • team_id (string): The team ID

  • cursor (string): Optional pagination cursor

Error Handling

The server includes comprehensive error handling:

  • Missing API Key: Clear error message if FATHOM_API_KEY is not set

  • Fathom API Errors: Properly formatted error responses with status codes

  • Rate Limiting: Graceful handling of 429 responses

  • Input Validation: Zod schemas validate all tool inputs

  • Network Errors: Timeout and connection error handling

Security Considerations

  • HTTPS Only: Vercel provides automatic TLS certificates

  • CORS Headers: Configured for OpenAI's infrastructure

  • API Key Security: Stored in environment variables, never committed

  • Input Validation: All inputs validated with Zod schemas

  • Rate Limiting: Respects Fathom API rate limits

Development

Project Structure

├── app/ │ └── api/ │ └── [transport]/ │ └── route.ts # MCP route handler ├── lib/ │ └── fathom-client.ts # Fathom API client ├── .env.example # Environment template ├── vercel.json # Vercel configuration └── README.md # This file

Testing

Test the MCP server locally:

# Start the development server npm run dev # Test with curl curl -X POST http://localhost:3000/api/mcp \ -H "Content-Type: application/json" \ -d '{ "jsonrpc": "2.0", "id": 1, "method": "tools/list" }'

Type Checking

npm run type-check

Troubleshooting

Common Issues

  1. "FATHOM_API_KEY environment variable is required"

    • Ensure you've set the environment variable in .env.local (local) or Vercel dashboard (production)

  2. "Fathom API Error (401)"

    • Check that your API key is valid and has the correct permissions

  3. "Fathom API Error (429)"

    • You've hit Fathom's rate limit. Wait before making more requests

  4. CORS errors in browser

    • The server includes proper CORS headers. If issues persist, check your client configuration

Debug Mode

Enable verbose logging in development:

NODE_ENV=development npm run dev

Contributing

  1. Fork the repository

  2. Create a feature branch

  3. Make your changes

  4. Add tests if applicable

  5. Submit a pull request

License

MIT License - see LICENSE file for details.

Support

-
security - not tested
F
license - not found
-
quality - not tested

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Enables AI agents to access Fathom AI meeting data including transcripts, summaries, teams, and team members. Provides tools to list meetings with filters, retrieve detailed transcripts and summaries, and manage team information.

  1. Features
    1. Architecture
      1. Quick Start
        1. 1. Clone and Install
        2. 2. Environment Setup
        3. 3. Local Development
        4. 4. Deploy to Vercel
      2. Client Integration
        1. OpenAI AgentKit
        2. Claude Desktop
        3. Cursor
      3. Tool Usage Examples
        1. List Recent Meetings
        2. Get Meeting Transcript
        3. Filter Meetings by Team
        4. List Team Members
      4. API Reference
        1. fathom_list_meetings
        2. fathom_get_summary
        3. fathom_get_transcript
        4. fathom_list_teams
        5. fathom_list_team_members
      5. Error Handling
        1. Security Considerations
          1. Development
            1. Project Structure
            2. Testing
            3. Type Checking
          2. Troubleshooting
            1. Common Issues
            2. Debug Mode
          3. Contributing
            1. License
              1. Support

                MCP directory API

                We provide all the information about MCP servers via our MCP API.

                curl -X GET 'https://glama.ai/api/mcp/v1/servers/bondjacobbond/fathom-mcp'

                If you have feedback or need assistance with the MCP directory API, please join our Discord server