Lodd analytics
Lodd.dev is headless web analytics for AI agents.
What it can do
- List Sites: List all websites you have access to with their domains and IDs
- Create Site: Register a new website for analytics tracking. Returns the site ID, tracking secret, and the script tag to embed.
- Exclude My Ip: Exclude an IP address from analytics tracking for a site. Prevents the user's own visits from appearing in the data. In Claude Code, detect the IP with `curl -s api.ipify.org` first. In
What data it sees
Do you need an account
No: the server works without sign-in
Lodd.dev is headless web analytics for AI agents. 42 tools covering traffic, events, funnels, conversions, actor analytics, annotations, and trackable links. Free up to 2,500 events/mo. Get started at lodd.dev
How to connect
How to connect Lodd analytics to Claude
The server address to paste into Claude settings:
https://analytics--lodd.run.tools
- Open Claude (claude.ai or the desktop app).
- Go to Settings → Connectors.
- Click Add custom connector.
- Paste the server address copied below into Remote MCP server URL and click Add.
- In a chat, click + → Connectors and switch the new connector on.
Custom connectors are available on Free, Pro, Max, Team and Enterprise plans (Free is limited to one). On Team and Enterprise an organization Owner adds the connector first under Organization settings → Connectors.
Authorization
After you click Add, a sign-in window for the service opens. Sign in with your own account and approve access. Claude never sees your password.
How to connect Lodd analytics to ChatGPT
The server address to paste into ChatGPT settings:
https://analytics--lodd.run.tools
- Open ChatGPT in a browser (chatgpt.com). A Plus, Pro, Business, Enterprise or Edu plan is required.
- Turn on developer mode once: Settings → Apps → Advanced settings → Developer mode.
- Open Settings → Connectors and click Create.
- Fill in the form: Name (anything), Description (one line about what the service does), MCP server URL (copy it below).
- Under Authentication choose OAuth if the service requires sign-in, otherwise None. Click Create.
- In a new chat open + → Apps/Connectors and enable the connector.
OpenAI has renamed this section before (Connectors → Apps/Plugins). If the label differs, search settings for "developer mode". On Business/Enterprise workspaces an admin must allow custom connectors first.
Authorization
On first use ChatGPT opens the service's sign-in window. Sign in and approve access.
How to connect Lodd analytics to Cursor
The server address to paste into Cursor settings:
https://analytics--lodd.run.tools
Fastest: click Open in Cursor below and confirm the prompt.
Manually:
- In Cursor open Settings → Cursor Settings → MCP and click Add new global MCP server.
- Paste the JSON copied below into
~/.cursor/mcp.json(per project:.cursor/mcp.jsonin the repo root). - Save the file. The server appears in the MCP list; authorize it there if asked.
Authorization
If the service needs sign-in, an authorize button appears next to the server in the MCP list.
Server tool list (32)
Raw names from tools/list. Only developers need these.
| list_sites | List all websites you have access to with their domains and IDs |
| create_site | Register a new website for analytics tracking. Returns the site ID, tracking secret, and the script tag to embed. |
| exclude_my_ip | Exclude an IP address from analytics tracking for a site. Prevents the user's own visits from appearing in the data. In Claude Code, detect the IP with `curl -s api.ipify.org` first. In conversation agents, ask the user to check their IP at api.ipify.org and paste it. Must be done per site. |
| get_analytics | Get aggregate analytics for a site (visitors, page views, bounce rate, etc.) with automatic comparison to the previous period. Returns average_duration in seconds. Optional filters segment the result by country, browser, os, device type, UTM source, or referrer. |
| get_snapshot | Quick today vs yesterday comparison: visitors, top referrer, top country, and duration trends |
| get_timeseries | Get visitor and page view counts bucketed over time (hourly or daily). Returns an array of {date_label, page_views, unique_visitors} objects. Optional filters segment by country, browser, os, device type, UTM source, or referrer. |
| get_funnel | Compute a conversion funnel across an ordered sequence of pageview URLs and custom events. Returns per-step session counts and conversion rate relative to step 0. Steps must all occur within the same session, in order. Optional filters constrain which sessions enter the funnel. |
| get_performance | Get page load time metrics (average, median, p95) grouped by page URL, device type, country, or browser. Only includes data from pages with load time measurements. Useful for identifying slow pages and correlating performance with engagement. |
| get_pages | Get pages ranked by traffic. Call twice with different periods to compare page performance over time. Optionally filter by URL path and/or segment by country, browser, os, device type, UTM source, or referrer. Returns page titles when available. |
| get_traffic_sources | Get traffic sources: referrers, trackable links, and UTM campaigns combined. Shows where visitors are coming from. Call twice with different periods to compare source mix over time. Optional filters segment by country, browser, os, device type, UTM source, or referrer. |
| get_countries | Get visitor geography breakdown by country. Call twice with different periods (e.g. '2026-04-01..2026-04-07' vs '2026-04-08..2026-04-14') to compare growth across countries. Optional filters segment by browser, os, device type, UTM source, or referrer. |
| get_tech_breakdown | Get browser, operating system, and device type distribution in one call. Optional filters segment by country, browser, os, device type, UTM source, or referrer. |
| get_entry_exit_pages | Get entry pages (where sessions start) and exit pages (where sessions end). Shows which pages attract new visits and where users leave. Useful for identifying effective landing pages and high-exit pages that may need improvement. Optional filters segment by country, browser, os, device type, UTM source, or referrer. |
| get_bot_report | Show bot and crawler traffic that's been filtered from analytics. Groups by user agent, showing sessions, page views, countries, and first/last seen. Useful for understanding what's crawling your site (AI crawlers, search engines, SEO tools). |
| get_event_counts | Get a summary of all custom events tracked on a site, showing event names with their total count and unique sessions. Optionally segment by country, browser, os, device type, UTM source, or referrer (matched against the session's page views). |
| get_events | Get individual custom event records with their properties. Optionally filter by event name. |
| get_event_timeseries | Get event counts bucketed over time for a specific event. Useful for seeing how event frequency changes. Optional filters segment by country, browser, os, device type, UTM source, or referrer (matched against the session's page views). |
| get_realtime | Get the number of currently active visitors on a site (visitors with activity in the last 5 minutes) |
| create_trackable_link | Create a trackable link for campaign attribution. Append ?ld=<code> to your destination URL when sharing — clicks are attributed to the source in analytics. |
| list_trackable_links | List all trackable links for a site with their click statistics |
| get_link_clicks | Get click data for a specific trackable link, including referrers and countries. Returns up to 1000 most recent clicks. |
| get_usage | Get current month's event usage and plan limits. Returns plan type, events used, monthly limit, and percentage. |
| get_conversion_pages | Find which pages lead to a specific conversion event. Shows pages viewed before the event in the same session, with conversion rate and average time to convert. Useful for identifying high-converting content. |
| get_source_conversions | Compare traffic sources by conversion rate for a specific event. Shows which referrers, UTM campaigns, and trackable links drive the most conversions, plus average time to convert per source. |
| create_api_key | Generate a new API key for the current user. Use this to create keys for managed agents, CI pipelines, or other tools that need access to your Lodd analytics. The key is shown only once — save it immediately. |
| list_api_keys | List all API keys for the current user. Shows key prefix, name, creation date, and last used date. Does not reveal full keys. |
| revoke_api_key | Permanently deactivate an API key. The key will immediately stop working. Use list_api_keys to find key IDs. Cannot be undone. |
| get_active_actors | List distinct actors (opaque hashed identifiers) with their event counts, first/last seen, and total revenue. Actors are customer-hashed — Lodd never sees the original identifier. Only includes events where an actor was set. |
| get_actor_activity | Get the event timeline for a specific actor hash. Shows all events in chronological order with properties and revenue. The actor is an opaque identifier — Lodd does not know who it represents. |
| get_actor_retention | Get weekly cohort retention by actor hash. Groups actors by the week they first appeared, then shows how many returned in weeks 1-4. Actors are opaque hashes — no personal data is stored or exposed. Requires 2+ weeks of data for meaningful results. |
| create_annotation | Record a user-facing change that may affect analytics. Call after deploying changes to pages, flows, or tracking. Skip dependency updates, CI config, and refactors with no visible impact. |
| list_annotations | List annotations (deploy notes, change records) for a site within a time period. |