mcpField
H
Hermes Grocy MCP

Hermes Grocy MCP

本地服务
github.com生产力413 周前更新

关于 Hermes Grocy MCP

Hermes Grocy MCP 将 MCP 客户端连接到可自托管的家庭 ERP Grocy,并提供有文档说明的库存和购物工具。它支持读取数据,也可直接修改库存、清单、家务、任务及通用实体。

主要功能

  1. 01查看产品、库存和库存条目
  2. 02按条码搜索或查找产品
  3. 03管理购物清单项目
  4. 04添加、消耗和盘点库存
  5. 05读取和修改家务、任务及实体

适用场景

  1. 01检查即将到期、过期或缺货的产品
  2. 02在采购或消耗后更新家庭库存
  3. 03将产品加入购物清单
  4. 04查看家务并标记为完成

MCP 相关

将 Grocy 状态、产品、库存、购物清单、家务、任务和实体操作作为 MCP 工具提供。可写工具会修改 Grocy 数据;访问私有实例或执行写入需要 GROCY_API_KEY。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"rusty4444-hermes-grocy": {
"command": "uvx",
"args": [
"hermes-grocy-mcp"
],
"env": {
"GROCY_BASE_URL": "<GROCY_BASE_URL>",
"GROCY_API_KEY": "<GROCY_API_KEY>"
}
}
}
}
启动命令uvx hermes-grocy-mcp
需要配置的环境变量
GROCY_BASE_URLGrocy base URL, with or without /api
GROCY_API_KEY密钥Grocy API key for private instances or write access

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
pypihermes-grocy-mcp0.2.1

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

Grocy MCP

一个适用于 Grocy 的模型上下文协议(MCP)服务。Grocy 是一款可自托管的家庭 ERP,用于管理杂货、库存、家务、电池、食谱、任务和购物清单。

此服务专注于通过通用 REST 客户端不便处理的、适合 AI 的家庭管理操作:

  • 检查 Grocy 系统/版本状态
  • 列出、搜索和查看产品
  • 读取当前库存、易变库存、产品库存详情和单个库存条目
  • 列出当前购物清单项目,以及从购物清单中添加/移除产品
  • 按条形码/Grocycode 查找产品
  • 列出和查看任意 /api/objects/{entity} 实体
  • 根据 JSON 创建/更新通用实体对象
  • 添加、消耗和盘点产品库存
  • 从购物清单中添加/移除产品数量

为什么要开发此项目

Grocy 拥有完善的 REST API,但 MCP 支持很少,而且通常要么不完整,要么与某个客户端的工作流紧密耦合。此软件包为 Hermes、Claude Desktop、Cursor 和其他 MCP 客户端提供了一组小巧、明确且有文档说明的工具。

安装

pipx install git+https://github.com/rusty4444/grocy-mcp.git

也可以从源码检出目录安装:

python -m venv .venv
source .venv/bin/activate
pip install -e .

配置

服务从环境变量中读取配置:

变量必需默认值说明
GROCY_BASE_URL否https://demo.grocy.infoGrocy 基础 URL,可带或不带 /api
GROCY_API_KEY对公开/演示只读实例为否,对私有实例/写入访问为是未设置作为 GROCY-API-KEY 发送的 Grocy API 密钥
GROCY_TIMEOUT否20HTTP 超时时间,单位为秒

Grocy API 密钥可在 Grocy 的 Manage API keys 下管理。API 接受 GROCY-API-KEY 标头。

MCP 客户端配置

{
  "mcpServers": {
    "grocy": {
      "command": "grocy-mcp",
      "env": {
        "GROCY_BASE_URL": "https://grocy.example.com",
        "GROCY_API_KEY": "your-api-key"
      }
    }
  }
}

工具

工具用途
grocy_system_infoGrocy 版本和运行时详情
grocy_list_products列出已配置的产品
grocy_search_products按名称/描述搜索产品
grocy_get_product获取单个产品对象
grocy_lookup_product_by_barcode查询条形码/Grocycode
grocy_stock_overview当前库存条目
grocy_volatile_stock即将到期、已过期或缺失的产品
grocy_product_stock_details单个产品的详细库存状态
grocy_product_stock_entries按下次使用顺序排列的单个库存条目
grocy_common_entities可与 CRUD 工具搭配使用的常见通用实体名称
grocy_list_shopping_lists已配置的购物清单
grocy_list_shopping_list_items当前购物清单条目,可按清单 ID 筛选
grocy_list_entity列出任意通用 Grocy 实体
grocy_get_entity_object获取任意通用实体对象
grocy_create_entity_object根据 JSON POST 通用实体对象
grocy_update_entity_object根据 JSON PUT 通用实体对象
grocy_add_stock向库存中添加产品数量
grocy_consume_stock消耗/移除库存中的产品数量
grocy_inventory_product设置产品盘点数量
grocy_add_product_to_shopping_list向购物清单添加产品
grocy_remove_product_from_shopping_list从购物清单移除产品
grocy_set_userfields设置实体对象上的用户字段值
grocy_list_chores列出家务,包括计算得出的下次到期时间
grocy_execute_chore执行家务(标记为已完成),可选择回填日期
grocy_list_tasks列出任务

开发与验证

python -m venv .venv
source .venv/bin/activate
pip install -e '.[dev]'
ruff check .
pytest
python scripts/live_readonly_test.py

实时只读测试默认使用 https://demo.grocy.info,以避免修改共享基础设施中的数据。此服务已通过 Grocy API 4.6.0 验证。要测试写入路径,请使用私有 Grocy 实例和 GROCY_API_KEY。

安全

支持写入的工具会直接修改 Grocy 数据。使用公开演示实例时,优先使用只读工具。请将 GROCY_API_KEY 保存在 MCP 客户端环境配置或密钥管理器中,切勿将其提交到源代码管理。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。