Fathom Analytics
Access and analyze Fathom Analytics data and reports
MCP Fathom Analytics
An unofficial Model Context Protocol (MCP) server for accessing Fathom Analytics data through an AI assistant. This implementation uses the @mackenly/fathom-api unofficial SDK to interact with the Fathom Analytics API. Not affiliated, endorsed, or supported by Fathom Analytics. Published to npm as an npx script.
Features
The MCP server provides the following Fathom Analytics tools:
Account Information
get-account: Retrieve details about your Fathom Analytics account
Sites Management
list-sites: List all your Fathom Analytics sites
Events
list-events: List events for a specific site
Analytics
get-aggregation: Generate aggregated analytics reports with flexible filtering and grouping options
Visitor Tracking
get-current-visitors: Get real-time data about current site visitors
Usage
If you're using Claude Desktop, you can add the MCP server using the json config (more info). Here's an example:
{
"mcpServers": {
"fathom-analytics": {
"command": "npx",
"args": [
"-y",
"mcp-fathom-analytics"
],
"env": {
"FATHOM_API_KEY": "your_api_key_here"
}
}
}
}
You can find more information about other MCP Clients here: Model Context Protocol Example Clients
API Structure
The MCP server uses the @mackenly/fathom-api SDK to interface with the Fathom Analytics API endpoints:
- Account API:
https://api.usefathom.com/v1/account - Sites API:
https://api.usefathom.com/v1/sites - Events API:
https://api.usefathom.com/v1/sites/SITE_ID/events - Aggregation API:
https://api.usefathom.com/v1/aggregations - Current Visitors API:
https://api.usefathom.com/v1/current_visitors
Aggregation Examples
The aggregation tool is highly flexible. Here are some example use cases:
- Daily pageview statistics for the last 30 days:
{
"entity": "pageview",
"entity_id": "SITE_ID",
"aggregates": "pageviews,uniques,visits",
"date_grouping": "day",
"date_from": "2023-08-01 00:00:00"
}
- Performance of individual pages:
{
"entity": "pageview",
"entity_id": "SITE_ID",
"aggregates": "pageviews,uniques,avg_duration",
"field_grouping": "pathname",
"sort_by": "pageviews:desc",
"limit": 10
}
- Traffic from specific countries:
{
"entity": "pageview",
"entity_id": "SITE_ID",
"aggregates": "visits",
"field_grouping": "country_code",
"sort_by": "visits:desc"
}
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
License
This project is licensed under the MIT License - see the LICENSE file for details.
Related Servers
Anytype MCP Server
Interact with the Anytype API using natural language.
Live2D MCP
A simple note storage system with a custom note:// URI scheme, featuring tools to add and summarize notes.
Google Calendar
Create and manage Google Calendar events with AI assistants.
PPT-Agent
Create, edit, and manage PowerPoint presentations using large language models.
Confluence
Interact with the Confluence API to manage spaces, pages, and content. Supports searching, creating, and updating pages.
Amazing Marvin AI Assistant
Connect your Amazing Marvin productivity system with AI assistants for smarter task management.
MCP MD2PDF Server
Convert Markdown documents to PDF with support for Mermaid diagrams.
Deckbuilder
Generate intelligent PowerPoint presentations using a content-first design philosophy.
n8n MCP Server
Provides workflow validation and best practices tools for the n8n automation platform.
iTerm MCP
Provides access to your iTerm session, requiring iTerm2 and Node.js.