HitKeep
HitKeep is a privacy-first web analytics platform. This read-only MCP server allows AI assistants to query analytics, AI visibility, ecommerce, and documentation data. Key capabilities include:
Site Traffic Overview: Aggregate KPIs (pageviews, sessions, bounce rate, session duration), top pages, referrers, devices, countries, UTM attribution, goals, and chart data with optional date comparison.
AI Visibility Analytics: Track AI crawler fetches, top assistants/paths, error rates, response times, and fetch-to-visit correlation.
Ecommerce Analytics: Revenue KPIs, order counts, average order value, checkout conversion rates, top products, and revenue by source/UTM/referrer.
Web Vitals: Core Web Vitals (LCP, INP, CLS, FCP, TTFB) scores with page or visitor-context breakdowns.
Custom Events: List event names and read breakdowns for specific event properties.
Google Search Console: Clicks, impressions, CTR, and average position by queries, pages, country, and device.
Opportunities: AI-generated, localized analytics recommendations with impact scores and confidence levels.
Documentation & API Reference: Search docs, retrieve documentation pages, API references, and MCP usage guides as markdown.
Site Management: List all accessible sites and retrieve live visitor counts.
Import Google Search Console aggregate data for query, page, country, and device reporting.
Integration for adding HitKeep analytics tracking to WordPress sites.
HitKeep
Privacy-first web analytics with conversion reporting, AI visibility, and optional Ask AI, self-hosted or in EU/US cloud.
HitKeep is open source web analytics for teams that want useful product reporting, conversion analytics, and AI-era search visibility without running PostgreSQL, Redis, ClickHouse, or a separate queue. It ships as a single Go binary with an embedded Angular dashboard, DuckDB storage, and in-process NSQ queueing.
Website · Live Demo · Docs · Cloud · AI Performance · API · Releases

Why HitKeep
Low-ops self-hosting: one binary, one data directory, embedded DuckDB and NSQ — no external services to run
Useful reports: multi-site Overview, top pages, landing and exit pages, events, goals, funnels, ecommerce, UTM attribution, QR campaigns, Web Vitals, email reports, and Google Search Console aggregates
Privacy defaults: cookie-less tracking, Do Not Track support, and focused data collection
AI visibility: server-side crawler fetch analytics, AI-referred visits, on-site chatbot outcomes, and correlation reports
Ask AI: optional dashboard assistant that answers site-scoped aggregate questions with citations, small charts, and safe dashboard actions
Team controls: passkeys, TOTP, site and team permissions, share links, audit logs, scoped API clients, and a read-only MCP analytics server
Deployment choice: run it yourself or use managed cloud in the EU or US
Related MCP server: Google Search Console Audit MCP
Quick Start
Docker
Save this as compose.yml:
services:
hitkeep:
image: pascalebeier/hitkeep:latest
restart: unless-stopped
ports:
- "8080:8080"
volumes:
- hitkeep_data:/var/lib/hitkeep/data
environment:
# any flag can also be set as an environment variable
HITKEEP_JWT_SECRET: replace-this-with-a-long-random-string
command:
- "-public-url=http://localhost:8080"
volumes:
hitkeep_data: {}Then start it:
docker compose up -dOpen http://localhost:8080 and create your first account. More compose examples — including Caddy, nginx, and Traefik setups — live in examples/.
Binary
Download the latest release for your platform (hitkeep-linux-amd64 or hitkeep-linux-arm64) and run it:
curl -LO https://github.com/PascaleBeier/hitkeep/releases/latest/download/hitkeep-linux-amd64
chmod +x hitkeep-linux-amd64
export HITKEEP_JWT_SECRET="$(openssl rand -hex 32)" # keep this stable across restarts
./hitkeep-linux-amd64 -public-url="http://localhost:8080"Open http://localhost:8080 and create your first account.
Going to production
For reverse proxies, SMTP, systemd, Kubernetes, S3 archiving, and every configuration flag, use the docs instead of this README:
Track Your Site
Create a site in the dashboard, then add the tracker to your pages:
<script async src="https://your-hitkeep-instance.com/hk.js"></script>Send a custom event:
<script>
window.hk = window.hk || {};
window.hk.event?.("signup", { plan: "pro", source: "landing-page" });
</script>Teams can also serve the tracker from their own verified domains, for example https://analytics.example.com/hk.js, via Team Settings → Tracking domains. DNS verification, TLS options, and ready-made Caddy, nginx, Traefik, and Helm configurations are covered in the custom tracking domains guide and examples/.
More tracking guides:
Product Tour
Dashboard

Ecommerce

Search Console

AI Visibility

Ask AI

MCP Access

Documentation
The maintained reference lives on hitkeep.com.
Cloud
If you want the same product without running it yourself, start here:
Development
The repository-owned developer CLI provides a small default development workflow, with isolated worktrees, cloud-parity builds, and the same QA contract available when needed.
The checked-in ./hk file is a POSIX launcher, not a compiled binary. It builds the current worktree's developer CLI into a content-addressed host cache; developer CLI binaries are neither committed nor attached to HitKeep releases.
Start with:
./hk setup
./hk dev --seed./hk dev runs the workspace's Compose stack in the foreground, prints URLs, and streams component logs; Ctrl+C stops the complete stack. Use ./hk dev --detach for an explicit background session, ./hk dev logs to follow it, ./hk dev restart to preserve data while restarting, ./hk dev stop to stop it, and ./hk dev reset --seed for a fresh seeded data volume. Add --variant cloud for local managed-cloud parity. Concurrent Git worktrees remain isolated automatically.
Run ./hk help for human guidance, ./hk catalog commands --output json for the complete machine-readable command surface, ./hk doctor for prerequisites, and ./hk qa pr before review. hk is the sole supported developer workflow entry point.
Contributor docs and local development guides:
License
Distributed under the MIT License. See LICENSE.
Maintenance
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/PascaleBeier/hitkeep'
If you have feedback or need assistance with the MCP directory API, please join our Discord server