Labsco
MCP SERVER

StashDog MCP Server

by dogfoodlab-io

Manage a StashDog inventory in plain sentences — add and find items, run collections and tags, import from a URL, and ask what you own.

Note-Taking & Personal Knowledge Bases
Summary
Eleven tools instead of fifty, because the parsing happens inside them.

Most inventory servers give you one tool per operation and let the model assemble arguments. This one folds add, update, search and delete into a single item tool that reads the sentence — UUIDs, hashtags, quoted names, `field: value` pairs and limit words are all recognised. The upside is a small tool list and calls that read like speech; the thing to watch is that a misparse and a correct parse look the same in the transcript, so check what came back after a bulk edit.

What it is

An MCP server for StashDog, a personal inventory service. The design choice throughout is natural language: rather than a tool per field, each tool takes a sentence and parses it, so "Add a new MacBook Pro with tags electronics, work, expensive" is a single call.

What you get
  • Items added, updated, searched and deleted from a plain-language instruction — `manage_inventory_items`
  • Collections created, renamed, deleted, and items moved in and out of them — `manage_collections`
  • Tags created, searched, renamed and deleted as a set, rather than edited item by item — `manage_tags`
  • Items imported straight from a URL, such as a product page — `import_from_url`
  • Search that handles a described question rather than a keyword — "kitchen items that are favorited", "storage containers with more than 5 items" — plus inventory statistics — `smart_search`, `get_inventory_stats`
  • Account-side reads for users, notifications, groups and subscriptions — `manage_users`, `manage_notifications`, `manage_groups`, `manage_subscriptions`
  • Login handled in the session when you would rather not put a long-lived token in a config file — `authenticate`
Requirements

A StashDog account and its Supabase connection details: `STASHDOG_SUPABASE_URL` and `STASHDOG_SUPABASE_ANON_KEY`, plus either `STASHDOG_AUTH_TOKEN` or a sign-in through the `authenticate` tool; `STASHDOG_EMAIL` and `STASHDOG_PASSWORD` enable auto-login. The README is explicit that it uses user access tokens only and that you should not supply a service role key. There is no published package: clone, `npm install`, `npm run build`, and point your client at `dist/index.js`. The npm name is `stashdog-mcp-server` (1.0.0 in package.json) with a binary of the same name.