Clicky MCP服务器
一个模型上下文协议(MCP)服务器,它公开 滴答 网络分析作为人工智能助手的11种工具——访问者数量、首页、流量来源、跳出率、搜索词、实时访问者等等。请参阅 工具参考 查看完整列表。
______________________________________________________________________
快速开始
您需要:
- Node.js 20+ 已安装(
node --version) - A. Clicky站点ID和站点密钥 --在以下位置找到两者https://clicky.com/user/preferences/site在“信息”下
- 此仓库克隆并构建了一次:
git clone https://github.com/colintoh/clicky-mcp.git
cd clicky-mcp && npm install && npm run build然后在下面选择您的MCP主机。
为什么没有 npm start 步? MCP stdio服务器不会作为独立的守护进程运行——您的MCP主机(Claude Desktop、Claude Code等)会根据需要将服务器作为子进程生成,并通过stdin/stdout与之通信。没有什么可以“开始”自己。克劳德桌面版
- 打开配置文件(如果缺少,请创建):
- macOS: ~/Library/Application Support/Claude/claude_desktop_config.json - 视窗: %APPDATA%\Claude\claude_desktop_config.json - Linux: ~/.config/Claude/claude_desktop_config.json
- 将其合并到文件中
mcpServers块(替换三个ALL_CAPS占位符):
{
"mcpServers": {
"clicky-analytics": {
"command": "ABSOLUTE_PATH_TO_NODE", // e.g. /Users/.../.nvm/versions/node/v25.2.1/bin/node
"args": ["ABSOLUTE_PATH_TO_CLICKY_MCP_FOLDER/dist/index.js"], // e.g. /Users/.../clicky-mcp/dist/index.js
"env": {
"CLICKY_SITE_ID": "YOUR_SITE_ID",
"CLICKY_SITE_KEY": "YOUR_SITE_KEY"
}
}
}
}获取 ABSOLUTE_PATH_TO_NODE 通过跑步 which node 在你的终端。 不要只是把 "node" --Claude Desktop通过以下方式发布 launchd 使用不包括nvm或自制程序的最小PATH,因此非常简单 "node" 会默默地失败。通往的道路也是如此 dist/index.js:它必须是绝对的。
- 完全退出克劳德桌面(
⌘Q在macOS上,关闭窗口是不够的),然后重新打开它。 - 通过询问克劳德来验证 *“列出我的Clicky MCP工具”* --你应该看到11个工具。
如果出现问题,请查看 故障排除.
克劳德代码
一个命令:
claude mcp add clicky-analytics \
-e CLICKY_SITE_ID=YOUR_SITE_ID \
-e CLICKY_SITE_KEY=YOUR_SITE_KEY \
-- node /absolute/path/to/clicky-mcp/dist/index.js这封信是写给 ~/.claude.json 默认情况下。添加 --scope project 在本地编写项目 .mcp.json 相反。重新启动Claude代码(或运行 /mcp 刷新),11个工具可用。
MCP检查员(调试)
当您想直接调用工具而不将服务器提交给主机时,请使用此选项——这对于检查模式或排除响应非常方便:
npx @modelcontextprotocol/inspector node dist/index.js然后打开打印的URL,设置 CLICKY_SITE_ID 和 CLICKY_SITE_KEY 作为检查器UI中的环境变量(或传递 --site-id … --site-key … 作为CLI参数 dist/index.js),然后单击。
______________________________________________________________________
日期参数
每个日期感知工具都接受 要么 明确的日期范围 或 a Clicky相对日期关键字,但不能同时使用:
- 明确的:
start_date+end_date,两者YYYY-MM-DD,范围≤31天。 - 关键词:
date_range,其中之一today,yesterday,last-7-days,last-30-days,this-week,last-week,this-month,last-month,this-year,last-year.
例子:
{ "date_range": "last-7-days" }______________________________________________________________________
工具参考
所有11个工具,按用例按字母顺序排列。
获取总访客数
一段时间内的访客总数。
start_date/end_date或date_range
获取_操作
一段时间内的总页面浏览量/操作数。
start_date/end_date或date_rangelimit(数量,可选,最多1000)
get_bounce_rate
一段时间内的跳出率和平均现场时间。
start_date/end_date或date_range
get_visitors_online
实时访客计数和细分。不接受任何参数。
get_top_pages
一段时间内最受欢迎的页面。
start_date/end_date或date_rangelimit(数量,可选,最多1000)
获取页面_流量
特定页面URL的流量数据。
url(字符串, 必需的)start_date/end_date或date_range
get_traffic_sources
流量来源细分——可选择按页面URL过滤。
start_date/end_date或date_rangepage_url(字符串,可选)--完整URL或路径
get_reporting_domains
发送流量的顶级引用域。
start_date/end_date或date_rangelimit(数量,可选,最多1000)
get_domain_visitors
访问者数据按引用者域过滤,可选择分段。
domain(字符串, 必需的)start_date/end_date或date_rangesegments(数组,可选)--["pages", "visitors"].默认为["visitors"].limit(数量,可选,最多1000)
获取搜索
吸引访客的热门搜索词。
start_date/end_date或date_rangelimit(数量,可选,最多1000)
get_countries
按国家分列的游客人数。
start_date/end_date或date_rangelimit(数量,可选,最多1000)
______________________________________________________________________
API限值
由Clicky强加,而非此服务器:
- 最大显式日期范围: 31天
- 每个请求的最大结果: 1000个项目
- 每个IP每个站点ID一个同时请求
______________________________________________________________________
故障排除
“Claude Desktop看不到服务器。” 查看spawn日志 ~/Library/Logs/Claude/mcp-server-clicky-analytics.log最常见的原因是 node 不在Claude Desktop的launchd PATH上——通过替换来修复 "command": "node" 从绝对路径 which node.第二个最常见的原因是忘记完全退出Claude Desktop(⌘Q,而不仅仅是关上窗户)。
“日期范围不能超过31天。” 这是Clicky API的限制,而不是我们。要么缩小范围,要么使用 date_range 关键字类似 last-30-days.
______________________________________________________________________
本地开发
为了工作 *上* 服务器,而不仅仅是使用它。
npm install # install deps
npm run dev # run with tsx, watching for changes (used for local testing only)
npm run build # compile TS to dist/
npm test # 46 unit tests, offline, no credentials needed
npm run test:integration # live API smoke test (requires .env or env vars)对于本地开发人员,凭据可以来自 .env 项目根目录中的文件:
CLICKY_SITE_ID=your_site_id
CLICKY_SITE_KEY=your_site_key.env 被忽视了。 不使用 .env 适用于Claude Desktop等主机 --通过主机的配置传递凭据 env 如图所示 快速开始。服务器仅加载 .env 当环境中还没有凭据时。
一个预推的git钩子 .githooks/pre-push 自动运行 npm test 在任何更新遥控器的推送之前 main 分支,所以回归不能被忽视。它是由自动安装的 prepare npm脚本之后 npm install。对特征分支的推送没有门控。紧急情况下旁通 git push --no-verify.
项目结构
clicky-mcp/
├── src/
│ ├── index.ts # MCP server + tool dispatcher
│ ├── clicky-client.ts # Clicky HTTP API client
│ ├── date-utils.ts # Shared date param builder
│ └── tools/ # One file per tool
├── test/ # node:test unit tests
├── scripts/verify.mjs # Live API smoke runner
├── .githooks/pre-push # Auto-installed test gate for main
├── package.json
├── tsconfig.json
└── README.md______________________________________________________________________
通过AI代理安装此MCP
如果您希望AI代理(例如另一个项目中的Claude Code)为您安装此MCP,请将其指向本节。代理人应:
- 克隆和构建:
git clone https://github.com/colintoh/clicky-mcp.git
cd clicky-mcp && npm install && npm run build- 向用户询问他们的Clicky站点ID和站点密钥(https://clicky.com/user/preferences/site).
- 跑
which node并捕获绝对路径。 - 找到用户的Claude Desktop配置(路径在 快速入门›克劳德桌面)并合并到
mcpServers该部分的摘录,替换为绝对值node路径,绝对dist/index.js路径和用户的凭据。 - 告诉用户完全重新启动Claude Desktop(
⌘Q),然后通过询问克劳德来验证 *“列出我的Clicky MCP工具”* --应该出现11个工具。
对于Claude Code来说,单曲 claude mcp add 命令输入 快速入门›克劳德代码 更快,一步完成配置。
______________________________________________________________________
许可证
麻省理工学院
