Fathom MCP server
23 operations0 webhooks
Privacy-focused web analytics platform for tracking visitors, sites, milestones, and custom aggregation reports.
Try Fathom with your agent
Connect Fathom, then paste this into Claude, ChatGPT or Cursor. For ideas from other apps, see the use cases.
Using Corsair, show me what you can do in Fathom on my account, then run one read-only example and show me the result.
Fathom tools and triggers
Tools are what your agent can do in Fathom through Corsair's MCP server. Triggers are the Fathom events a routine can start from.
Events
- CreateWrite
Create an event (deprecated: returns 410 Gone; track directly on site)
events.create
- DeleteDestructive
Delete an event by ID (deprecated: returns 410 Gone)
events.delete
- Delete By NameWrite
Remove an event's currency setting by name (the event and its completions stay; set it again with events.setCurrency)
events.deleteByName
- GetRead-only
Retrieve a single event by ID (deprecated: returns 410 Gone)
events.get
- ListRead-only
List all events tracked by a site with pagination
events.list
- Set CurrencyWrite
Set or update the currency for an event by name
events.setCurrency
- UpdateWrite
Update an event by ID (deprecated: returns 410 Gone)
events.update
- WipeDestructive
Wipe event completion data (deprecated: returns 410 Gone)
events.wipe
Sites
- CreateWrite
Create a new site entity in Fathom Analytics
sites.create
- DeleteDestructive
Permanently delete a site and all associated analytics data
sites.delete
- GetRead-only
Retrieve details of a single site by its ID
sites.get
- ListRead-only
List all sites owned by the account with pagination
sites.list
- UpdateWrite
Update site settings such as name, sharing, or timezone
sites.update
- WipeDestructive
Wipe all data from a site (deprecated: returns 410 Gone)
sites.wipe
Milestones
- CreateWrite
Create a new milestone for a site
milestones.create
- DeleteDestructive
Permanently delete a milestone from a site
milestones.delete
- GetRead-only
Retrieve a single milestone by its ID
milestones.get
- ListRead-only
List all milestones for a site with pagination
milestones.list
- UpdateWrite
Update a milestone name or date by its ID
milestones.update
Account
- GetRead-only
Retrieve information about the account that owns the API key
account.get
- Get TokenRead-only
Retrieve metadata about the API token used to make the request
account.getToken
Reports
- AggregationRead-only
Generate custom aggregation reports across pageviews or events
reports.aggregation
- Current VisitorsRead-only
Get real-time current visitor count and optional page/referrer breakdown
reports.currentVisitors
Connect Fathom to Claude, ChatGPT or Cursor
- 1
Connect Fathom in Corsair
Add your Fathom API key once in Corsair. Corsair stores the credential encrypted and makes the Fathom API calls for your agent, so it never goes into a prompt or a config file. Connect Fathom
If your link lets the agent add apps, you can skip this: it gives you a sign-in link the first time it needs Fathom. On a ChatGPT personal plan, connect Fathom here first.
- 2
Add Corsair's MCP server to your agent
Every client uses the same address:
https://mcp.corsair.dev/mcpOpen Customize → Connectors → Add custom connector, paste the address, then select Connect.Add a custom MCP server with the address and choose OAuth. Personal plans get read tools only.Add to CursorOr add this to~/.cursor/mcp.json. Cursor opens Corsair to sign in the first time it connects.{ "mcpServers": { "corsair": { "url": "https://mcp.corsair.dev/mcp" } } }Run this, then run/mcpin Claude Code to sign in.claude mcp add --transport http corsair https://mcp.corsair.dev/mcpCodex, Gemini CLI, VS Code, Zed and other clients with OAuth sign-in work the same way. Clients without it, such as GitHub Copilot's coding agent, use a link's own address and an API key. Setup for every client
- 3
Sign in and choose what needs your approval
Your client opens Corsair to sign in. Pick a link: the apps your agent can use and a mode that decides what it may do without asking. In the default Cautious mode, Fathom's read and write operations run right away and its 5 destructive operations wait for your approval. Strict mode asks before every write and refuses destructive operations, and Read mode allows reads only.
FAQ
Install corsair and @corsair-dev/fathom, add the Fathom plugin, and connect with an API key. Then call methods like corsair.fathom.api.account.get() from your app. Corsair keeps each tenant isolated.
Yes. Fathom requires an API key from your Fathom account or developer dashboard. Create credentials with access that matches what you automate, then paste them into Corsair or connect through managed auth in Hub.
Yes. One Corsair client can hit Fathom, GitHub, Notion, Stripe, and the rest. Trigger Fathom from a webhook, push updates to Slack, or chain actions across plugins. Same tenant context across integrations, plain TypeScript.
Teams use Corsair for privacy-focused web analytics platform for tracking visitors, sites, milestones, and custom aggregation reports. Common builds include sync jobs, admin tooling, and agents that call Fathom APIs from your backend.
The SDK is open source. Self-host and you pay Corsair nothing for the integration layer. Hub bills for hosted auth and execution, not per Fathom API call. Hub has a generous free tier. For hobby projects you can probably run the whole thing on free. Paid plans start to matter with more tenants or heavier traffic.
We maintain @corsair-dev/fathom in the open repo. When Fathom ships API changes, upgrade the package. Your call sites stay typed. You should not need to rewrite the integration layer each time.
No. Corsair does not read your Fathom data or hold individual access credentials. Credentials stay in your database. API calls run on your instance. We do not store Fathom data on your behalf.
Yes. Add https://mcp.corsair.dev/mcp as a custom connector or MCP server in Claude, ChatGPT, Cursor, VS Code, Claude Code, Codex or any client that supports remote MCP servers with OAuth sign-in, then sign in to Corsair. On ChatGPT personal plans, custom servers currently get read tools only.
Yes. Put Fathom on a link in Strict mode and every write waits for your approval, while destructive actions are refused. The default Cautious mode asks only before the 5 destructive Fathom operations. You can change a link's mode at hub.corsair.dev/me.