-
Notifications
You must be signed in to change notification settings - Fork 0
Extensions
Draggy speaks the Model Context Protocol, so it can borrow tools from servers other people wrote. Turn on the GitHub server and the assistant can read your issues; turn on Postgres and it can query your database.
Settings → Extensions holds a catalogue of thirty-nine, grouped by what they
are for.
This is worth being clear about before you switch one on.
An MCP server is a program. Draggy launches it with npx, which downloads the
package from npm the first time, and then talks to it over its standard input
and output. It runs on your machine, as you, with whatever credentials you typed
into the panel.
So this is the one part of Draggy that runs code somebody else wrote. Nothing is
enabled by default, nothing starts on its own, and every entry in the catalogue
shows the exact package it will fetch — npx -y @modelcontextprotocol/server-github
and so on — so you can go and read it first.
Switch one on only if you would be comfortable running that package from a terminal.
Find it in the catalogue and flip the switch. If it needs anything — an API token, a folder, a connection string — the switch opens the setup fields instead of starting a server that would fail. Fill them in and it starts.
A running server shows how many tools it contributed. Those tools become
available to the model on your next message, named after the server, so
github__create_issue rather than a bare create_issue that could have come
from anywhere.
Switch it off and the tools disappear from the model's world immediately. Draggy stops every server when you quit.
Development — Filesystem, GitHub, GitLab, Sentry, JetBrains IDEs, Context7 documentation, 21st.dev Magic
Web and search — Brave Search, Tavily, Exa, Perplexity, DuckDuckGo, Firecrawl, Playwright, Puppeteer, Browserbase
Productivity — Slack, Notion, Linear, Todoist, Obsidian, Google Drive, Google Maps
Databases — PostgreSQL, MongoDB, Redis, Elasticsearch, Supabase, Airtable
Cloud and infrastructure — Kubernetes, Cloudflare, Heroku, Stripe, AWS Knowledge Base
Knowledge and memory — Memory (a knowledge graph that survives between conversations), Sequential thinking, Everything (the reference server, useful for checking that MCP works at all)
Design — Figma
Media — YouTube transcripts
Some carry a warning in the panel, and they mean it. Filesystem can write and delete inside the folders you list. Stripe with a live key can move real money. Kubernetes does whatever your current kubeconfig context is allowed to do.
Tokens are stored in the same local SQLite database as your chats, in the Draggy data folder, and are masked in the interface. That is the same protection your conversation history gets, which is honest but is not a keychain — if that matters for a particular token, use a scoped or read-only one.
They are ordinary tools once they are running. The model chooses between them and the built-in ones the same way, and the same caveat applies: a model below about 4B parameters is unreliable at tool calling and gets worse the more tools it has to choose between. Turning on twelve servers at once is a good way to make a small model worse.
Start with one.
The panel shows the error underneath the entry, including whatever the server wrote to its standard error, which is usually the only account of what went wrong.
Not configured yet — a required field is empty. Open the setup fields.
Did not answer in time — the package could not be fetched, or it needs a runtime you do not have. Check the package name in the panel against npm.
Stopped (exit code 1) — it started and rejected something, most often the credentials.
Settings → Data → Open logs has the rest.
An extension is a hole you opened in the local-only story on purpose. The package comes from npm, and then the server talks to whatever service it is for — GitHub, Slack, your own database. Draggy is not in the middle of that and cannot be.
Everything else in the app still behaves as it always did. See the privacy note in the README.