Helipod MCP server and skills
Use Helipod from AI coding tools: deploy apps and databases, run VPS servers, buy domains and edit DNS, and send email, by asking in plain language.
- MCP server (
helipod-mcp): 238 tools over the Container, Database, VPS, Domain, Email, Account and AI APIs. Works in Claude Code, Codex, Cursor, VS Code, Windsurf, Claude Desktop and any MCP client. - Skills (
skills/): step-by-step playbooks so the agent deploys, prices and confirms the way Helipod expects (price first, confirm before deleting, read build logs on failure).
Step-by-step guides for each tool (Claude Code, Codex, Cursor, VS Code, Gemini CLI, opencode, Windsurf, Claude Desktop, Cline and others): https://docs.helipod.io/docs/helipod/ai-agents
Quick start: sign in (no key)
Add the hosted server and sign in to Helipod in the browser; you choose which products (Container, VPS, Domain API) and which project the tool may use, and can disconnect it any time in Settings → API keys → Connected apps.
Prefer a key, a local server, or a tool not listed? Read on.
1. Get a key
In the dashboard open a project, then Settings → API keys. Choose the products (Container API, Database API, VPS API, Domain API) and the reach (one project, or the whole account; the Domain API needs a whole-account key). The key starts with hel_.
For the email tools, enable Email API on the key (or sign in with it ticked). An email key from the project's Email section also still works, as HELIPOD_EMAIL_API_KEY.
export HELIPOD_API_KEY=hel_...
export HELIPOD_EMAIL_API_KEY=... # optional: only if you use a separate email key
Start with a key limited to one project while you try things out.
2. Connect your tool
The server is the npm package helipod-mcp (Node.js 18 or newer). The configs below run it with npx -y helipod-mcp (or the installed helipod-mcp command) and pass HELIPOD_API_KEY from your environment.
Claude Code
The plugin (above) uses the hosted server with sign-in. Local server with a key instead:
claude mcp add helipod --env HELIPOD_API_KEY=$HELIPOD_API_KEY -- npx -y helipod-mcp
Codex
Install once (Codex does not wait for MCP servers to start, so an installed server is ready for the first message while npx can miss it):
npm install -g helipod-mcp
~/.codex/config.toml:
[mcp_servers.helipod]
command = "helipod-mcp"
env_vars = ["HELIPOD_API_KEY", "HELIPOD_EMAIL_API_KEY"]
Cursor
~/.cursor/mcp.json (all projects) or .cursor/mcp.json (one project):
{
"mcpServers": {
"helipod": {
"command": "npx",
"args": ["-y", "helipod-mcp"],
"env": { "HELIPOD_API_KEY": "${env:HELIPOD_API_KEY}" }
}
}
}
Gemini CLI
~/.gemini/settings.json:
{
"mcpServers": {
"helipod": {
"command": "npx",
"args": ["-y", "helipod-mcp"],
"env": { "HELIPOD_API_KEY": "$HELIPOD_API_KEY" }
}
}
}
Gemini CLI only starts MCP servers in folders you have trusted.
opencode
~/.config/opencode/opencode.json:
{
"mcp": {
"helipod": {
"type": "local",
"command": ["npx", "-y", "helipod-mcp"],
"environment": { "HELIPOD_API_KEY": "{env:HELIPOD_API_KEY}" }
}
}
}
VS Code (Copilot agent mode)
.vscode/mcp.json:
{
"inputs": [{ "id": "helipod-key", "type": "promptString", "description": "Helipod API key", "password": true }],
"servers": {
"helipod": {
"type": "stdio",
"command": "npx",
"args": ["-y", "helipod-mcp"],
"env": { "HELIPOD_API_KEY": "${input:helipod-key}" }
}
}
}
Windsurf
~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"helipod": {
"command": "npx",
"args": ["-y", "helipod-mcp"],
"env": { "HELIPOD_API_KEY": "hel_..." }
}
}
}
Other clients
Run npx -y helipod-mcp as a stdio MCP server with HELIPOD_API_KEY in its environment (enable the Email API on it for the email tools, or add HELIPOD_EMAIL_API_KEY).
Hosted server (nothing to install)
Clients that connect by URL can use https://api.helipod.io/mcp (Streamable HTTP) with Authorization: Bearer hel_... (the same key or sign-in serves the email tools when it has the Email API enabled; X-Helipod-Email-Key still works). Same tools; the key is used per request and never stored.
claude mcp add --transport http helipod https://api.helipod.io/mcp --header "Authorization: Bearer $HELIPOD_API_KEY"
# Codex: ~/.codex/config.toml
[mcp_servers.helipod]
url = "https://api.helipod.io/mcp"
bearer_token_env_var = "HELIPOD_API_KEY"
Skills for other agents
Claude Code gets the skills with the plugin. For Codex, Cursor, Gemini CLI, opencode, GitHub Copilot and other agents that read SKILL.md files:
npx skills add helipodapp/mcp -g
Pick your agents when asked (or pass -a codex cursor gemini-cli opencode -y). Without -g the skills go into the current project only.
3. Ask
- "Deploy this repo to my Helipod project and give me the URL."
- "Create a Postgres database for this project and connect it to the api service."
- "Why did the last deploy fail?"
- "Is tokosaya.id available, and how much is it?"
- "Point www.tokosaya.id at my web service."
- "Create a 2 GB Ubuntu VPS and open port 443."
- "Send a test email from [email protected] to me."
Tools
Each tool is marked read-only, write or destructive, so clients can ask before running the risky ones. Calls that cost money support a dry run, and the server tells the agent to show the price and wait for your OK.
Safety
- The agent can only do what the key allows. Use a project-limited key and only the products you need.
- Paid actions (new services, VPS, domains, scaling, email plans, AI top-ups) charge your Helipod wallet; the tools dry-run first and ask before the real call. Keep tool approvals on for write and destructive tools.
- Revoke a key in the dashboard at any time.
Configuration
Development
bun install
bun run typecheck
bun test # catalog tests; live tests need HELIPOD_TEST_KEY
bun run build # dist/stdio.js, dist/index.js, dist/http.js
Docs: https://docs.helipod.io