{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_nufx5bp633ca","handle":"flin-ga4-mcp","url":"https://wellknown.network/agents/flin-ga4-mcp","links":{"self":"https://wellknown.network/agents/flin-ga4-mcp/record.json","html":"https://wellknown.network/agents/flin-ga4-mcp","markdown":"https://wellknown.network/agents/flin-ga4-mcp/record.md","api":"https://wellknown.network/api/v1/agents/flin-ga4-mcp","status":"https://wellknown.network/api/v1/agents/flin-ga4-mcp/status","claim":"https://wellknown.network/agents/flin-ga4-mcp/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/flin-ga4-mcp/claim.json","badge":"https://wellknown.network/agents/flin-ga4-mcp/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/flin-ga4-mcp/history","tools":"https://wellknown.network/api/v1/agents/flin-ga4-mcp/tools"},"ard":{"identifier":"urn:air::server:flin-ga4-mcp","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"flin-ga4-mcp","summary":"Read-only Google Analytics 4 MCP server with local OAuth and multi-account support.","description":"# flin-ga4-mcp\n\nRead-only Google Analytics 4 MCP server for Claude Desktop and other stdio MCP clients.\nBuilt on the same Python/FastMCP architecture as flin's Search Console and Keyword Planner\nservers: local browser OAuth, per-account token files, `uv`, and GitHub/PyPI releases.\n\n## Quickstart\n\n1. In a Google Cloud project, enable **Google Analytics Data API** and **Google Analytics Admin API**.\n2. Configure the OAuth consent screen. If the app is External/Testing, add your Google account\n   as a test user. Testing authorizations can expire after seven days.\n3. Create an OAuth client of type **Desktop app** and copy its client ID and client secret.\n4. Your Google account needs access to the GA4 property (Viewer is sufficient for reports).\n5. Clone this repository and add the following to your MCP client's configuration:\n\n```json\n{\n  \"mcpServers\": {\n    \"flin-ga4-mcp\": {\n      \"command\": \"uv\",\n      \"args\": [\"run\", \"--directory\", \"/absolute/path/to/flin-ga4-mcp\", \"--locked\", \"--no-dev\", \"flin-ga4-mcp\"],\n      \"env\": {\n        \"GOOGLE_CLIENT_ID\": \"your-desktop-oauth-client-id\",\n        \"GOOGLE_CLIENT_SECRET\": \"your-desktop-oauth-client-secret\",\n        \"GOOGLE_GA4_PROPERTY_ID\": \"123456789\"\n      }\n    }\n  }\n}\n```\n\nReplace the path and credentials. The default property ID is optional. Use the numeric\n**property ID**, not a `G-...` measurement ID or a Google Analytics account ID.\nRestart your MCP client after changing its configuration.\n\nAsk the assistant to run `health_check`, then `list_properties`. The first data request\nopens Google sign-in in your browser. Complete it within three minutes. Subsequent calls\nreuse/refresh the saved token. `health_check` never opens the browser or calls Google;\n`ready`/`refreshable` describes local token state, not verified property access.\n\nBrowser OAuth explicitly enables PKCE and binds the callback to the loopback interface.\nOnly `https://www.googleapis.com/auth/analytics.readonly` is requested. No analytics\nsettings, events, au…","publisher":null,"homepage":"https://github.com/flin-agency/flin-ga4-mcp","repository":"https://github.com/flin-agency/flin-ga4-mcp","version":"0.2.0","license":"MIT","protocols":["mcp"],"tags":["analytics","claude","ga4","google-analytics","mcp"],"pricing":null,"endpoints":[{"url":"pypi:flin-ga4-mcp","type":"package_pypi","auth":null,"probeable":false}],"skills":null,"tools":null,"extra":null,"attribution":{"kind":"pypi","name":"pypi","license":"pypi","repoUrl":"pypi","summary":"pypi","version":"pypi","description":"pypi","homepageUrl":"pypi"}},"derived":{"capabilities":[{"slug":"analytics.product","name":"Product Analytics","confidence":1,"provenance":"derived"},{"slug":"security.identity","name":"Identity & Access","confidence":1,"provenance":"derived"},{"slug":"dev.version-control","name":"Version Control","confidence":0.825,"provenance":"derived"},{"slug":"dev.filesystem","name":"Filesystem","confidence":0.802,"provenance":"derived"}],"categories":["analytics","dev","security"],"language":"en"},"observed":{"status":"unknown","statusReason":"Distributed as a package to run locally; no network endpoint to check.","lastOkAt":null,"lastProbedAt":null,"statusComputedAt":null,"reliability30d":null,"latestObservations":[],"tools":null,"package":{"name":"flin-ga4-mcp","registry":"pypi","observedAt":"2026-11-05T21:26:40.056Z","publishedAt":"2026-10-31T10:01:31.486807Z","latestVersion":"0.2.0"},"toolSurface":null,"endpointFacts":[]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"pypi","key":"flin-ga4-mcp","url":"https://pypi.org/project/flin-ga4-mcp/","firstSeenAt":"2026-10-30T19:25:30.938Z","fetchedAt":"2026-11-05T21:25:25.938Z","normalizedAt":"2026-11-05T21:25:25.938Z"}]},"firstSeenAt":"2026-10-30T19:25:30.938Z","updatedAt":"2026-11-05T21:26:40.056Z"}