Microsoft Clarity MCP Server (microsoft-clarity-mcp)
FastMCP server exposing Microsoft Clarity's Data Export API for behavioral UX analysis, rage clicks, dead clicks, quick backs, excessive scrolling, and JavaScript runtime errors.
Companion behavioral diagnostics engine to Google Analytics and Search Console for AI agents.
1. Quickstart
Run directly without installing via uvx (Python) or npx (Node):
Via Python (uvx)
uvx microsoft-clarity-mcp
Via Node (npx)
npx microsoft-clarity-mcp
2. MCP Client Configuration
Add to your MCP client config (claude_desktop_config.json, cursor.json, or Antigravity/OpenCode):
{
"mcpServers": {
"microsoft-clarity": {
"command": "uvx",
"args": ["microsoft-clarity-mcp"],
"env": {
"CLARITY_API_TOKEN": "your_clarity_api_token_here"
}
}
}
}
Or using npx:
{
"mcpServers": {
"microsoft-clarity": {
"command": "npx",
"args": ["-y", "microsoft-clarity-mcp"],
"env": {
"CLARITY_API_TOKEN": "your_clarity_api_token_here"
}
}
}
}
3. Authentication & API Tokens
Microsoft Clarity secures data export via static JWT Bearer tokens:
- Log in to Microsoft Clarity.
- Open your project dashboard.
- Navigate to Settings -> Data Export.
- Click Generate new API token (provide a name between 4 and 32 alphanumeric characters, e.g.
clarity-agent). - Copy the generated token and configure
CLARITY_API_TOKEN.
4. Rate-Limit Defense & Persistent Caching
- Daily Quota: Microsoft Clarity strictly allows 10 requests per project per day.
- Automatic Cache: To safeguard user quota from runaway agent loops, all responses are cached locally on disk at
~/.clarity_mcp/cache.jsonwith a 1-hour TTL (configurable viaCLARITY_CACHE_TTL). - Stale Cache Fallback: If the daily 10-request quota is reached, the server automatically serves stale cached data with an explicit warning, ensuring your agents remain operational without hard crashing.
- Quota Transparency: Every tool response includes metadata detailing
calls_used_today,remaining_today, anddaily_limit.
5. Tools
| Tool | Parameters | Description |
|---|---|---|
get_ux_insights |
project_id, num_of_days=3, token |
High-level behavioral friction metrics: session counts, rage clicks, dead clicks, quick backs, excessive scroll, and JS errors. |
get_frustration_breakdown |
project_id, dimension="URL", num_of_days=3, token |
Ranks friction severity broken down across URL paths, devices, browsers, operating systems, or countries. |
get_js_errors |
project_id, num_of_days=3, token |
JavaScript runtime exceptions and error clicks grouped across browsers and operating systems. |
doctor |
project_id, token |
Diagnostic utility checking token format, cache integrity, and remaining daily API quotas. |
skills_list |
(none) | Lists dynamic skill playbooks bundled with the server. |
skill_read |
name |
Fetches operational playbooks (e.g. ux-triage, setup-clarity-token, frustration-audit). |
check_for_updates |
(none) | Queries PyPI for newer versions and upgrade commands. |
6. Telemetry & Privacy
This package includes anonymous usage telemetry to ensure reliability and detect runtime bugs across different client harnesses. Telemetry adheres strictly to Schema v2:
- Opt-Out: Strictly respects
DO_NOT_TRACK=1,DISABLE_TELEMETRY=1, orCLARITY_TELEMETRY=false. - Zero PII: No user URLs, personal identifiers, or authentication tokens are ever captured.
License
MIT License. Copyright (c) 2026 Surendran B.
Metadata
Release files for microsoft-clarity-mcp 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| microsoft_clarity_mcp-0.1.0.tar.gz | 23.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| microsoft_clarity_mcp-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 44.3 kB
Release files / microsoft_clarity_mcp-0.1.0.tar.gz
| Download URL | microsoft_clarity_mcp-0.1.0.tar.gz |
|---|---|
| Size | 23.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
6539571dc12a62bdb3f9b8cdeb348892fbd8bcb5afbe6e61530b830059adf41e
|
|
BLAKE2b-256 checksum How to use checksums |
4b46690414a4825967f55b26dd73867a2592768910818b972638609c607b8fbe
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.15
|
Release files / microsoft_clarity_mcp-0.1.0-py3-none-any.whl
| Download URL | microsoft_clarity_mcp-0.1.0-py3-none-any.whl |
|---|---|
| Size | 21.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d5c85e252bc01d64b8facfe5424f24c8e5ee563fdf7c4499370a6ea73f6a50ff
|
|
BLAKE2b-256 checksum How to use checksums |
0e94a24408efffbdc9843a5b292d1fa8b94db6bb02b248fb67a66fbda89691f7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.15
|