分析数据协议服务器

PlainSignal MCP Server是一个基于MCP协议的分析数据服务器,提供获取分析报告和指标的工具。

  • by plainsignal
  • JavaScript
  • 本地部署
  • 3 星标
  • 更新于
在 GitHub 查看 plainsignal/plainsignal-mcp

使用说明

PlainSignal MCP服务器

这是用于PlainSignal分析数据的模型上下文协议(MCP)服务器实现。它提供了通过MCP协议检索分析报告和指标的工具。

设置

安装

来自npm(推荐)

# Install globally
npm install -g @plainsignal/plainsignal-mcp

# Or install locally in your project
npm install @plainsignal/plainsignal-mcp

来源

  1. 克隆此存储库
  2. 安装依赖项:
npm install

此项目使用ES模块而不是CommonJS。确保你使用的是支持ES模块的Node.js版本(Node.js 14+)。

用法

从npm安装时

# If installed globally
plainsignal-mcp --token <your_access_token>

# If installed locally
npx plainsignal-mcp --token <your_access_token>

# Or using an environment variable
export PLAINSIGNAL_TOKEN=<your_access_token>
plainsignal-mcp

从源代码使用时

使用您的访问令牌运行服务器:

node src/index.js --token <your_access_token>

# Or using an environment variable
export PLAINSIGNAL_TOKEN=<your_access_token>
node src/index.js

您还可以指定自定义API基础URL:

node src/index.js --token <your_access_token> --api-base-url <api_base_url>

或者使用短格式:

node src/index.js -t <your_access_token> -u <api_base_url>

或者,将访问令牌和API基本URL设置为环境变量,并使用测试脚本:

export PLAINSIGNAL_TOKEN=your_access_token
export API_BASE_URL=https://app.plainsignal.com/api/v1
./test.sh

默认情况下,服务器连接到 https://app.plainsignal.com/api/v1.

MCP服务器配置

克劳德桌面

将此代码段添加到您的 claude_desktop_config.json:

{
  "mcpServers": {
    "plainsignal": {
      "command": "npx -y @plainsignal/plainsignal-mcp",
      "env": {
        "PLAINSIGNAL_TOKEN": "<YOUR_PLAINSIGNAL_TOKEN>"
      }
    }
  }
}

可用工具

服务器提供以下工具:

getReport

检索指定域和时间段的分析报告。

参数:

  • organizationID:组织ID
  • domainID:域ID
  • periodFrom:RFC3339格式的报告开始日期时间
  • periodTo:RFC3339格式的报告结束日期时间
  • periodSelection:周期类型(m:月,y:年,d:日)
  • aggregationWindow:数据聚合窗口(h:小时,d:天)
  • filters:(可选)作为键值对的筛选器列表

getSubReport

检索分析数据特定方面的详细指标。

参数:

  • organizationID:组织ID
  • domainID:域ID
  • periodFrom:RFC3339格式的报告开始日期时间
  • periodTo:RFC3339格式的报告结束日期时间
  • periodSelection:周期类型(m:月,y:年,d:日)
  • aggregationWindow:数据聚合窗口(h:小时,d:天)
  • subReportType:报告类型(1:页,2:条目页等)
  • filters:(可选)作为键值对的筛选器列表
  • pagination:(可选)带限制和偏移的分页控件

api参考

此服务器与PlainSignal API进行通信。默认情况下,它连接到 https://app.plainsignal.com/api/v1,但您可以通过以下几种方式配置API端点:

  1. 使用 --api-base-url 命令行选项:

    node src/index.js --token <your_token> --api-base-url https://app.plainsignal.com/api/v1
    
  2. 设置 API_BASE_URL 环境变量:

    export API_BASE_URL=https://app.plainsignal.com/api/v1
    
  3. 以编程方式实例化服务器时,将自定义API基URL传递给构造函数:

    const server = new PlainSignalStdioServer(token, 'https://app.plainsignal.com/api/v1');
    

对于开发者

服务器使用MCP SDK实现,并通过STDIO进行通信。

例子

提供了一个示例客户端来演示如何使用MCP服务器:

# Set your access token
export PLAINSIGNAL_TOKEN=your_access_token

# Run the example client
npm run example

或者运行资源示例客户端:

# Set your access token
export PLAINSIGNAL_TOKEN=your_access_token

# Run the resources example client
npm run resources-example

示例客户端演示了:

  1. 连接到MCP服务器
  2. 列出可用工具
  3. 呼叫 getReport 带有示例参数的工具
  4. 处理和显示结果

资源示例客户端演示了:

  1. 连接到MCP服务器
  2. 列出可用资源
  3. 阅读 listDomains 资源
  4. 处理和显示结果

许可证

此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。