DenoKV MCP 服务器使用说明
项目简介
本项目 'DenoKV MCP Server' 是一个实现了 Model Context Protocol (MCP) 协议的服务器,它基于 Deno 的内建 KV 数据库 (Deno KV) 构建,旨在为大型语言模型 (LLM) 应用提供可靠、高效的键值数据存储和访问服务。通过标准化的 MCP 接口,LLM 客户端可以方便地利用此服务器存储和检索上下文信息,或执行与数据存储相关的工具。
主要功能点
- 资源管理: 基于 Deno KV 数据库,提供稳定可靠的键值对数据存储。
- 工具注册与执行: 内置 'denokv_set', 'denokv_get', 'denokv_delete' 三个工具,允许 LLM 客户端通过调用这些工具来操作 Deno KV 数据库中的数据。
- 'denokv_set': 向 Deno KV 数据库中设置键值对。
- 'denokv_get': 从 Deno KV 数据库中获取指定键的值。
- 'denokv_delete': 从 Deno KV 数据库中删除指定的键值对。
- MCP 协议兼容: 完全遵循 MCP 协议规范,能够与任何支持 MCP 协议的 LLM 客户端进行通信。
- Stdio 传输: 使用标准输入输出 (Stdio) 作为默认的传输协议,方便部署和集成。
安装步骤
- 安装 Deno: 确保您的系统已安装 Deno 运行时环境。您可以访问 https://deno.land 按照官方指南安装。
- 无需额外安装: 本项目以 JSR 包的形式发布,可以直接通过 Deno 运行时环境执行,无需手动下载或构建代码。
服务器配置
MCP 客户端需要配置服务器的启动命令才能连接到 'DenoKV MCP Server'。以下是配置信息,通常在客户端的 MCP 服务器配置中添加:
{ "mcpServers": { "denokv": { "command": "deno", "args": [ "--unstable-kv", "jsr:@divy/mcp-deno-kv", "./.deno_kv_data" // (可选) Deno KV 数据存储路径,默认为当前目录下的 .deno_kv_data 目录 ] } } }
配置参数说明:
- '"denokv"': 服务器名称,客户端用此名称引用该服务器。可以自定义。
- '"command": "deno"': 启动服务器的命令,这里使用 'deno' 运行时。
- '"args"': 启动参数数组,包含以下参数:
- '"--unstable-kv"': Deno KV 功能目前处于不稳定状态,需要添加此标志启用。
- '"jsr:@divy/mcp-deno-kv"': 指定要运行的 JSR 包,即 'DenoKV MCP Server' 的入口。
- '"./.deno_kv_data"': (可选) 指定 Deno KV 数据库的数据存储路径。您可以根据需要修改此路径,或者省略此参数使用默认路径(当前工作目录下的 '.deno_kv_data' 目录)。
注意: 请确保 MCP 客户端能够找到 'deno' 命令。如果 'deno' 未添加到系统环境变量 'PATH' 中,您可能需要提供 'deno' 命令的完整路径。
基本使用方法
- 启动服务器: 在配置好 MCP 客户端后,启动客户端,客户端会自动根据配置启动 'DenoKV MCP Server'。
- 客户端调用工具: LLM 应用可以通过 MCP 客户端 SDK,调用 'DenoKV MCP Server' 提供的工具,例如:
- 使用 'denokv_set' 工具存储数据。
- 使用 'denokv_get' 工具检索数据。
- 使用 'denokv_delete' 工具删除数据。
具体的工具调用方式和参数格式,请参考 MCP 客户端 SDK 的文档和 'DenoKV MCP Server' 提供的工具定义 (例如 'denokv_set' 工具需要 'key' 和 'value' 参数)。客户端会通过 MCP 协议与服务器进行通信,完成数据操作。
示例 (LLM 客户端调用 'denokv_set' 工具):
{ "jsonrpc": "2.0", "method": "tool_call", "params": { "tool_name": "denokv_set", "arguments": { "key": ["my_app", "user_id_123", "name"], "value": "Alice" } }, "id": "1" }
此示例展示了客户端如何通过 'tool_call' 方法调用 'denokv_set' 工具,将键 '["my_app", "user_id_123", "name"]' 的值设置为 '"Alice"'。
信息
分类
数据库与文件