@sota-io/mcp
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@@sota-io/mcpdeploy my current project to sota.io"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
@sota-io/mcp
MCP server for sota.io — deploy web apps via AI agents.
Two transports
Since v1.4.0 this package ships two transports:
sota-mcp(stdio, default) — for Claude Code, Cursor, Windsurf, and any MCP client that spawns a local process. Pass yourSOTA_API_KEYvia env var.sota-mcp-http(Streamable HTTP) — for self-hosting the remote endpoint that powersmcp.sota.io(used by Claude Desktop and Claude.ai web). ReadsSUPABASE_JWT_SECRET,DATABASE_URL, etc. — most users do not need this; it's the same code that runs onmcp.sota.ioif you want to host your own.
Most users want the stdio transport.
Related MCP server: AppsAI MCP Server
One-click install for Claude Desktop / Claude.ai web
If you use Claude Desktop or Claude.ai (Pro / Max / Team / Enterprise plan),
the easiest install is not this npm package — it's the hosted remote
endpoint at mcp.sota.io. Click here:
OAuth handles auth. New users can sign up entirely inside Claude via the
create_account tool — no browser tab switch.
See https://sota.io/docs/integrations/claude.
Quick Start (stdio — Claude Code, Cursor, Windsurf, …)
Get an API key from sota.io/dashboard/settings
Ask your AI: "Deploy my app to sota.io"
Installation
No install needed — run directly with npx:
npx -y @sota-io/mcpOr install globally:
npm install -g @sota-io/mcp
sota-mcpConfiguration
Claude Code
CLI method:
claude mcp add sota -- npx -y @sota-io/mcpThen set your API key in the shell environment:
export SOTA_API_KEY=sota_your_api_key_hereManual JSON (.claude/settings.json):
{
"mcpServers": {
"sota": {
"command": "npx",
"args": ["-y", "@sota-io/mcp"],
"env": {
"SOTA_API_KEY": "sota_your_api_key_here"
}
}
}
}Claude Desktop
Edit claude_desktop_config.json:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"sota": {
"command": "npx",
"args": ["-y", "@sota-io/mcp"],
"env": {
"SOTA_API_KEY": "sota_your_api_key_here"
}
}
}
}Cursor
Create .cursor/mcp.json in your project root:
{
"mcpServers": {
"sota": {
"command": "npx",
"args": ["-y", "@sota-io/mcp"],
"env": {
"SOTA_API_KEY": "sota_your_api_key_here"
}
}
}
}Windsurf
Edit ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"sota": {
"command": "npx",
"args": ["-y", "@sota-io/mcp"],
"env": {
"SOTA_API_KEY": "sota_your_api_key_here"
}
}
}
}Tools
Tool | Description | Parameters |
| Deploy an app |
|
| Get build/runtime logs |
|
| Set environment variable |
|
| List environment variables |
|
| Rollback to previous deployment |
|
| Get deployment status |
|
| List all projects | (none) |
| Create a new project |
|
| Delete a project permanently |
|
| Add custom domain to project |
|
| List custom domains |
|
| Get domain details and DNS status |
|
| Remove custom domain |
|
deploy
Deploy an application to sota.io. Creates a tar.gz archive of the specified directory and uploads it.
Parameter | Type | Required | Description |
| string | Yes | Project ID to deploy to |
| string | No | Directory to deploy (defaults to current working directory) |
"Deploy my app in the current directory to sota.io"get-logs
Get build and runtime logs for a deployment. If no deployment_id is provided, returns logs for the latest deployment.
Parameter | Type | Required | Description |
| string | Yes | Project ID to get logs for |
| string | No | Specific deployment ID (defaults to latest) |
"Show me the build logs for my sota.io project"set-env
Set an environment variable for a project.
Parameter | Type | Required | Description |
| string | Yes | Project ID |
| string | Yes | Environment variable name (e.g., DATABASE_URL) |
| string | Yes | Environment variable value |
"Set DATABASE_URL on my project to postgres://localhost/mydb"get-env
List environment variables for a project.
Parameter | Type | Required | Description |
| string | Yes | Project ID |
"Show all environment variables for my project"rollback
Rollback a project to its previous deployment. This swaps the container image without rebuilding.
Parameter | Type | Required | Description |
| string | Yes | Project ID to rollback |
"Roll back my app to the previous version"get-status
Get the current deployment status for a project, including URL and recent deployment history.
Parameter | Type | Required | Description |
| string | Yes | Project ID to check status for |
"What's the status of my sota.io deployment?"list-projects
List all projects on your sota.io account.
No parameters required.
"List my sota.io projects"create-project
Create a new project on sota.io. The project slug is auto-generated from the name (lowercase, hyphens, max 63 chars) and used as the subdomain ({slug}.sota.io). For example, "My API" becomes my-api.sota.io.
Parameter | Type | Required | Description |
| string | Yes | Name for the new project |
"Create a new sota.io project called my-api"delete-project
Delete a project and all its deployments from sota.io. This action is permanent.
Parameter | Type | Required | Description |
| string | Yes | Project ID to delete |
"Delete my sota.io project abc123"add-domain
Add a custom domain to a project. Returns DNS instructions for pointing the domain.
Parameter | Type | Required | Description |
| string | Yes | Project ID |
| string | Yes | Domain name (e.g., "example.com" or "app.example.com") |
"Add example.com as a custom domain to my project"list-domains
List all custom domains for a project.
Parameter | Type | Required | Description |
| string | Yes | Project ID |
"Show all custom domains for my project"get-domain
Get domain details including DNS verification status and SSL state.
Parameter | Type | Required | Description |
| string | Yes | Project ID |
| string | Yes | Domain ID |
"Check the DNS status of my custom domain"remove-domain
Remove a custom domain from a project.
Parameter | Type | Required | Description |
| string | Yes | Project ID |
| string | Yes | Domain ID to remove |
"Remove the custom domain from my project"Environment Variables
Variable | Required | Default | Description |
| Yes | — | API key with |
| No |
| API base URL |
Troubleshooting
"npx: command not found"
Problem: Your IDE doesn't inherit the shell PATH where nvm/fnm is loaded.
Fix: Use the absolute path to npx. Find it with:
which npx
# Example output: /Users/you/.nvm/versions/node/v22.0.0/bin/npxThen update your MCP config to use the absolute path:
{
"mcpServers": {
"sota": {
"command": "/Users/you/.nvm/versions/node/v22.0.0/bin/npx",
"args": ["-y", "@sota-io/mcp"],
"env": {
"SOTA_API_KEY": "sota_your_api_key_here"
}
}
}
}"SOTA_API_KEY environment variable is required"
Problem: The API key is not set in your MCP configuration.
Fix: Add the env block to your MCP server config. Shell environment variables do not automatically pass to MCP servers — the env block in the config is required:
{
"env": {
"SOTA_API_KEY": "sota_your_api_key_here"
}
}Connection refused or timeout errors
Problem: Network issue or wrong API URL.
Fix: Check your internet connection. If you're using a custom API URL, verify SOTA_API_URL is set correctly. The default is https://api.sota.io.
License
MIT
Links
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Alicense-qualityDmaintenanceEnables AI assistants to manage Dokploy deployments, including creating and deploying applications, managing databases, configuring domains with SSL, and monitoring application status through a standardized interface.45MIT

AppsAI MCP Serverofficial
Alicense-qualityDmaintenanceEnables AI agents to build, deploy, and manage full-stack applications on AppsAI's platform, with tools for project management, backend/frontend deployment, billing, marketplace, domains, and more.321MIT- Alicense-qualityBmaintenanceEnables AI agents to deploy static websites to StaticX, including creating sites, uploading builds, publishing releases, and managing domains.25MIT
- AlicenseAqualityAmaintenanceEnables AI assistants to deploy, manage, and rollback websites via the Krexel API, supporting site uploads, deploys, logs, rollbacks, environment variables, and status checks.9145MIT
Related MCP Connectors
Deploy a multi-user web app from your agent: hosting, auth, database, and permissions.
Build and deploy websites, Telegram and Discord bots from chat via the DreamAgent platform.
Agent-native web hosting — deploy sites, manage DNS, register domains, scale infrastructure
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/sota-deploy/mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server