DenoKV MCP 服务器

一个用于与Deno KV实例交互的MCP服务器,提供键值存储操作功能。

  • by joshuayoes
  • TypeScript
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 joshuayoes/deno-kv-mcp

使用说明

DenoKV MCP服务器

用于聊天的MCP服务器 Deno KV 实例

与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中运行它!

{
  "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 (string):要设置的值(JSON字符串)。
    • expireIn (数字,可选):密钥的生存时间(TTL),单位为毫秒。
  • get:从Deno KV存储中按键获取值。
    • key (字符串数组):获取的键。
    • consistency (枚举:“strong”|“final”,可选):读取的一致性级别。
  • delete:从Deno KV存储中删除键值对。
    • key (字符串数组):要删除的键。
  • getMany:从Deno KV存储中按键获取多个值。
    • keys (字符串数组数组):要获取的键。
    • consistency (枚举:“strong”|“final”,可选):读取的一致性级别。
  • list:根据选择器列出键值对。
    • prefix (字符串数组,可选):要列出的键前缀(例如。, ["users"]).
    • start (字符串数组,可选):范围查询的开始键(例如。, ["orders", "2023"]).
    • end (字符串数组,可选):范围查询的结束键(例如。, ["orders", "2024"]).
    • limit (整数、正数、可选):要返回的最大条目数。
    • consistency (枚举:“strong”|“final”,可选):列表操作的一致性级别。
    • batchSize (整数、正数、可选):每批内部要获取的条目数。
    • reverse (boolean,可选):是否颠倒条目的顺序。
    • 注: 必须提供 prefix, start,或(start 和 end)参数。 end 需要 start 或 prefix.

地方发展设置

如果您更喜欢从此存储库的本地克隆运行服务器(例如,用于开发或测试),请使用以下配置:

德诺

{
  "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 值与您的具体细节。

节点

使用节点(>=v22.7.0),我们也可以直接运行服务器,而无需构建步骤!

你可能需要跑步 deno install 首先添加a 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数据库的路径。
    • 对于a 本地数据库这应该是文件路径(例如。, ./my-kv.db).
    • 对于a 远程Deno部署数据库这应该是连接URL(例如。, https://api.deno.com/databases/<UUID>/connect).
  • DENO_KV_ACCESS_TOKEN:必填 只有当 DENO_KV_PATH 指向远程Deno Deploy数据库。这应该是您的Deno Deploy个人访问令牌。