A Model Context Protocol (MCP) server for managing Google Analytics 4 properties and annotations.
npm install -g mcp-ga4-admin
Or use it directly via npx:
npx mcp-ga4-admin
- A Google Cloud project with the Google Analytics Admin API enabled
- A service account with appropriate permissions for Google Analytics
- A credentials.json file for the service account
You need to provide the path to your Google service account credentials file. There are two ways to do this:
Set the GOOGLE_APPLICATION_CREDENTIALS
environment variable directly:
export GOOGLE_APPLICATION_CREDENTIALS=path/to/your/credentials.json
Alternatively, you can create a .env
file in the directory where you want to use the MCP with the following content:
GOOGLE_APPLICATION_CREDENTIALS=path/to/your/credentials.json
Note: The .env
file is completely optional. The package will work fine with just the environment variable set.
The MCP provides the following functions:
-
ga4_admin_api_list_accounts
- List all GA4 accounts -
ga4_admin_api_list_properties
- List all GA4 properties within an account -
ga4_admin_api_get_property_details
- Get details of a specific GA4 property -
ga4_admin_api_list_data_streams
- List all data streams for a specific GA4 property
-
ga4_admin_api_list_annotations
- List all annotations for a GA4 property -
ga4_admin_api_get_annotation
- Get details of a specific annotation -
ga4_admin_api_create_annotation
- Create a new annotation -
ga4_admin_api_update_annotation
- Update an existing annotation -
ga4_admin_api_delete_annotation
- Delete an annotation
-
ga4_admin_api_list_audiences
- List all audiences for a GA4 property -
ga4_admin_api_get_audience
- Get details of a specific audience -
ga4_admin_api_create_audience
- Create a new audience
-
ga4_admin_api_list_custom_dimensions
- List all custom dimensions for a GA4 property -
ga4_admin_api_get_custom_dimension
- Get details of a specific custom dimension -
ga4_admin_api_create_custom_dimension
- Create a new custom dimension
This MCP is designed to work with Claude or other MCP Clients. To use it with Claude, create a claude-mcp-config.json
file with the following content:
{
"mcpServers": {
"google-analytics-admin": {
"command": "npx",
"args": ["mcp-ga4-admin"],
"cwd": "/tmp",
"env": {
"GOOGLE_APPLICATION_CREDENTIALS": "/path/to/your/credentials.json"
}
}
}
}
Replace /path/to/your/credentials.json
with the actual path to your Google service account credentials file.
- The
cwd
parameter is important - it ensures the MCP runs in a clean directory - No
.env
file is needed when using this configuration with Claude - The
NO_COLOR
environment variable prevents color codes in the output, which can cause JSON parsing errors in Claude - Upload the
claude-mcp-config.json
file to Claude when starting a new conversation
ISC