返回市场
MCP-时刻服务器

MCP-时刻服务器

作者:momentohq3 星标更新:2025-04-19

项目介绍

Momento MCP Server

一个简单的用于Momento缓存的Model Context Protocol (MCP)服务器实现。

在npmjs上可用,包名为@gomomento/mcp-momento

工具

  • get
    • 获取给定键在缓存中存储的值。
    • 输入参数:
      • key 字符串 -- 在缓存中查找的键。
      • cacheName 字符串 -- 键所在的命名缓存(可选)
    • 返回结果:
      • 如果找到键,则返回Hit及其对应的值。
      • 如果未找到键,则返回Miss
      • 如果请求失败,则返回Error
  • set
    • 使用给定的生存时间(TTL)秒数设置缓存中的值。如果该键已存在值,无论其数据类型如何,都将被新值替换。
    • 输入参数:
      • key: 字符串 -- 要设置在缓存中的键
      • value: 字符串 -- 给定键要设置的值
      • ttl: 整数 -- 将此值保留在缓存中的秒数(可选)
      • cacheName: 字符串 -- 存储键的缓存名称(可选)
    • 返回结果:
      • 如果键成功写入缓存,则返回Success
      • 如果请求失败,则返回Error
  • list-caches
    • 列出您Momento账户中的所有缓存名称。
    • 输入参数:
      • (无)
    • 返回结果:
      • 成功时返回逗号分隔的缓存名称列表。
      • 如果请求失败,则返回Error
  • create-cache
    • 在您的Momento账户中创建一个新的缓存。
    • 输入参数:
      • name: 字符串 - 要创建的缓存名称
    • 返回结果:
      • 如果缓存成功创建,则返回Success
      • 如果请求失败,则返回Error
  • delete-cache
    • 从您的Momento账户中删除一个缓存。
    • 输入参数:
      • name: 字符串 - 要删除的缓存名称
    • 返回结果:
      • 如果缓存成功删除,则返回Success
      • 如果请求失败,则返回Error

快速开始

  1. Momento控制台获取一个Momento API密钥。注意 - 若要运行控制平面工具(list-cachescreate-cachedelete-cache),您必须使用一个超级用户API密钥

  2. 设置环境变量以配置缓存名称和缓存项的生存时间(TTL)。

    # 必需
    export MOMENTO_API_KEY="your-api-key"
    
    # 可选
    export MOMENTO_CACHE_NAME="your-cache-name"
    export DEFAULT_TTL_SECONDS=60
    

如果不设置这些值,它将使用mcp-momento作为缓存名称,并且默认时间为60秒

使用MCP Inspector

npx -y @modelcontextprotocol/inspector npx @gomomento/mcp-momento@latest

使用NPX在Claude桌面

注意:如果您使用的是nodenv,请用您npx二进制文件的路径替换纯npx(例如/Users/username/.nodenv/shims/npx)。

{
  "mcpServers": {
    "momento": {
      "command": "npx",
      "args": [
        "-y",
        "@gomomento/mcp-momento"
      ],
      "env": {
        "MOMENTO_API_KEY": "your-api-key",
        "MOMENTO_CACHE_NAME": "your-cache-name",
        "DEFAULT_TTL_SECONDS": 60
      }
    }
  }
}

本地开发设置

  1. 安装依赖项:

    npm install
    
  2. 构建服务器:

    npm run build
    
  3. 使用MCP Inspector运行

    export MOMENTO_API_KEY="your-api-key"
    npx @modelcontextprotocol/inspector node dist/index.js