使用说明

项目简介

Baseline MCP Server 是一个实现了 Model Context Protocol 的后端服务器,旨在为大型语言模型(LLM)客户端提供关于 Web API 浏览器兼容性(Baseline Status)的上下文信息。它通过查询 Web Platform Dashboard API 获取最新的 Web API 支持数据,并以结构化的 MCP 格式返回,使得 LLM 能够理解和利用这些信息。

主要功能点

  • Web API Baseline Status 查询: 提供查询 Web API 功能在不同浏览器中的 Baseline Status 的能力,例如 "widely supported", "newly supported", "limited support" 等。
  • MCP 协议支持: 完全实现了 MCP 协议的服务器端,能够处理来自 MCP 客户端的请求,并按照 MCP 规范返回响应。
  • 工具注册与执行: 注册 'get_web_feature_baseline_status' 工具,允许 LLM 客户端通过调用该工具查询特定 Web API 的 Baseline Status。
  • 标准化数据输出: 以 MCP 规定的 'TextContent' 格式返回查询结果,方便 LLM 客户端解析和使用。

安装步骤

  1. 安装 Deno: 由于该 MCP 服务器使用 Deno 运行时环境,请确保您的系统已安装 Deno。您可以访问 Deno 官网 获取安装指南。
  2. 获取仓库代码: 从 GitHub 克隆或下载 baseline-mcp-server 仓库的代码到本地。

服务器配置

MCP 客户端需要配置连接 Baseline MCP Server 的信息。以下是 Claude Desktop 和 Visual Studio Code 客户端的配置示例,您需要根据您的 MCP 客户端类型进行相应配置。

注意: 以下配置均为 JSON 格式,您需要将它们添加到您的 MCP 客户端的配置文件中。请勿直接复制粘贴到 'baseline-mcp-server.ts' 或其他服务器代码文件中。 这些配置是用于 MCP 客户端连接服务器的,不是服务器自身的配置。

Claude Desktop 配置

在 Claude Desktop 的 'cline_mcp_settings.json' 文件中,添加 'mcpServers' 配置项,指定 Baseline MCP Server 的启动命令和参数:

{
  "mcpServers": {
    "baseline-mcp-server": {
      "command": "deno",
      "args": [
        "run",
        // 允许网络访问 api.webstatus.dev,用于获取 Web API Baseline Status 数据
        "--allow-net=api.webstatus.dev",
        // 使用 JSR 包管理器运行 baseline-mcp-server
        "jsr:@yamanoku/baseline-mcp-server"
      ]
    }
  }
}

参数解释:

  • '"command": "deno"': 指定使用 'deno' 命令来运行服务器。
  • '"args": [...]': 启动参数列表。
    • '"run"': Deno 的 'run' 子命令,用于运行脚本。
    • '"--allow-net=api.webstatus.dev"': Deno 的权限控制参数,非常重要,它显式允许 Deno 进程访问 'api.webstatus.dev' 这个域名,这是服务器获取 Web API Baseline Status 数据的来源。请务必添加此参数,以确保服务器能够正常工作。
    • '"jsr:@yamanoku/baseline-mcp-server"': 指定要运行的 JSR 包。JSR 是一个 JavaScript 和 TypeScript 的包注册中心,'@yamanoku/baseline-mcp-server' 是该服务器的 JSR 包名。

Visual Studio Code 配置

在 Visual Studio Code 的 'settings.json' 文件中,添加 'mcp.servers' 配置项,配置方式与 Claude Desktop 类似:

{
  "mcp": {
    "servers": {
      "baseline-mcp-server": {
        "command": "deno",
        "args": [
          "run",
          // 允许网络访问 api.webstatus.dev,用于获取 Web API Baseline Status 数据
          "--allow-net=api.webstatus.dev",
          // 使用 JSR 包管理器运行 baseline-mcp-server
          "jsr:@yamanoku/baseline-mcp-server"
        ]
      }
    }
  }
}

参数解释: 与 Claude Desktop 配置相同。

Docker 启动配置 (可选)

如果您希望使用 Docker 运行 Baseline MCP Server,可以按照 README.md 中的 Docker 说明进行操作。MCP 客户端的配置 'args' 部分需要修改为 Docker 启动命令:

{
  "mcpServers": {
    "baseline-mcp-server": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "baseline-mcp-server:latest"
      ]
    }
  }
}

参数解释:

  • '"command": "docker"': 指定使用 'docker' 命令。
  • '"args": [...]': Docker 启动参数。
    • '"run"': Docker 的 'run' 子命令,用于运行容器。
    • '"-i"': 以交互模式运行容器,保持标准输入 STDIN 打开。MCP 服务器通过标准输入/输出 (stdio) 与客户端通信。
    • '"baseline-mcp-server:latest"': 指定要运行的 Docker 镜像名称和标签。请确保您已按照 README.md 中的 Docker 说明构建了该镜像。

基本使用方法

  1. 启动 MCP 服务器: 根据您选择的配置方式(Deno 或 Docker),启动 Baseline MCP Server。

  2. 配置 MCP 客户端: 将上述相应的 JSON 配置添加到您的 MCP 客户端配置文件中,并确保客户端已启用 MCP 功能。

  3. 在 LLM 中使用工具: 在支持 MCP 协议的 LLM 应用中,您可以指示 LLM 调用 'get_web_feature_baseline_status' 工具,并提供您想要查询的 Web API 功能名称作为 'query' 参数。例如,您可以提问:

    "请查询一下 '<dialog>' 元素的浏览器兼容性 Baseline Status。"

    LLM 客户端会将请求发送到 Baseline MCP Server,服务器会查询 Web Platform Dashboard API 并返回 '<dialog>' 元素的 Baseline Status 信息。LLM 即可利用这些信息生成更准确和上下文相关的回复。

注意: Baseline MCP Server 仅提供 Web API Baseline Status 查询功能。其他 MCP 功能(如资源管理、Prompt 模板等)可能未在该 Baseline 版本中实现。

信息

分类

网页与API