Fathom Analytics MCP by usefulapi

io.usefulapi/fathom-analytics

Query Fathom Analytics sites, stats, current visitors and events, and manage sites and events.

Yes, your AI can use this right now.Answered a live MCP handshake in 259 ms with no sign-in needed and exposes 16 tools.

Connect it

Settings → Connectors → Add custom connector
URL: https://fathom-analytics.usefulapi.io/mcp

16 tools, verified live

Pulled straight from the server with tools/list on 2026-10-18.
fathom_get_tokenread-only

The connected API token's name, permissions (abilities: "*" = Admin, "all-sites-readonly", or per-site read:<id> / manage:<id>) and timestamps. The secret value is never returned. Good first call to know which tools will work. GET /token.

fathom_get_accountread-only

The Fathom account that owns the API token: id, name and email. Needs an Admin token (the * scope). GET /account.

fathom_list_sitesread-only

List the sites the token can read (id, name, sharing, timezone, created_at), oldest first. The site id is what every report tool takes. Needs an Admin or all-sites read-only token; a token scoped to a single site cannot list sites, so use fathom_get_site with that site id instead. Paged: pass next.starting_after. GET /sites.

fathom_get_siteread-only

One site: id, name, sharing (none/private/public), timezone and created_at. GET /sites/{site_id}.

fathom_list_eventsread-only

List a site's events (conversions/goals): every event name the site has tracked plus events with a currency set, sorted by name. Identify events by name (use it as event_name in fathom_get_aggregation); the id is only a paging cursor. Paged: pass next.starting_after. GET /sites/{site_id}/events.

fathom_list_milestonesread-only

List a site's milestones (dated annotations on reports, such as a redesign launch or a campaign start), oldest first. Paged: pass next.starting_after. GET /sites/{site_id}/milestones.

fathom_get_milestoneread-only

One milestone: id, name, milestone_date, created_at, updated_at. GET /sites/{site_id}/milestones/{milestone_id}.

fathom_get_aggregationread-only

Fathom's custom report (the dashboard's numbers): aggregate pageviews or one event over a date range, optionally grouped by date and/or fields and filtered. Pageviews: aggregates visits (unique site visits), uniques (unique page visits), pageviews, avg_duration (seconds), bounce_rate. Events (entity event + event_name): conversions, unique_conversions, value (in cents). Examples: top pages = field

fathom_get_current_visitorsread-only

Live visitors on a site right now: the total, and with detailed true the top 150 pages (hostname, pathname, total) and top 150 referrers. GET /current_visitors.

fathom_create_site

Create a new site in the Fathom account (returns its id, used in the tracking code). Needs an Admin token. Sharing private needs share_password; multi_domain true needs multi_domain_option. POST /sites.

fathom_update_sitecan modify

Change a site's name, sharing, timezone or multi-domain setting (send only what changes). Changing the timezone changes how reports are bucketed. Needs a manage token for the site. POST /sites/{site_id}.

fathom_set_event_currencycan modify

Set the currency of an event's value by event name (works before the event is first tracked). Needs a manage token for the site. POST /sites/{site_id}/events/currency.

fathom_clear_event_currencycan modify

Remove the currency set for an event, so it uses the site's default again. The event and its completion data stay. Needs a manage token for the site. DELETE /sites/{site_id}/events?name=.

fathom_create_milestone

Add a milestone (a dated annotation shown on the site's reports, e.g. a launch or campaign start). Needs a manage token for the site. POST /sites/{site_id}/milestones.

fathom_update_milestonecan modify

Rename or re-date a milestone (both name and milestone_date are required). Needs a manage token for the site. POST /sites/{site_id}/milestones/{milestone_id}.

fathom_delete_milestonecan modify

Permanently delete a milestone (only the annotation; traffic data is not touched). Cannot be undone. Needs a manage token for the site. DELETE /sites/{site_id}/milestones/{milestone_id}.

Alternatives in Databases & Data

Compare →
Try “Notion”, “Stripe”, “create invoice”, “browser”