Connecting to Your AI Tools
Storing items is half the job. This is how your library plugs into the tools you actually work in. There are three ways to reach it — pick per situation:
- Live over MCP — the agent reaches into your library on demand. Recommended for most people.
- Local copies via
pull— files in each tool's commands folder: no token, works offline. Optional. - Open in an AI — one click opens a prompt in Claude/ChatGPT/Perplexity.
1. Connect over MCP (recommended)
MCP (Model Context Protocol) is the open standard AI tools use to reach outside sources. Connect once per tool and your agent can search your library, read your rules and docs, and use anything you've marked with / as a slash command — always your latest version.
Try it first — no account needed. Run the server with no token and it serves a free, read-only sample of our prebuilt library — ready-made prompts, rules, and skills — right inside your editor. The two-minute way to see MCP in action before you sign up. Add a token later to switch to your own & team libraries. Using the free sample is subject to our Terms.
For Claude Code, drop the token from the one-liner:
claude mcp add -s user aisd -- cmd /c npx -y "@aistoragedepot/mcp"
(macOS/Linux: claude mcp add -s user aisd -- npx -y @aistoragedepot/mcp.) For other tools, use the Connect config but leave AISD_TOKEN out.
Setup (about two minutes per tool):
- Create a token. In the app, Settings → API tokens → New token. Copy it — you see it once.
- Open the Connect page and pick your tool. It generates the exact config for your operating system.
- Paste the config into your tool's config file, drop in your token, and fully restart the tool (closing the window usually isn't enough).
Claude Code shortcut — one command, no config file. The same command the Connect page generates:
claude mcp add -s user aisd --env AISD_TOKEN=YOUR_TOKEN -- cmd /c npx -y "@aistoragedepot/mcp"(That's the Windows form; on macOS/Linux drop the
cmd /c—… -- npx -y @aistoragedepot/mcp.)-s userregisters it at the user level, so your library is available in every project. Then open a new chat — added servers are picked up per session.
Supported tools: Claude Desktop, Cursor, VS Code, Claude Code, Cline, Windsurf, Codex, and Augment Code (which connects to our hosted HTTP endpoint — nothing to install). The Connect page has the precise config-file location and steps for each, plus a generic config for any other MCP client.
Windows: the generated config wraps the launcher in
cmd /con purpose — Windows can't spawnnpxdirectly (you'd get a silent connection failure). Use the config exactly as Connect gives it to you.
Shortcut — let your AI do it. If you use a coding agent (Cursor, Claude Code, VS Code, Cline, Windsurf, Codex), you don't have to hand-edit anything: give it the config and ask it to set up the MCP server. You'll usually want it at the user level (available in every project); most tools also do project level (just this repo) — tell your AI which.
Once connected, the items you've marked with / in the app appear as /aisd:… slash commands — any type: prompts keep their [fields] as arguments, and skills, rules, docs, configs, and templates insert their content. Everything else stays available for the agent to search and read when you ask. Your menu starts with one worked example — the "Summarize Anything" starter arrives pre-marked — and from there it's exactly the items you mark with the / button.
Stale-copy warnings. If an item is a copy whose original has moved ahead, its slash-menu description shows ⬆ newer version available (vN) and its content arrives with a heads-up your agent relays to you. In AIStorageDepot, the list card's ⬆ chip applies the latest in one click, or open the item to review a diff first — or choose Skip this version to silence the warnings until the original changes again.
2. Slash commands and the pull command
Over MCP, your slash commands are the items you mark with / in the app. pull is for two specific wants:
- Type a skill as a command. Over MCP a skill is something the agent reads;
pullinstalls it as a typed/aisd:…command. - Keep local copies that work with no token and offline.
The Connect page gives you a copy-paste command. It defaults to skills only:
npx -y @aistoragedepot/mcp pull --token=YOUR_TOKEN --workspaces=all --to=all --types=skill
Flags:
--token=— your API token. No space after the=.--workspaces=all— include team/company libraries, not just personal.--to=all— write for every installed tool.--types=skill— pull skills only (the default we recommend). Add--types=allto also keep local copies of prompts.
Why the default is skills-only
You don't need pull for slash commands — marking an item / already puts it in your menu, live. pull earns its keep two ways: local copies that work with no token and offline, and tools that don't surface MCP prompts as typed commands. One consequence: an item that's both marked / and pulled shows up twice — (user) is the frozen file, (MCP) is live. Prefer (MCP); it's always current. Because pulled files are frozen, pull also ends with a summary of any items that are behind their source, so you know when to get the latest and re-run it.
3. Open in an AI
Any prompt has an Open in {AI} button that opens it in your preferred assistant (Claude, ChatGPT, or Perplexity), prefilled and ready. A dropdown adds one-click actions — polish the prompt, or turn a one-off into a reusable [bracketed] template. Set your default assistant in Settings.
Composing across items
Reference another stored item from a prompt or skill body with @aisd:<slug> — e.g. Follow @aisd:analyze-bug-template exactly. When the item is read over MCP, pulled, or exported, the reference is replaced with that item's current content, so a thin command can delegate to a shared template you maintain in one place (edit the template once, everything that includes it follows). It resolves to the copy in your nearest library and only to items you can read. Copy an item's handle from the chip next to its title. Any field can also carry a default — [Environment = staging] — which pre-fills in the app and makes that MCP argument optional.
Local models with Ollama
Running the self-hosted edition with a local model keeps everything on your own hardware — your library, your database, and the model. It works, with one honest caveat about model quality below.
First, the thing every guide online gets wrong: there is no MCP setting inside Ollama. Ollama serves models; MCP is how a client fetches context. They never talk to each other. A client sits in the middle and connects to both:
your client ──── model ────→ Ollama (localhost:11434)
└───────── MCP ──────→ AIStorageDepot (your install)
So you configure AIStorageDepot in the client, exactly as you would for Claude Desktop or Cursor
— never in Ollama. (Beware packages named ollama-mcp-server: those do the opposite, exposing
Ollama models to an MCP client.)
Option A — Open WebUI (a chat interface, all local)
The usual choice if you want a ChatGPT-style UI. It runs in Docker beside Ollama and speaks to our MCP endpoint directly.
services:
ollama:
image: ollama/ollama:latest
volumes: [ollama:/root/.ollama]
open-webui:
image: ghcr.io/open-webui/open-webui:main
ports: ["3000:8080"]
environment:
OLLAMA_BASE_URL: http://ollama:11434
WEBUI_SECRET_KEY: <a fixed value you keep — rotating it breaks saved tool auth>
volumes: [open-webui:/app/backend/data]
extra_hosts: ["host.docker.internal:host-gateway"]
volumes: { ollama: {}, open-webui: {} }
Then, signed in as an admin (only admins can register tool servers):
- Admin Settings → External Tools → +
- Switch the type toggle from OpenAPI to MCP (Streamable HTTP)
- URL:
https://<your-aistoragedepot-host>/api/mcp— keep the/api/mcppath - Auth: Bearer, with a token from Settings → API tokens in AIStorageDepot
Your library's search_library and get_item then appear as tools in chat.
Option B — an editor or agent client
If you work in an editor, the clients in §1 mostly accept a local Ollama model as their backend —
Cline, Zed, Goose, and opencode among them. Configure AIStorageDepot as usual; point
the client's model setting at Ollama. Ollama also publishes an Anthropic-compatible API, so
Claude Code can run against a local model (ollama launch claude) while still using MCP normally.
The caveat worth reading before you judge the result
MCP tool-calling quality is a property of the model, not of Ollama or of us. Small local models frequently see the tools and never call them. Open WebUI's own documentation says as much: some local models "claim support but often produce poor results."
One failure mode is worth naming because it looks like a bug in your library: reading an item is a
two-step chain — search_library returns URIs but no content, then get_item fetches the text.
A weak model often runs the first step, never chains to the second, and answers from the titles
alone. Everything reports healthy; the answer is just thin.
If that happens, change the model before you change anything else — start with one that has
strong, well-tested tool support (Ollama's own tool-calling docs use qwen3 throughout), and prefer
larger parameter counts. Tool-calling reliability is also actively being fixed upstream, so keep
Ollama current.
Two things in your favour: our MCP surface is deliberately small — two read-only tools with plain string arguments — which is about the easiest workload a local model can be asked to handle. And nothing leaves your network: the model is local, the library is yours, and no request reaches us.
Troubleshooting connections
npm error … ENOENT … _cacache— a corrupted npm cache, not your token or our package. Runnpm cache clean --force, then retry the command.command not found: pull(often after anpx: installed 1 in …line) — an oldnpxfrom an outdated Node/npm is running; it can't dispatch thepullsubcommand.pullneeds Node.js 18+. Update Node (or remove a stray global npx withnpm rm -g npx), then retry — or usenpm exec -- @aistoragedepot/mcp pull ….- Connected but nothing shows up — fully quit and reopen the tool (system-tray quit, or end the process). Closing the window often isn't enough.
- Windows: silent failure — make sure the config uses
cmd /c(not a barenpx). Regenerate it from the Connect page if unsure. - Revoked or wrong token — the connection stops working the instant a token is revoked. Create a fresh one in Settings → API tokens.
- Local model lists the tools but never uses them (or answers from titles only) — a model limitation, not a connection fault: see Local models with Ollama. Try a model with stronger tool-calling support, and update Ollama.
Related: Item Types · Core Concepts · API, MCP & CLI reference