食谱管理工具

Paprika是一款用于与Paprika食谱管理器交互的工具集,提供CLI和MCP服务器功能,适用于食谱管理和AI代理集成。

  • by aarons22
  • Go
  • 本地部署
  • 8 星标
  • 更新于
在 GitHub 查看 aarons22/paprika-mcp

使用说明

红辣椒

与互动的工具 红辣椒食谱经理.

它是什么
openapi.yaml OpenAPI 3.0.3规范-非官方Paprika API的机器可读定义
paprika/ Go CLI——具有表+JSON输出和shell补全的资源分组命令
paprika_mcp/ Python FastMCP服务器——将Paprika数据作为人工智能代理的MCP工具公开

命令行界面

安装

从源代码构建 (需要Go 1.21+):

git clone https://github.com/aarons22/paprika-tools
cd paprika-tools/paprika
go build -o paprika .
mv paprika /usr/local/bin/

去安装 (一旦仓库被标记):

go install github.com/aarons22/paprika-tools/paprika@latest

验证

paprika account login --email you@example.com --password yourpassword

令牌会自动保存到 ~/.config/paprika/config.yaml (模式0600)。所有后续命令都从那里读取它——不需要手动复制粘贴。

令牌也通过以下方式接受 PAPRIKA_TOKEN 环境变量。

命令

paprika account login                    # authenticate and get a Bearer token

paprika recipes listRecipes              # all recipes as {uid, hash} pairs
paprika recipes getRecipe <uid>          # full recipe details
paprika recipes upsertRecipe <uid>       # create or update a recipe (gzip multipart)

paprika categories listCategories        # all recipe categories

paprika grocerylists listGroceryLists    # all grocery lists
paprika groceries listGroceryItems       # all grocery items across all lists
paprika groceries createGroceryItems     # add or update grocery items (gzip multipart)

paprika meals listMealPlans              # full meal calendar
paprika meals createMealPlans            # add or update meal plan entries (gzip multipart)

paprika pantry listPantryItems           # pantry inventory

paprika status getSyncStatus             # change counters for all resource types

输出和全局标志

# Raw JSON (pipe-friendly)
paprika recipes listRecipes --json | jq '.[].uid'

# Override API base URL
paprika recipes listRecipes --base-url https://www.paprikaapp.com/api/v2/sync

# Disable colour
paprika recipes listRecipes --no-color

# Shell completions (bash, zsh, or fish)
paprika completion bash >> ~/.bashrc

MCP服务器

FastMCP服务器,将辣椒粉数据作为AI代理(Claude、Cursor等)的工具公开。

快速安装(macOS)

curl -sSL https://raw.githubusercontent.com/aarons22/paprika-tools/main/install.sh | bash

然后运行:

paprika-mcp setup
paprika-mcp install

如果 paprika-mcp 不在您的PATH中,请使用:

$HOME/.local/bin/paprika-mcp --help

CLI命令

命令 描述
paprika-mcp setup 交互式凭据和端口设置
paprika-mcp run 在前台运行MCP服务器
paprika-mcp install 作为macOS LaunchAgent安装(后台服务)
paprika-mcp uninstall 删除LaunchAgent
paprika-mcp update 拉取最新更改,重新安装并重新启动LaunchAgent
paprika-mcp status 检查LaunchAgent状态
paprika-mcp logs 查看服务器日志

可用工具

工具 说明
get_sync_status 获取所有资源类型的更改计数器
list_recipes 将所有食谱列为轻量级 {uid, hash} 成对
get_recipe(uid) 通过UID获取完整的食谱详细信息
list_categories 列出所有食谱类别
list_grocery_lists 列出所有杂货清单
list_grocery_items(list_uid, include_checked?) 列出特定清单中的杂货
list_meal_plans(start_date?, end_date?) 列出膳食计划条目,可选择按日期筛选
get_meals_for_date(date) 获取特定日期的膳食计划条目
add_grocery_item(list_uid, name, ...) 将杂货添加到特定列表中

配置和日志

  • 配置: ~/Library/Application Support/paprika-mcp/config.toml
  • 令牌缓存: ~/Library/Application Support/paprika-mcp/.paprika_token.json
  • 标准输出日志: ~/Library/Logs/paprika-mcp.out.log
  • 标准日志: ~/Library/Logs/paprika-mcp.err.log

备注

  • 大部分为只读; add_grocery_item 是唯一的写入工具
  • API是非官方的,没有记录;看见 API_REFERENCE.md 详见
  • 令牌缓存在磁盘上,并在401上自动刷新

OpenAPI规范

openapi.yaml 是API辣椒粉的权威机器可读定义。它涵盖了身份验证、食谱、类别、杂货清单和物品、膳食计划、餐具室和同步状态。

将其与任何与OpenAPI兼容的工具一起使用——代码生成器、HTTP客户端、文档呈现器,或重新生成CLI:

go install github.com/theaiteam-dev/commandspec@latest
commandspec validate --schema ./openapi.yaml
commandspec init --schema ./openapi.yaml --name paprika --output-dir ./paprika