mcp-fathom-analytics
mackenly/mcp-fathom-analyticsUpdated 22 days ago01

Remote#Fathom Analytics#MCP#AI assistantLicense: MIT LicenseLanguage: TypeScript

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.

Fathom Analytics MCP server

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:

  1. Account API: https://api.usefathom.com/v1/account
  2. Sites API: https://api.usefathom.com/v1/sites
  3. Events API: https://api.usefathom.com/v1/sites/SITE_ID/events
  4. Aggregation API: https://api.usefathom.com/v1/aggregations
  5. Current Visitors API: https://api.usefathom.com/v1/current_visitors

Aggregation Examples

The aggregation tool is highly flexible. Here are some example use cases:

  1. 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"
}
  1. Performance of individual pages:
{
  "entity": "pageview",
  "entity_id": "SITE_ID",
  "aggregates": "pageviews,uniques,avg_duration",
  "field_grouping": "pathname",
  "sort_by": "pageviews:desc",
  "limit": 10
}
  1. 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.

Installation

Claude
Claude
Cursor
Cursor
Windsurf
Windsurf
Cline
Cline
Witsy
Witsy
Spin AI
Spin AI
Use the following variables when running the server locally:

MCPLink

Seamless access to top MCP servers powering the future of AI integration.

© 2025 MCPLink. All rights reserved.
discordgithubdiscord