关于 DenoKV MCP Server
DenoKV MCP Server 将 Deno KV 的键值存储操作提供给 MCP 客户端,适用于需要通过对话读写本地或远程数据库的场景。它支持单项及批量读取、条件列举和带过期时间的写入。
主要功能
- 01设置键值并指定过期时间
- 02按键读取并选择一致性级别
- 03批量读取多个键
- 04按前缀或范围列举条目
- 05删除键值条目
适用场景
- 01通过客户端写入或更新 Deno KV 数据
- 02查询单个或多个数据库键
- 03按前缀筛选并检查存储条目
MCP 相关
它作为 MCP 服务向客户端提供 Deno KV 的设置、读取、批量读取、列举和删除工具。可连接本地数据库或 Deno Deploy 远程数据库。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
DenoKV MCP 服务
一个用于与 Deno KV 实例聊天的 MCP 服务
与 MCP 客户端搭配使用
Deno(推荐)
将此服务与 Claude Desktop 或 Cursor 等 MCP 客户端集成的最简单方法是使用已发布的 JSR 包。按如下方式配置 MCP 客户端:
{
"mcpServers": {
"denokv": {
"command": "deno",
"args": [
"run",
"--unstable-kv",
"--allow-env",
"--allow-net",
"--allow-read",
"--allow-write",
"--allow-run",
"jsr:@joshuayoes/deno-kv-mcp"
],
"env": {
"DENO_KV_PATH": "path/to/your/kv.db OR https://api.deno.com/databases/<UUID>/connect",
"DENO_KV_ACCESS_TOKEN": "<YOUR_DENO_DEPLOY_ACCESS_TOKEN>" // Only needed for remote DB
}
}
}
}
请务必将 env 值替换为你的具体信息。
Node
了解以下信息后:
- Deno 有适用于 Node 的官方 KV 客户端库
- Deno 有一个 与 Node 的兼容层,
- 尽管 jsr 包无法通过 npx 原生运行,但借助这个 xjsr npm 包,我们可以使用 npx 和 node 运行 jsr 包。
我们可以在 Node 中运行它!
{
"mcpServers": {
"denokv": {
"command": "npx",
"args": ["xjsr", "@joshuayoes/deno-kv-mcp@latest"],
"env": {
"DENO_KV_PATH": "path/to/your/kv.db OR https://api.deno.com/databases/<UUID>/connect",
"DENO_KV_ACCESS_TOKEN": "<YOUR_DENO_DEPLOY_ACCESS_TOKEN>" // Only needed for remote DB
}
}
}
}
请务必将 env 值替换为你的具体信息。
如果你想更进一步,也可以将 npx 替换为 bunx。
可用工具
此服务提供以下工具:
set:在 Deno KV 存储中设置键值对。key(字符串数组):要设置的键。value(字符串):要设置的值(JSON 字符串)。expireIn(数字,可选):键的生存时间(TTL),单位为毫秒。
get:根据键从 Deno KV 存储中获取值。key(字符串数组):要获取的键。consistency(枚举:"strong" | "eventual",可选):读取的一致性级别。
delete:从 Deno KV 存储中删除键值对。key(字符串数组):要删除的键。
getMany:根据多个键从 Deno KV 存储中获取多个值。keys(字符串数组的数组):要获取的键。consistency(枚举:"strong" | "eventual",可选):读取的一致性级别。
list:根据选择器列出键值对。prefix(字符串数组,可选):要列出的键前缀(例如,["users"])。start(字符串数组,可选):范围查询的起始键(例如,["orders", "2023"])。end(字符串数组,可选):范围查询的结束键(例如,["orders", "2024"])。limit(正整数,可选):要返回的条目数上限。consistency(枚举:"strong" | "eventual",可选):列表操作的一致性级别。batchSize(正整数,可选):内部每批获取的条目数。reverse(布尔值,可选):是否反转条目顺序。- 注意: 必须提供
prefix、start或(start和end)参数。end必须与start或prefix一同提供。
本地开发设置
如果你更愿意从此仓库的本地克隆运行服务(例如用于开发或测试),请改用以下配置:
Deno
{
"mcpServers": {
"denokv": {
"command": "deno",
"args": [
"run",
"--unstable-kv",
"--allow-env",
"--allow-net",
"--allow-read",
"--allow-write",
"--allow-run",
"/path/to/your/mcp-deno-kv/index.ts" // Replace with the actual path to index.ts
],
"env": {
"DENO_KV_PATH": "path/to/your/kv.db OR https://api.deno.com/databases/<UUID>/connect",
"DENO_KV_ACCESS_TOKEN": "<YOUR_DENO_DEPLOY_ACCESS_TOKEN>" // Only needed for remote DB
}
}
}
}
请务必将 /path/to/your/mcp-deno-kv/index.ts 和 env 值替换为你的具体信息。
Node
使用 node(>=v22.7.0),我们也可以直接运行服务,无需构建步骤!
你可能需要先运行 deno install,以添加 node_modules 文件夹。
{
"mcpServers": {
"denokv": {
"command": "node",
"args": [
"--experimental-transform-types",
"/path/to/your/mcp-deno-kv/index.ts" // Replace with the actual path to index.ts
],
"env": {
"DENO_KV_PATH": "path/to/your/kv.db OR https://api.deno.com/databases/<UUID>/connect",
"DENO_KV_ACCESS_TOKEN": "<YOUR_DENO_DEPLOY_ACCESS_TOKEN>" // Only needed for remote DB
}
}
}
}
请务必将 /path/to/your/mcp-deno-kv/index.ts 和 env 值替换为你的具体信息。
如果你想更进一步,也可以将 npx 替换为 bunx。
环境变量
此服务需要设置以下环境变量:
DENO_KV_PATH:指定 Deno KV 数据库的路径。- 对于本地数据库,应填写文件路径(例如,
./my-kv.db)。 - 对于远程 Deno Deploy 数据库,应填写连接 URL(例如,
https://api.deno.com/databases/<UUID>/connect)。
- 对于本地数据库,应填写文件路径(例如,
DENO_KV_ACCESS_TOKEN:仅当DENO_KV_PATH指向远程 Deno Deploy 数据库时才需要。此变量应填写你的 Deno Deploy 个人访问令牌。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。