mcpField
A
allourthings

allourthings

本地服务
github.com/matt-harding生产力14 天前更新

关于 allourthings

AllOurThings 是一套家庭物品管理系统,可记录各类物品,并让 MCP 兼容的 AI 客户端用自然语言查询。数据保存在文件系统目录中,物品记录和附件均可直接浏览和编辑。

主要功能

  1. 01记录物品并添加自定义字段
  2. 02搜索和筛选库存
  3. 03跟踪购买与保修信息
  4. 04附加说明书、收据和照片
  5. 05通过命令行管理库存

适用场景

  1. 01按类别、位置或品牌查找物品
  2. 02查询物品的保修到期时间
  3. 03统计某类物品的支出
  4. 04将收据和说明书与物品归档

MCP 相关

MCP 服务向 Claude Desktop 等 MCP 客户端提供 11 种库存和附件工具,可用于添加、更新、搜索和获取物品。

配置

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

mcp.json · 通用配置
{
"mcpServers": {
"io-allourthings": {
"command": "npx",
"args": [
"-y",
"@allourthings/mcp-server"
],
"env": {
"ALLOURTHINGS_DATA_DIR": "<ALLOURTHINGS_DATA_DIR>"
}
}
}
}
启动命令npx -y @allourthings/mcp-server
需要配置的环境变量
ALLOURTHINGS_DATA_DIRDirectory where inventory data is stored. Defaults to ~/Documents/AllOurThings.

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

安装包
npm@allourthings/mcp-server0.2.0

工具

6

收录的工具列表 · 更新于 2 周前

参数类型必填说明
namestring是项目名称
tagsarray否
brandstring否
modelstring否
notesstring否
imagesarray否图像文件路径或 URL
categorystring否类别(例如 appliance、furniture、subscription)
currencystring否例如 USD、GBP
featuresarray否
locationstring否物品的存放位置
retailerstring否
manual_refstring否手册的 URL 或文件名
purchase_datestring否ISO 日期字符串
purchase_pricenumber否
warranty_expiresstring否ISO 日期字符串

详细介绍

AllOurThings

让 AI 理解你的物品。

AllOurThings 是一套符合你使用习惯的库存管理系统。你可以为任何物品建档,从家用电器到 Pokémon 卡牌都可以,然后用通俗的英文提问,即刻获得答案。

网站: allourthings.io

软件包

软件包npm描述
packages/mcp-server@allourthings/mcp-serverMCP 服务——将你的库存连接到 Claude Desktop 和其他 MCP 客户端
packages/cli@allourthings/cliCLI——在终端中管理你的库存

快速开始

仅限桌面端。 需要运行 macOS、Windows 或 Linux,并安装 Claude Desktop 或其他兼容 MCP 的客户端。

1. 添加到 Claude Desktop

编辑 ~/Library/Application Support/Claude/claude_desktop_config.json(macOS)或 %APPDATA%\Claude\claude_desktop_config.json(Windows):

{
  "mcpServers": {
    "allourthings": {
      "command": "npx",
      "args": ["-y", "@allourthings/mcp-server", "--data-dir", "~/Documents/AllOurThings"]
    }
  }
}

重新启动 Claude Desktop。首次使用时,系统会自动创建你的库存库。

2. 开始提问
  • “添加我的 Bosch 洗衣机,2024 年 1 月从 John Lewis 以 £649 购入,保修期为 2 年”
  • “我有哪些家用电器?”
  • “厨房里有什么?”
  • “我的电视什么时候过保?”
  • “搜索所有 Samsung 相关物品”
  • “我在电子产品上花了多少钱?”

工作原理

MCP 服务通过 11 个工具向任何兼容 MCP 的 AI 客户端提供你的库存:

工具描述
add_item添加新物品(名称必须唯一)
get_item按 ID 或名称获取物品
list_items列出物品,可按类别、子类别或标签筛选
update_item更新物品的字段;将字段设为 null 可清除该字段
delete_item按 ID 删除物品
search_items搜索字段值;必须匹配每个单词
get_item_fields列出目录中使用的字段名称
add_attachment为物品添加 base64 编码的文件(说明书、收据、照片、保修文件或其他文件)
attach_from_url从 URL 下载文件并添加到物品
get_attachment以 base64 格式获取附件
delete_attachment从物品中移除附件

操作失败时会返回 isError: true 和一条消息。参数、验证规则和配置请参阅 MCP 服务 README。


数据

库结构

你的库存保存在一个 库 中——也就是文件系统中的普通目录。每件物品都有自己的文件夹:

~/Documents/AllOurThings/
  items/
    dyson-v15-detect-a1b2c3d4/
      item.json
      manual.pdf
      receipt.jpg
    samsung-65-qled-tv-b5c6d7e8/
      item.json
      warranty.pdf

附件(说明书、收据、照片)与物品 JSON 文件放在一起。你可以直接在 Finder 或文件资源管理器中浏览和编辑该库。

物品架构

每件物品都有必填字段(id、name、created_at、updated_at)和常见的可选字段:

category subcategory brand model purchase_date purchase_price currency warranty_expires retailer location features notes tags attachments

attachments 字段用于关联存储在物品文件夹中的 PDF 和图片:

{
  "attachments": [
    { "filename": "manual.pdf",  "type": "manual"   },
    { "filename": "receipt.jpg", "type": "receipt"  },
    { "filename": "photo.jpg",   "type": "photo"    }
  ]
}

你也可以添加任意自定义字段——这些字段会按原样保留。


CLI

面向高级用户和脚本的独立终端工具。支持 macOS、Windows 和 Linux。无需 AI 客户端。

# Run without installing
npx @allourthings/cli list

# Or install globally
npm install -g @allourthings/cli
命令
allourthings init                                    # choose your vault folder (run once)
allourthings search <query>                          # search field values
allourthings list [-c <category>] [-s <subcategory>] [-t <tag>]
allourthings get <id-or-name>                        # show full item detail
allourthings add <name> [options]                    # add a new item
allourthings update <id> [options]                   # update fields; --unset to clear
allourthings delete <id>                             # delete an item (asks to confirm)
allourthings attach add|url|get|rm ...               # manage attachments

添加 --json 可输出便于机器读取的内容。所有选项请参阅 CLI README。

示例
# Add an item
allourthings add "Bosch Washing Machine" --brand Bosch --model "WGG244A9GB" \
  --category appliance --location kitchen \
  --purchase-date 2024-01-15 --price 649 --currency GBP \
  --warranty 2026-01-15 --retailer "John Lewis"

# Search and pipe to jq
allourthings search "warranty" --json | jq '[.[] | {name, warranty_expires}]'

# Attach a manual
allourthings attach add 6164c373 ~/Downloads/bosch-manual.pdf --label "User manual"

# Update a field
allourthings update 6164c373 --warranty 2027-01-15

# Use a custom data directory
allourthings --data-dir ~/Dropbox/AllOurThings list

开发

前置条件
  • Bun — brew install bun
  • Task — brew install go-task
安装依赖
bun install
任务
任务描述
task dev初始化知识库 + 打开 MCP Inspector——最快的测试方式
task dev:mcp以监视模式启动 MCP 服务(stdio)
task test:run运行自动化测试
task seed向开发知识库追加测试条目
task seed:reset清空开发知识库并重新初始化
task inspect打开 MCP Inspector(开发模式,无需构建)
task inspect:prod构建后,针对编译后的 dist 打开 MCP Inspector
task build将 MCP 服务编译到 dist/
task build:cli将 CLI 编译到 dist/
task cli -- <args>使用开发知识库从源代码运行 CLI,例如:task cli -- list
task typecheck运行 TypeScript 类型检查
task clean移除 dist/
task clean:vault删除本地开发知识库

默认情况下,所有任务都使用 ./dev-vault。使用 DATA_DIR=/your/path task <command> 覆盖。


许可证

MIT — 详见 LICENSE。

评论

支持 Markdown

第一次接触 MCP?

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

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