Provides access to Fathom AI meeting data including transcripts with speaker information and timestamps, meeting summaries, team management, and meeting filtering capabilities with support for date ranges, invitees, and team-based organization.
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 IDfathom_get_transcript
- Get meeting transcript with speaker information and timestampsfathom_list_teams
- List all teams in the organizationfathom_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
2. Environment Setup
Copy the environment template and add your Fathom API key:
Edit .env.local
:
Get your API key from Fathom Settings.
3. Local Development
The MCP server will be available at http://localhost:3000/api/mcp
4. Deploy to Vercel
Or deploy manually:
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:
Configuration Steps:
Replace
YOUR_FATHOM_API_KEY
with your actual Fathom AI API keyThe API key is passed as a Bearer token in the Authorization header
This keeps the API key client-side controlled and secure
Claude Desktop
Add to your claude_desktop_config.json
:
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
:
Tool Usage Examples
List Recent Meetings
Get Meeting Transcript
Filter Meetings by Team
List Team Members
API Reference
fathom_list_meetings
List meetings with optional filters.
Parameters:
calendar_invitees
(string[]): Email addresses to filter bycalendar_invitees_domains
(string[]): Company domains to filter bycalendar_invitees_domains_type
(enum): Filter by external domainscreated_after
(string): ISO 8601 timestampcreated_before
(string): ISO 8601 timestampinclude_transcript
(boolean): Include transcript datainclude_summary
(boolean): Include summary datainclude_action_items
(boolean): Include action itemsinclude_crm_matches
(boolean): Include CRM matcheslimit
(number): Max results (1-100)cursor
(string): Pagination cursorrecorded_by
(string[]): Filter by recorder emailsteams
(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 IDcursor
(string): Optional pagination cursor
Error Handling
The server includes comprehensive error handling:
Missing API Key: Clear error message if
FATHOM_API_KEY
is not setFathom 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
Testing
Test the MCP server locally:
Type Checking
Troubleshooting
Common Issues
"FATHOM_API_KEY environment variable is required"
Ensure you've set the environment variable in
.env.local
(local) or Vercel dashboard (production)
"Fathom API Error (401)"
Check that your API key is valid and has the correct permissions
"Fathom API Error (429)"
You've hit Fathom's rate limit. Wait before making more requests
CORS errors in browser
The server includes proper CORS headers. If issues persist, check your client configuration
Debug Mode
Enable verbose logging in development:
Contributing
Fork the repository
Create a feature branch
Make your changes
Add tests if applicable
Submit a pull request
License
MIT License - see LICENSE file for details.
Support
Fathom API Documentation: developers.fathom.ai
MCP Specification: modelcontextprotocol.io
Issues: Create an issue in this repository
This server cannot be installed
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.