使用说明
谷歌分析MCP服务器
用于访问Google Analytics 4(GA4)数据的MCP服务器实现,使用模型上下文协议构建 TypeScript SDK。
特性
- 通过可定制的维度获取页面浏览量指标
- 随着时间的推移跟踪活跃用户和新用户
- 分析特定事件及其指标
- 监控用户行为指标(会话持续时间、跳出率)
- 为所有查询灵活选择日期范围
先决条件
- Node.js 20或更高版本
- 谷歌分析4属性。
- Google Cloud项目 分析数据API 启用。
- 具有访问API的凭据的服务帐户。
设置和配置
要使用此服务器,您需要使用Google Analytics配置身份验证。这是使用服务帐户完成的。
1.启用Google Analytics Data API
- 转到 谷歌云控制台.
- 选择要使用的项目。
- 在导航菜单中,转到 API和服务>库.
- 搜索 “谷歌分析数据API” 并启用它。
2.创建服务帐户
- 在Google Cloud控制台中,导航到 IAM和管理>服务帐户.
- 点击 “创建服务帐户”.
- 为服务帐户命名(例如“GA4 MCP服务器”)。
- 点击 “创建并继续”.
- 您可以跳过授予服务帐户对项目的访问权限。
- 点击 “完成”.
- 找到您刚刚创建的服务帐户,然后单击下面的三个点 “行动”.
- 选择 **“管理密钥”**那么 “添加密钥”>“创建新密钥”.
- 选择 对象符号 作为密钥类型,然后单击 “创建”。将下载包含凭据的JSON文件。
3.授予服务帐户访问Google Analytics的权限
- 打开 谷歌分析.
- 导航到 管理员 GA4财产的一部分。
- 上下 财产 列,单击 物业出入管理.
- 点击 "+" 按钮添加新用户。
- 在 “电子邮件地址” 字段,粘贴
client_email从您下载的JSON凭据文件中。 - 分配 “查看器” 角色。您不需要通知用户。
- 点击 “添加”.
4.设置环境变量
服务器需要以下环境变量:
GOOGLE_CLIENT_EMAIL:Theclient_email从您的服务帐户JSON文件。GOOGLE_PRIVATE_KEY:Theprivate_key从您的服务帐户JSON文件。GA_PROPERTY_ID:您的Google Analytics 4属性ID。
您可以在您的环境中设置它们或使用 .env 文件。
export GOOGLE_CLIENT_EMAIL="your-service-account@your-project.iam.gserviceaccount.com"
export GOOGLE_PRIVATE_KEY="-----BEGIN PRIVATE KEY-----\nYOUR_PRIVATE_KEY\n-----END PRIVATE KEY-----\n"
export GA_PROPERTY_ID="your_property_id"
安装
通过Smithery安装
通过以下方式自动安装Google Analytics Server for Claude Desktop 史密瑟里:
npx -y @smithery/cli install mcp-server-google-analytics --client claude
手动安装
npm install -g mcp-server-google-analytics
或者直接与npx一起使用:
npx mcp-server-google-analytics
用法
启动服务器
pnpm start
Claude桌面中的配置
将此添加到您的Claude Desktop配置中:
{
"mcpServers": {
"google-analytics": {
"command": "npx",
"args": ["-y", "mcp-server-google-analytics"],
"env": {
"GOOGLE_CLIENT_EMAIL": "your-service-account@project.iam.gserviceaccount.com",
"GOOGLE_PRIVATE_KEY": "your-private-key",
"GA_PROPERTY_ID": "your-ga4-property-id"
}
}
}
}
可用功能
runReport
运行灵活的报告以获取分析数据。
输入:
{
"startDate": "2024-01-01",
"endDate": "2024-01-31",
"dimensions": [{ "name": "country" }, { "name": "city" }],
"metrics": [{ "name": "activeUsers" }, { "name": "newUsers" }],
"dimensionFilter": {
"filter": {
"fieldName": "country",
"stringFilter": {
"value": "United States"
}
}
}
}
获取页面浏览量
获取特定日期范围的页面浏览量指标:
{
"startDate": "2024-01-01",
"endDate": "2024-01-31",
"dimensions": ["page", "country"] // Optional
}
GetActiveUsers
获取活跃用户指标:
{
"startDate": "2024-01-01",
"endDate": "2024-01-31"
}
get事件
获取事件指标:
{
"startDate": "2024-01-01",
"endDate": "2024-01-31",
"eventName": "purchase" // Optional
}
getUserBehavior
获取用户行为指标:
{
"startDate": "2024-01-01",
"endDate": "2024-01-31"
}
安全考虑
- 最小特权:仅在Google Analytics中授予服务帐户“查看器”角色。
- 密钥管理:确保您的服务帐户密钥文件安全,不要在客户端代码中公开它。
- 环境变量:使用环境变量存储敏感信息,如客户端电子邮件、私钥和属性ID。
贡献
欢迎投稿!请阅读我们的 贡献指南 有关我们行为准则的详细信息,以及 提交pull请求的过程。
许可证
此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。