项目简介

Solid MCP服务器是Solid协议与Anthropic Model Context Protocol (MCP) 的集成实现。它使得大型语言模型(LLM)能够以安全和用户控制的方式读取、写入、搜索和管理存储在Solid Pod中的数据,扩展了AI应用访问去中心化个人数据的能力。

主要功能点

  • 资源管理: 支持对Solid Pod中的文件和文件夹进行读取、写入、删除和列表操作。
  • 智能搜索: 允许LLM在Solid Pod中搜索特定内容或资源。
  • 容器操作: 能够创建新的数据容器(文件夹)。
  • 身份验证: 支持多种Solid协议的身份验证方式(如Bearer Token, DPoP),确保数据访问的安全性。
  • 标准化接口: 通过Model Context Protocol提供标准化的JSON-RPC接口,方便与各类LLM客户端集成。

安装步骤

  1. 确保您的系统已安装Node.js和npm。
  2. 在您的项目中,通过npm安装Solid MCP库:
    npm install @jeswr/solid-mcp
  3. (可选但推荐)您可能需要根据项目需求,创建一个简单的启动脚本(例如,基于'lib/examples/mcp-adapter-example.ts'进行编译和调整),以解析命令行参数并将它们传递给'createSolidMcpAdapter'函数。

服务器配置

MCP客户端需要以下配置信息来连接和使用Solid MCP服务器。这些信息应由您的AI应用或MCP客户端根据实际部署情况进行配置,无需手动编写代码。

{
  "name": "Solid MCP 服务器",
  "description": "通过Model Context Protocol (MCP) 提供对Solid Pod资源的访问",
  "command": "node",
  "args": [
    "path/to/your/solid-mcp-adapter-entrypoint.js",
    "--port", "3000",
    "--podUrl", "https://your-solid-pod-url.net/",
    "--authType", "bearer",
    "--authToken", "your-solid-access-token"
  ],
  "arg_descriptions": {
    "path/to/your/solid-mcp-adapter-entrypoint.js": "指向您编译和部署的Solid MCP适配器服务器脚本的路径,例如 'dist/mcp-adapter-example.js'。这是启动MCP服务器的入口点。",
    "--port": "MCP服务器监听的HTTP端口,例如 '3000'。这是MCP客户端连接服务器时需要指定的端口。",
    "--podUrl": "您要连接的Solid Pod的根URL,例如 'https://your-solid-pod-url.net/'。",
    "--authType": "Solid Pod认证类型,例如 'bearer' (Bearer Token) 或 'dpop' (DPoP Token)。",
    "--authToken": "用于Solid Pod认证的访问令牌。在生产环境中,请务必确保令牌的安全存储和管理,避免直接暴露在配置中。"
  }
}

请注意:'path/to/your/solid-mcp-adapter-entrypoint.js'应替换为实际启动MCP适配器服务器的脚本路径。上述'args'参数仅为示例,您可能需要根据实际使用的认证方式调整或添加其他认证参数。

基本使用方法

在您的AI应用或MCP客户端中,配置好上述服务器连接信息后,LLM即可通过MCP协议调用Solid MCP服务器提供的工具。例如,一个LLM可能会发出类似如下的逻辑请求(MCP客户端会将其转换为底层的JSON-RPC请求并发送给Solid MCP服务器):

  • 读取资源: 请求读取用户在Solid Pod中的个人资料卡片,例如 'solid:///profile/card'。
  • 写入资源: 请求向 'solid:///notes/meeting.txt' 路径写入会议纪要文本。
  • 列出容器: 请求列出 'solid:///public/' 目录下的所有文件和子文件夹。
  • 搜索资源: 请求在整个Solid Pod中搜索包含关键词“报告”的文件或容器。

信息

分类

AI与计算