Ferret

io.github.ferret-project由 GitHub 账号 ferret-project 发布v2026.11.1更新于 Nov 5, 2026

Self-hosted home inventory: find, add and update what you own, maintenance, warranties.

已验证Streamable HTTP可网页运行效率与工作流文件与存储

概览

AI 生成的概览

Ferret 是自托管的家庭物品清单,其 MCP 端点让助手查找、添加和更新家中物品、位置、保修与维护信息。

可以做什么
  • 搜索与提问:按关键词或语义查找物品,依据收据和说明书回答问题,查看位置、历史记录和最近删除
  • 添加与修改:添加物品(包括从照片添加)、更新、移动、删除和恢复物品,以及房产和房间
  • 维护:按日期或使用量跟踪保养,管理保修与索赔、服务商
  • 家庭事务:管理库存与购物清单、借出记录、条码、收藏、保险报告与保额核查、待处理事项
适用场景
适合已自建 Ferret 的家庭,希望助手直接回答“东西放哪了”、登记新购物品、记录用完的库存,或查询即将到期的保养和保修,而无需打开应用。
运行要求
需要一个可通过 Streamable HTTP 访问其 /mcp 路径的 Ferret 服务器,以及在 Ferret 的 Claude & API 中创建的 API 密钥,通过 X-API-Key 请求头(或 Bearer 令牌)发送。服务器本身以 Docker 容器加 SQLite 运行,需配置 AUTH_SECRET、FILES_KEY 和 PUBLIC_URL。
安装前请注意
API 密钥代表某家庭中的某一个人,应妥善保管,尽量设为只读,用完即撤销。写入类工具可添加、移动、删除和恢复物品并改动库存,会直接影响真实家庭数据。请备份 FILES_KEY,否则上传的文件将无法读取。删除的物品可在 30 天内恢复。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Ferret,将其添加到工作区。
  2. 连接 X-API-Key 凭据。它们会被私密存储,绝不会在公开页面上展示。
  3. 为需要使用其工具的对话启用该服务。

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

[Ferret — find anything you own. A self-hosted home inventory for your household.]

[Latest release] [MIT license] [Docker image] [Discord] [Ferret MCP server – quality and maintenance score on Glama]

Try the demo · Install · Help · Discord

Ferret is a home inventory you run yourself. Your household's properties, rooms and boxes; the things in them with photos, receipts and manuals; warranties, maintenance and stock — all on your own server, shared with the people you live with. And when you need something, Ferret tells you where it is.

[Ferret on a phone: the home page, a room with the things kept in it, and maintenance that's due.]

What it does

Add things fast, label boxes, find anything, keep receipts and warranties, schedule maintenance, track stock and the shopping list, remember what you lent, and print an insurance report. Claude can do all of it too, over MCP.

[图片]
Add things fast
Snap a photo, scan a barcode, or photograph a whole room and pick what to keep.
[图片]
Boxes and QR labels
Print labels for boxes and shelves; scan one to see what's inside.
[图片]
Find anything
Search by name, place or meaning — or just ask, “where's the drill?”
[图片]
Receipts and warranties
Keep receipts and manuals with each thing, and hear before a warranty runs out.
[图片]
Maintenance
Filters, tune-ups and checks on a schedule, with reminders when they're due.
[图片]
Stock and shopping
Track what runs out and keep the shopping list in step.
[图片]
Lending
Remember who borrowed the saw, and since when.
[图片]
Insurance report
Everything you own and what it's worth, ready for a claim, plus recall checks.
[图片]
API and MCP
A REST API for scripts, and an MCP server so Claude can look things up and add them.

Why Ferret

  • Your server, your data. One Docker container with SQLite. Uploads are encrypted at rest with a key per household; nightly backups with a restore check; Download everything any time.
  • Households, not just accounts. Owners, admins, members and read-only viewers; invitations by email; single sign-on through your own identity provider.
  • AI is optional. Point it at your own models (Ollama, any OpenAI-compatible server, docling) for suggestions from photos, receipts read for you, Ask Ferret and search by meaning. Nothing is applied without a tap.
  • Made for the phone. An installable app that works offline, with barcode and QR scanning built in.

Run it (Docker)

bash
curl -O https://raw.githubusercontent.com/ferret-project/ferret/main/compose.yamlcurl -o .env https://raw.githubusercontent.com/ferret-project/ferret/main/.env.example# In .env: AUTH_SECRET and FILES_KEY (each: openssl rand -base64 32), and PUBLIC_URLdocker compose up -d

Then open PUBLIC_URL; the first account made is the server admin. Keep a copy of FILES_KEY somewhere safe — without it, uploaded files can't be read. Behind a reverse proxy, set TRUSTED_PROXIES to its address.

The help is built in at /docs: installing, every setting, AI, backups and connecting Claude.

Use it with Claude (MCP)

Ferret has an MCP server built in at /mcp, so Claude (or any MCP client) can use your inventory for you:

  • "Where did we put the tent?"
  • "Add the new blender — it was $89 at Target, it's in the kitchen."
  • "We used the last furnace filter." (stock goes down, and it's on the shopping list)
  • "What maintenance is due this month, and when does the dishwasher warranty end?"

Make a key in Ferret (Household & settings → Claude & API → New key), then:

bash
claude mcp add --transport http ferret https://ferret.example.com/mcp --header "Authorization: Bearer ferret_…"

Other clients that speak Streamable HTTP take the same address and header (X-API-Key: ferret_… works too):

json
{  "mcpServers": {    "ferret": {      "type": "http",      "url": "https://ferret.example.com/mcp",      "headers": { "Authorization": "Bearer ferret_…" }    }  }}

What Claude can do (40 tools):

Findsearch by words and meaning, ask questions answered from receipts and manuals, items, places, history, recently deleted
Add and changeadd items (also from a photo, or a whole room's photos), update, move, delete and restore; properties and rooms
Upkeepmaintenance by date or by use (odometer, engine hours), warranties and claims, service providers
Householdstock and the shopping list, lending, barcodes, collections, the insurance report and coverage check, what needs attention

[Ferret MCP server – quality and maintenance score on Glama]

Safe by design. A key acts for one person in one household, can be read-only (Claude can look and ask, but the tools that change things aren't offered) and can expire; revoke it any time. Viewers' keys are always read-only. Deleted things wait 30 days in Recently deleted, and nothing a model suggests from a photo or document is applied until someone confirms it.

Develop

Requirements: Node 26+, pnpm 10 (npm install -g corepack && corepack enable).

bash
cp .env.example .env      # AUTH_SECRET and FILES_KEY, as abovepnpm installpnpm dev                  # server on :8787, web app on :5173pnpm testpnpm typecheck
PathWhat
apps/serverHono API, Better Auth, Drizzle + SQLite; MCP server; adapters behind ports (src/ports.ts)
apps/webReact 19 + Vite + Tailwind v4 + FlyonUI PWA
apps/docsThe help (VitePress), served at /docs
packages/sharedZod schemas and helpers shared by the server and the web app

License

MIT. Questions, ideas or something odd? Come say hi on Discord.

[图片]

来源:README.md,提交 1b8a59b

工具

0
该服务器需要 API 密钥等凭据,因此 SourceWeft 无法在没有凭据的情况下读取其工具,也未收录。

版本历史

1
  1. v2026.11.1最新Nov 5, 2026

评分

已满足适用检查项的 60%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通必需25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式必需10 分
  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分