使用说明
项目简介
Momento MCP服务器是一个基于Model Context Protocol (MCP) 的后端实现,专注于利用Momento云服务为大型语言模型 (LLM) 应用提供高效的数据存储和访问能力。它允许LLM通过标准化的MCP协议,安全地与Momento缓存进行交互,实现上下文信息的持久化和快速检索,从而增强LLM应用的记忆能力和功能性。
主要功能点
- 数据存储与访问: 提供 'set', 'get', 'delete' 三个核心工具,允许LLM对Momento缓存进行键值对操作,实现数据的存储、读取和删除。
- 多传输协议支持: 支持 Stdio, HTTP, Momento Topic 等多种传输协议,方便在不同环境和架构下部署和使用。
- 工具注册与执行: 实现了MCP服务器的工具注册和执行机制,将Momento缓存操作封装为可被LLM调用的工具。
- 易于集成: 提供了清晰的配置和使用示例,方便与各种MCP客户端(如Claude Desktop、Langchain应用)集成。
安装步骤
-
构建服务器: 打开终端,进入仓库根目录,执行以下命令编译服务器程序:
go build pkg/server/main.go这将在当前目录下生成一个名为 'main' (或 'main.exe',取决于你的操作系统) 的可执行文件。
-
获取 Momento API Key: 访问 Momento Console 并注册或登录您的账户。在控制台中创建或获取您的 Momento API Key,并确保您拥有可用的缓存资源。
服务器配置
MCP客户端需要配置MCP服务器的连接信息才能正常工作。以下是 Claude Desktop 客户端的 'claude_desktop_config.json' 配置文件示例,展示了如何配置 Momento MCP 服务器。其他MCP客户端的配置方式类似,主要需要提供服务器的启动命令、参数和环境变量。
{ "mcpServers": { "momento-mcp-server": { "command": "/path/to/momento-mcp/main", "args": [], "env": { "MOMENTO_API_KEY": "YOUR_MOMENTO_API_KEY", "CACHE_NAME": "your-cache-name" } } } }
配置参数说明:
- 'server name': 'momento-mcp-server' (服务器名称,可自定义)
- 'command': '/path/to/momento-mcp/main' 请替换为 'main' 可执行文件的实际路径。
- 'args': '[]' (参数列表,本服务器配置中无需额外参数,保持为空即可)
- 'env': 环境变量配置,用于服务器运行时获取必要的配置信息。
- 'MOMENTO_API_KEY': 请替换为您在 Momento 控制台获取的 API Key。 这是访问 Momento 服务的凭证。
- 'CACHE_NAME': 请替换为您希望使用的 Momento 缓存的名称。 如果不存在,请在Momento控制台提前创建。
基本使用方法
-
启动服务器: 根据您选择的传输协议,使用不同的命令启动服务器。例如,使用 HTTP 协议,在终端中执行:
TRANSPORT=HTTP go run pkg/server/main.go或使用 Stdio 协议 (默认):
go run pkg/server/main.go或使用 Momento Topic 协议:
TRANSPORT=MOMENTO go run pkg/server/main.go注意: 启动服务器前,请确保 'MOMENTO_API_KEY' 和 'CACHE_NAME' 环境变量已正确设置。您可以通过在执行命令前使用 'export' 命令设置环境变量,例如:
export MOMENTO_API_KEY="YOUR_MOMENTO_API_KEY" export CACHE_NAME="your-cache-name" TRANSPORT=HTTP go run pkg/server/main.go -
配置 MCP 客户端: 根据您使用的 MCP 客户端 (如 Claude Desktop, Langchain 应用),按照其文档配置连接到 Momento MCP 服务器。通常需要提供服务器的启动命令或连接地址(如 HTTP 模式下的 'http://localhost:8080/mcp')。
-
使用工具: 在 LLM 应用中,通过自然语言指令或编程方式调用 MCP 服务器提供的 'get', 'set', 'delete' 工具,即可实现与 Momento 缓存的交互,进行数据存储和检索操作。具体的工具调用方式取决于您使用的 LLM 客户端和工具调用框架。
示例
仓库中 'examples/langchain' 目录提供了 Langchain 客户端的使用示例,展示了如何通过 Langchain 与 Momento MCP 服务器进行交互。您可以参考该示例代码,了解如何在实际应用中使用该 MCP 服务器。
信息
分类
数据库与文件