Manage your backend directly from your AI
Connect Cursor, Claude Code, VS Code, Windsurf and Codex to Swyftstack and create databases, import data, manage backups, configure storage, rotate passwords and monitor everything - without leaving your editor. One command. No API key to paste.
{
"mcpServers": {
"swyftstack": { "command": "npx", "args": ["-y", "swyftstack-mcp"] }
}
}Your AI, wired straight into your infrastructure
MCP (Model Context Protocol) is an open standard that lets AI assistants call real tools. The Swyftstack MCP server exposes your databases, storage and backups as tools your AI can use - safely and with your permission.
Ask for a database in plain language and get a connection string back - in the same chat where you're writing code.
Every action runs through the scoped REST API. Scopes, dangerous-operation limits and rate limits are enforced server-side.
One npx command. The first request opens your browser to sign in - no key to create, copy, or paste.
Supported AI applications
Pick your client and paste the config. Every one uses the same server - no API key required.
Anthropic's coding agent in your terminal and IDE.
claude mcp add swyftstack -- npx -y swyftstack-mcpThe AI code editor.
{
"mcpServers": {
"swyftstack": {
"command": "npx",
"args": ["-y", "swyftstack-mcp"]
}
}
}GitHub Copilot agent mode / MCP.
{
"servers": {
"swyftstack": {
"command": "npx",
"args": ["-y", "swyftstack-mcp"]
}
}
}Codeium's agentic editor.
{
"mcpServers": {
"swyftstack": {
"command": "npx",
"args": ["-y", "swyftstack-mcp"]
}
}
}OpenAI's coding agent CLI.
[mcp_servers.swyftstack]
command = "npx"
args = ["-y", "swyftstack-mcp"]Two ways to connect
Run the server with no key. On the first request it prints a code and opens your browser; sign in, approve the client (choosing Read only / Developer / Full access), and you're connected. New accounts start a free trial automatically.
Create a key under Settings → API keys and set SWYFTSTACK_API_KEY in your MCP client config. Both paths use identical scopes and permissions.
{
"mcpServers": {
"swyftstack": {
"command": "npx",
"args": ["-y", "swyftstack-mcp"],
"env": { "SWYFTSTACK_API_KEY": "sk_live_…" }
}
}
}What your AI can do
The MCP server mirrors the full Swyftstack API surface.
list, create, delete, restart, rotate password, connection string, SSL status
import_database, list_imports, get_import_status, get_latest_export
list, create, restore, pin, recovery status, PITR restore request
get/set IP allowlist, get/set RLS, get audit logs
list buckets, create/delete bucket, list/upload/delete files
agent status, recommendations, usage, limits, billing, upgrade options
connect, connection_status, list_api_keys, logout
From the console, MCP, or API
Everything is manageable from all three. Pick whichever fits your workflow.
| Feature | Console | MCP (ask your AI) | API |
|---|---|---|---|
| IP allow-list | Database → Security → add IP/CIDR entries. | Ask: "restrict db_… to 203.0.113.4". Tool: set_ip_allowlist. | PUT /v1/databases/:id/allowlist { entries: ["203.0.113.4"] } |
| Row-Level Security (RLS) | Database → Security → Row-Level Security → enable per table. | Ask: "enable RLS on the orders table". Tool: set_rls. | POST /v1/databases/:id/rls { table: "orders", enabled: true } |
| Manual backup | Database → Backups → Create backup. | Ask: "back up db_… now". Tool: create_backup. | POST /v1/databases/:id/backups |
| PITR / recovery | Database → Backups → Point-in-time recovery. | Ask: "what can I restore db_… to?" Tool: get_recovery_status. | GET /v1/databases/:id/recovery |
| WAL archiving status | Database → Backups → continuous protection panel. | Ask: "is WAL archiving on for db_…?" Tool: get_recovery_status. | GET /v1/databases/:id/recovery (wal_archiving) |
| Import a database | Project → Databases → Import from URL. | Ask: "import postgres://… into my project". Tool: import_database. | POST /v1/imports { project, name, source_url } |
Just ask, in plain language
“Create a Postgres database called production in my project and give me the connection string.”
“Import postgres://user:pass@old-host/db into a new database named migrated.”
“How much storage is my biggest database using, and am I close to any limits?”
“Back up the payments database now and tell me when it's done.”
“Restrict the analytics database to only my office IP 203.0.113.4.”
“Enable row-level security on the orders and invoices tables.”
“What can I restore my database to, and how far back does point-in-time recovery go?”
“How many days are left on my trial, and what would upgrading cost?”
You're always in control
Every key is limited to the scopes you approve: reads, writes, backups, account. A Read-only connection can never change anything.
Deleting a database, bucket or backup requires a key with destructive operations explicitly enabled - a separate opt-in on the approval screen.
Every request is logged. Review exactly what each AI client did under Console → AI Activity.
Common questions
The browser didn't open automatically
Copy the URL and code the server printed to your terminal and open it manually, then approve the client.
“This API key is missing the required scope”
Your connection was created with a lower access level. Run the connect tool again and choose Developer or Full access, or create a key with the needed scopes under Settings → API keys.
“Not permitted to perform destructive operations”
Deletes require a key with destructive operations enabled. Re-connect and tick “Allow destructive deletes” on the approval screen.
I want to switch accounts or disconnect
Run the logout tool to remove the saved credential, then connect again. To fully revoke access, delete the key under Settings → API keys.
npx can't find the package
Make sure you have Node.js 18+ installed. The command is npx -y swyftstack-mcp (the -y auto-confirms the download).
Frequently asked questions
Do I need an API key to use the MCP server?
No. Point your AI client at `npx -y swyftstack-mcp` and the first request opens your browser to sign in (device login). A scoped key is minted for you and stored locally - you never copy or paste it. Scripts and CI can still set SWYFTSTACK_API_KEY explicitly.
Is it safe to let an AI manage my infrastructure?
Yes, by design. Every action goes through the same scoped REST API as the console. You choose the access level (Read only, Developer, Full access) when you connect, and destructive deletes require a separate opt-in. Everything is logged under AI Activity.
Which AI applications are supported?
Any MCP-compatible client. We document Cursor, Claude Code, VS Code, Windsurf and Codex, but the same npx command works anywhere MCP servers are supported.
Does the MCP server touch my database directly?
Never. It is a thin REST client - it holds no database credentials and only calls the public Swyftstack API, inheriting all scope, dangerous-operation and rate-limit checks server-side.
How do I disconnect an AI client?
Run the `logout` tool to delete the local credential, or revoke the key under Settings → API keys. You can review everything a client did under Console → AI Activity.
Does connecting cost anything?
No. Connecting is free and uses your existing plan or trial. New accounts start a free trial automatically; the MCP server never processes payments - it opens the billing page in your browser when you choose to upgrade.
Connect your AI in under a minute
One command. Browser sign-in. Then just ask.