使用说明

项目简介

Sanity MCP Server 是一个基于 Model Context Protocol (MCP) 标准构建的后端服务,专为 LLM (大型语言模型) 应用设计。它充当 LLM 客户端与 Sanity.io 内容管理系统之间的桥梁,使得 LLM 能够以标准化的方式获取 Sanity.io 平台上的上下文信息和利用其功能。该服务器采用 stdio 传输协议,易于集成到任何支持 MCP 协议的 LLM 客户端中。

主要功能点

  • 内容检索与查询: 通过 GROQ 查询语言,LLM 可以灵活检索 Sanity.io 中存储的各种内容,并支持实时订阅内容更新。
  • 文档操作: LLM 可以借助服务器提供的工具,在 Sanity.io 中执行文档的创建、更新、删除和发布等操作,实现对内容的全生命周期管理。
  • 内容发布版本管理: 支持内容发布版本的创建、添加文档到版本、从版本移除文档等功能,便于 LLM 应用处理多版本内容。
  • Schema 信息获取: LLM 可以查询 Sanity.io 的 Schema 信息,了解内容模型结构,从而更好地构建查询和操作指令。
  • 语义搜索: 利用 Sanity.io 的 embeddings 功能,LLM 可以执行基于语义的文档搜索,提升信息检索的准确性和效率。
  • 项目和工作室管理: 提供列出 Sanity.io 项目和工作室的功能,方便 LLM 应用进行项目环境的感知和管理。

安装步骤

  1. 确保已安装 Node.js 和 npm。
  2. 克隆仓库到本地:
    git clone https://github.com/sanity-io/sanity-mcp-server.git
    cd sanity-mcp-server
  3. 安装项目依赖:
    npm install

服务器配置

MCP 服务器主要通过环境变量进行配置。以下是一个用于 MCP 客户端(例如 Claude AI)的 JSON 配置示例。客户端需要配置 MCP 服务器的启动命令 (command) 及其参数 (args) 才能与 MCP 服务器建立连接。

{
  "tools": [
    {
      "name": "sanity-mcp",  // 服务名称,在客户端配置中用于引用此服务
      "type": "mcp",        // 工具类型,必须设置为 "mcp"
      "path": "/path/to/sanity-mcp-server/dist/index.js", // MCP 服务器可执行文件路径,请替换为实际路径,例如:/path/to/sanity-mcp-server/dist/index.js
      "env": {
        "SANITY_TOKEN": "your_sanity_api_token",    // 您的 Sanity API Token,用于服务器身份验证
        "SANITY_PROJECT_ID": "your_sanity_project_id", // 您的 Sanity Project ID
        "SANITY_DATASET": "your_sanity_dataset",      // 您的 Sanity Dataset 名称
        "SANITY_API_VERSION": "2025-03-15"        // Sanity API 版本,建议使用最新稳定版本,例如:2025-03-15
      }
    }
  ]
}

基本使用方法

  1. 构建项目
    npm run build
  2. 启动服务器
    npm start
    或者直接运行编译后的 JavaScript 文件:
    node dist/index.js
  3. 在 MCP 客户端中配置: 根据 MCP 客户端(如 Claude AI)的要求,配置上述 JSON,并确保 'path' 指向正确的 'dist/index.js' 文件。同时,配置正确的环境变量,例如 'SANITY_TOKEN'、'SANITY_PROJECT_ID' 和 'SANITY_DATASET'。
  4. 使用工具: 在 LLM 客户端中,即可调用 Sanity MCP Server 提供的工具,与 Sanity.io 内容平台进行交互。具体工具列表和使用方法,请参考仓库 README 或通过 'listTools' MCP 方法查询。

信息

分类

数据库与文件