神岛数据统计 MCP 服务器

神岛数据统计 MCP 服务器

site icon
2025.04.08 3
TypeScript地图服务数据统计位置服务开发效率
神岛数据统计 MCP 服务器是基于 Model Context Protocol (MCP) 的服务器,提供对神岛平台用户数据、地图信息和统计数据的访问。该服务器具有公开 API 和认证 API,支持地图分析、类型安全、模块化设计等特性,适用于需要访问和分析地图数据、用户行为的场景。
View on GitHub

Overview

基本能力

产品定位

神岛数据统计 MCP 服务器是一个基于 Model Context Protocol (MCP) 的服务器,主要用于提供对神岛平台用户数据、地图信息和统计数据的访问和分析。

核心功能

  • 公开 API: 无需认证访问的基础数据(用户资料、地图详情、评论列表)
  • 认证 API: 需要 Token 访问的高级数据(用户评论、各类统计数据)
  • 地图分析: 全面的地图玩家数据、留存率、行为分析等
  • 类型安全: 完整的 TypeScript 类型定义,提供代码提示和错误检查
  • 模块化设计: 清晰的代码结构,易于维护和扩展
  • 标准接口: 基于 MCP 协议,提供标准化的工具接口
  • 易于集成: 支持多平台客户端集成,包括浏览器、CLI 等

适用场景

  • 需要访问和分析地图数据的应用
  • 需要获取用户行为统计数据的场景
  • 需要集成地图和用户数据的开发项目

工具列表

公开 API (无需认证)

  • getUserProfile: 获取用户个人资料
  • getMapInfo: 获取地图详情信息
  • getMapCommentList: 获取地图评论列表
  • getMapReleaseInfo: 获取地图发布信息
  • getMapList: 通过模糊关键字获取地图列表

需要认证的 API

  • getCommentList: 获取用户评论列表
  • getMapStatList: 获取地图统计列表
  • getMapPlayerStatList: 获取地图玩家统计
  • getMapPlayerRetention: 获取地图玩家留存
  • getMapPlayerBehavior: 获取地图玩家行为

常见问题解答

  • 如何添加新的 API 端点?
  • src/types/index.ts 中添加新的类型定义(如需要)
  • 对于公开 API,在 src/tools/publicTools.ts 中添加新的工具定义
  • 对于需要认证的 API,在 src/tools/authTools.ts 中添加新的工具定义

使用教程

使用依赖

  • 确保已安装 Node.js 和 npm
  • 安装 TypeScript bash npm install -g typescript

安装教程

  1. 克隆项目仓库 bash git clone <repository-url>
  2. 进入项目目录 bash cd statistics-mcp
  3. 安装依赖 bash npm install

调试方式

  1. 启动服务器 bash npm start
  2. 使用客户端示例代码进行测试 ```typescript import { Client } from "@modelcontextprotocol/sdk/client/index.js"; import { StdioClientTransport } from "@modelcontextprotocol/sdk/client/stdio.js";

// 创建传输通道 const transport = new StdioClientTransport({ command: "npx", args: ["-y", "@smithery/cli@latest", "run", "@dao3fun/statistics-mcp"], });

// 初始化客户端 const client = new Client( { name: "dao3-client", version: "1.0.0" }, { capabilities: { tools: {} } } );

// 连接到服务器 await client.connect(transport);

// 获取用户资料 (公开API) const userProfile = await client.callTool({ name: "getUserProfile", arguments: { userId: "83354" }, });

console.log(JSON.parse(userProfile.content[0].text)); ```

许可证

该项目遵循 MIT 开源许可条款。