Skip to main content

Analytics MCP server for AI agents. Connects to GA4, Mixpanel, PostHog, and more.

Project description

Engageable

The analytics engine for AI agents.

One MCP server that connects to Google Analytics 4, Mixpanel, PostHog, and more. 10 tools for trends, funnels, retention, anomaly detection, and natural language queries. Works with any MCP client.

Quickstart

# Recommended — no venv needed:
uvx engageable

# Or with pip:
pip install engageable
engageable-mcp

The MCP server starts on stdio. Connect it to Claude Desktop, Cursor, or any MCP client, then use the configure_source tool to connect your analytics platform interactively.

Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "engageable": {
      "command": "uvx",
      "args": ["engageable"]
    }
  }
}

Restart Claude Desktop. You'll see 10 analytics tools available. Ask it to connect your analytics source and it will walk you through setup.

Docker

docker compose up

Connects via SSE at http://localhost:8080/sse.

Tools

Tool What it does
get_sources List connected data sources
configure_source Connect a new data source interactively
website_discover Scan a website to detect installed analytics providers
analyze_trends Time-series analysis with trend detection, change points, anomalies
compare_segments A/B tests, before/after, segment breakdown with statistical significance
detect_anomalies Find spikes, drops, and unusual patterns
analyze_retention Cohort retention curves (D1/D7/D30)
analyze_funnel Multi-step conversion funnel with drop-off rates
analyze_cohort Define and compare user cohorts
ask Natural language analytics questions (routes to other tools via LLM)

Supported Data Sources

Source Auth method Environment variables
Google Analytics 4 Service account GA4_CREDENTIALS_JSON + GA4_PROPERTY_ID
Mixpanel Service account MIXPANEL_SERVICE_ACCOUNT_USERNAME + MIXPANEL_SERVICE_ACCOUNT_SECRET + MIXPANEL_PROJECT_ID
PostHog API key POSTHOG_API_KEY + POSTHOG_PROJECT_ID

You can set credentials as environment variables, or use the configure_source tool to save them interactively to ~/.engageable/credentials.json. See credentials.example.json for the file format.

How It Works

Engageable exposes analytics tools via the Model Context Protocol (MCP). Any MCP-compatible client (Claude, Cursor, VS Code, custom agents) can discover and call these tools.

Each tool is a self-contained pipeline: parse the request, fetch data from the right connector, run statistical analysis, return results. The ask tool adds an LLM routing layer for natural language questions.

Responses use CSV for tabular data (50% fewer tokens than JSON) with a 1000-cell budget to keep context windows manageable.

Architecture

MCP Client (Claude, Cursor, etc.)
    │
    ▼
┌─────────────────────────────────────┐
│  MCP Server (stdio or SSE)          │
│  - Dynamic tool registration        │
│  - Credential injection             │
│  - CSV response formatting          │
├─────────────────────────────────────┤
│  Composite Skills (agent-facing)    │
│  analyze_trends, compare_segments,  │
│  detect_anomalies, analyze_funnel,  │
│  analyze_retention, analyze_cohort, │
│  ask, get_sources, configure_source │
├─────────────────────────────────────┤
│  Connector Skills (internal)        │  Analysis Skills (internal)
│  ga4_query, mixpanel_query,         │  trend_detection, significance,
│  posthog_query + metadata/probe     │  cohort_retention, forecasting,
│                                     │  bayesian_ab, correlation, ...
└─────────────────────────────────────┘

Hosted Version

Don't want to manage credentials yourself? engageable.tech handles OAuth, credential storage, scheduling, and delivery — connect your analytics with one click.

License

MIT — see LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

engageable-0.5.0.tar.gz (154.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

engageable-0.5.0-py3-none-any.whl (82.9 kB view details)

Uploaded Python 3

File details

Details for the file engageable-0.5.0.tar.gz.

File metadata

  • Download URL: engageable-0.5.0.tar.gz
  • Upload date:
  • Size: 154.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for engageable-0.5.0.tar.gz
Algorithm Hash digest
SHA256 82f5e61d68083f233c13624770c934c8355105be3d693c75b526f09f0d8ea83b
MD5 b6a03fb88cc548f73eea1bd2431d227a
BLAKE2b-256 3902f4960c4e8dc36cc8b154e9e8660574eac8ab6c139056a6c6c0e61d490c9d

See more details on using hashes here.

File details

Details for the file engageable-0.5.0-py3-none-any.whl.

File metadata

  • Download URL: engageable-0.5.0-py3-none-any.whl
  • Upload date:
  • Size: 82.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for engageable-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a1de25110f4adbcb6f8653d6c79aa2d427a3923cf37d16930400e39c8396adb1
MD5 67e974a82e9d7c01ed9652da6858dbca
BLAKE2b-256 8d3a3cd39364d4abf1b512975f6fd9542fc388c8ae067e8e266cb949b52d1954

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page