项目简介
Groceries MCP Server 是一个基于 Model Context Protocol (MCP) 的服务器实现。它为大型语言模型 (LLM) 客户端提供了一种标准化的方式,使其能够与不同的在线超市供应商(如 Rami Levy, Keshet)的API进行交互。通过这个服务器,LLM可以执行商品搜索、管理购物车等任务,从而帮助用户完成在线购物流程。
主要功能点
- 商品搜索: 允许LLM根据用户输入的商品名称,通过集成的特定超市API查找并获取相关的商品信息(如ID、名称、价格)。
- 购物车管理: 支持LLM将找到的商品按照指定数量添加到用户的在线购物车中。这使得LLM可以根据用户的购物清单自动填充购物车。
- 供应商集成: 支持集成不同的超市供应商API,并通过命令行参数选择要连接的供应商。
安装步骤
要运行 Groceries MCP Server,您需要安装 Python 环境和相关的依赖库。具体步骤请参考项目仓库的 'README.md' 文件,通常包括以下步骤:
- 克隆仓库到本地。
- 根据 'env.template' 文件创建 '.env' 文件,并填写必要的环境变量,特别是连接超市API所需的密钥和账户信息。
- 安装项目依赖。仓库可能使用 'uv' 或其他包管理器,请按照 'README.md' 中的说明操作,例如运行 'make install' 或类似的命令。
服务器配置
这个MCP服务器设计为由兼容MCP协议的LLM客户端连接和使用。客户端需要配置服务器的启动方式,通常在客户端的配置文件中指定。配置信息类似JSON格式,但具体结构取决于客户端。核心配置项包括:
- 服务器名称: 一个字符串,用于标识这个MCP服务器,例如 'groceries'。
- 启动命令 (command): 启动服务器的可执行命令。例如 'uv'。
- 启动参数 (args): 传递给启动命令的参数列表。例如 'run mcp-groceries-server --vendor [供应商名称]'。
- '[供应商名称]' 是一个占位符,实际使用时需要替换为要连接的具体超市供应商名称,如 'rami-levy' 或 'keshet'。
- 环境变量 (env): 一个键值对映射,包含服务器运行所需的额外环境变量,特别是连接超市API所需的敏感信息,如 'VENDOR_API_KEY' 和 'VENDOR_ACCOUNT_ID'。
例如,在某些客户端配置中,可能需要填写类似以下逻辑的信息:设置一个名为 "groceries" 的MCP服务器,其启动命令是 "uv",启动时附加参数 "run mcp-groceries-server" 和 "--vendor [您选择的供应商名称]",并传入相应的 API 密钥和账户ID 作为环境变量。
基本使用方法
- 按照安装步骤准备好服务器环境并配置好 '.env' 文件。
- 在LLM客户端中,按照其文档配置一个新的MCP服务器连接,使用上面提到的服务器名称、命令、参数和环境变量。
- 启动LLM客户端。如果配置正确,客户端将能够连接到 Groceries MCP Server。
- LLM客户端现在可以通过MCP协议调用服务器提供的工具(例如 'search' 或 'add_items_to_cart')和获取Prompt模板(例如 'start_shopping'),从而执行商品搜索、添加到购物车等与超市API交互的任务。
信息
分类
商业系统