Fathom MCP connector
OAuth 2.1/DCRAITranscriptionCommunicationProductivityConnect to Fathom MCP to access AI meeting notes, summaries, transcripts, and recordings from your AI workflows.
Fathom MCP connector
-
Install the SDK
Section titled “Install the SDK”Terminal window npm install @scalekit-sdk/nodeTerminal window pip install scalekit -
Set your credentials
Section titled “Set your credentials”Add your Scalekit credentials to your
.envfile. Find values in app.scalekit.com > Developers > API Credentials..env SCALEKIT_ENVIRONMENT_URL=<your-environment-url>SCALEKIT_CLIENT_ID=<your-client-id>SCALEKIT_CLIENT_SECRET=<your-client-secret> -
Authorize and make your first call
Section titled “Authorize and make your first call”quickstart.ts import { ScalekitClient } from '@scalekit-sdk/node'import 'dotenv/config'const scalekit = new ScalekitClient(process.env.SCALEKIT_ENV_URL,process.env.SCALEKIT_CLIENT_ID,process.env.SCALEKIT_CLIENT_SECRET,)const actions = scalekit.actionsconst connector = 'fathommcp'const identifier = 'user_123'// Generate an authorization link for the userconst { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })console.log('Authorize Fathom MCP:', link)process.stdout.write('Press Enter after authorizing...')await new Promise(r => process.stdin.once('data', r))// Make your first callconst result = await actions.executeTool({connector,identifier,toolName: 'fathommcp_get_identity',toolInput: {},})console.log(result)quickstart.py import osfrom scalekit.client import ScalekitClientfrom dotenv import load_dotenvload_dotenv()scalekit_client = ScalekitClient(env_url=os.getenv("SCALEKIT_ENV_URL"),client_id=os.getenv("SCALEKIT_CLIENT_ID"),client_secret=os.getenv("SCALEKIT_CLIENT_SECRET"),)actions = scalekit_client.actionsconnection_name = "fathommcp"identifier = "user_123"# Generate an authorization link for the userlink_response = actions.get_authorization_link(connection_name=connection_name,identifier=identifier,)print("Authorize Fathom MCP:", link_response.link)input("Press Enter after authorizing...")# Make your first callresult = actions.execute_tool(tool_input={},tool_name="fathommcp_get_identity",connection_name=connection_name,identifier=identifier,)print(result)
What you can do
Section titled “What you can do”Connect this agent connector to let your agent:
- Search meetings — Search meeting summaries and titles by topic or keyword
- List teams and meetings — List all Fathom teams the current user belongs to and their meetings
- Get recording transcript — Retrieve the full transcript for a meeting by its recording ID or URL
- Find person — Find a person by name across meeting speakers and return contact info and meeting summaries
Tool list
Section titled “Tool list”Use the exact tool names from the Tool list below when you call execute_tool. If you’re not sure which name to use, list the tools available for the current user first.
fathommcp_find_person#Find a person by name across meeting speakers, then return contact info and compact summaries for matched meetings. Searches the speaker index directly. Use recorded_by = user email for own recordings, "anyone" for org-wide lookups.3 params
Find a person by name across meeting speakers, then return contact info and compact summaries for matched meetings. Searches the speaker index directly. Use recorded_by = user email for own recordings, "anyone" for org-wide lookups.
namestringrequiredThe person's name to search for.recorded_bystringrequiredFilter by recorder. Use the authenticated user's email for own recordings or 'anyone' for org-wide search.created_afterstringoptionalISO 8601 date string. Only search meetings created after this date.fathommcp_get_identity#Returns the authenticated user's name and email address. Call this once per session to determine who the authenticated user is. The email is needed only for queries explicitly scoped to the user's own recordings (recorded_by filter), not for every tool call.0 params
Returns the authenticated user's name and email address. Call this once per session to determine who the authenticated user is. The email is needed only for queries explicitly scoped to the user's own recordings (recorded_by filter), not for every tool call.
fathommcp_get_meeting_summary#Returns the AI summary of a specific Fathom meeting. Required: recording_id (from list_meetings). When presenting, cite with a working link using the meeting url field.1 param
Returns the AI summary of a specific Fathom meeting. Required: recording_id (from list_meetings). When presenting, cite with a working link using the meeting url field.
recording_idintegerrequiredThe recording ID from list_meetings.fathommcp_get_meeting_transcript#Returns the full transcript of a specific Fathom meeting. Required: recording_id (from list_meetings). Pass url to get timestamped deep links. Fetch at most 3 transcripts per query — they are large.2 params
Returns the full transcript of a specific Fathom meeting. Required: recording_id (from list_meetings). Pass url to get timestamped deep links. Fetch at most 3 transcripts per query — they are large.
recording_idintegerrequiredThe recording ID from list_meetings.urlstringoptionalThe meeting URL from list_meetings for timestamped deep links.fathommcp_get_recording_by_call_id#Resolve a Fathom call ID to a recording_id plus title, date, and url. Use when the user pastes or types a numeric call ID. Pass the returned recording_id to get_meeting_summary, get_meeting_transcript, etc.1 param
Resolve a Fathom call ID to a recording_id plus title, date, and url. Use when the user pastes or types a numeric call ID. Pass the returned recording_id to get_meeting_summary, get_meeting_transcript, etc.
call_idintegerrequiredThe numeric Fathom call ID.fathommcp_get_recording_by_url#Resolve a Fathom URL to a recording_id plus title, date, and url. Accepts direct call URLs (/calls/:id) and share links. Use when the user pastes any Fathom link.1 param
Resolve a Fathom URL to a recording_id plus title, date, and url. Accepts direct call URLs (/calls/:id) and share links. Use when the user pastes any Fathom link.
urlstringrequiredA Fathom call URL or share link.fathommcp_list_meetings#List Fathom meetings with filters. Returns recording_id, title, url, recorded_by, calendar_invitees. For team queries call list_teams first. Does NOT scan meeting content — for finding meetings with a specific person use find_person, for topic searches use search_meetings.8 params
List Fathom meetings with filters. Returns recording_id, title, url, recorded_by, calendar_invitees. For team queries call list_teams first. Does NOT scan meeting content — for finding meetings with a specific person use find_person, for topic searches use search_meetings.
created_afterstringoptionalISO 8601 date string. Only return meetings created after this date.created_beforestringoptionalISO 8601 date string. Only return meetings created before this date.cursorstringoptionalPagination cursor from a previous response.include_action_itemsbooleanoptionalInclude action items in results.include_summarybooleanoptionalInclude AI summary in results.max_pagesintegeroptionalMaximum number of pages to fetch.recorded_byarrayoptionalFilter by recorder email addresses.teamsarrayoptionalFilter by team names (use list_teams to get valid names).fathommcp_list_teams#List all Fathom teams the current user belongs to. Returns team names. Use the returned names for the teams filter in list_meetings. Call list_teams first if you need team names — do not guess them.0 params
List all Fathom teams the current user belongs to. Returns team names. Use the returned names for the teams filter in list_meetings. Call list_teams first if you need team names — do not guess them.
fathommcp_search_meetings#Search meeting summaries and titles by topic or keyword (AND logic). Use for finding specific topics, discussions, ideas, or decisions. Use recorded_by = user email for own recordings, "anyone" for org-wide searches.4 params
Search meeting summaries and titles by topic or keyword (AND logic). Use for finding specific topics, discussions, ideas, or decisions. Use recorded_by = user email for own recordings, "anyone" for org-wide searches.
querystringrequiredSearch query. Multiple words use AND logic.recorded_bystringrequiredFilter by recorder. Use the authenticated user's email for own recordings or 'anyone' for org-wide search.created_afterstringoptionalISO 8601 date string. Only search meetings created after this date.max_pagesintegeroptionalMaximum number of pages to fetch.