Sota

io.github.sota-deploy由 GitHub 账号 sota-deploy 发布v1.1.1更新于 Oct 24, 2026

Deploy web apps via AI agents with sota.io. 9 tools for deploy, logs, env, and more.

发布方自己的服务:Sota

概览

AI 生成的概览

Sota 让 AI 助手在 sota.io 上部署和管理 Web 应用:部署代码、查看日志、设置环境变量、回滚,以及管理项目和自定义域名。

可以做什么
从本地目录部署应用,查询部署状态或回滚到上一版本。读取项目或指定部署的构建与运行日志。设置并列出项目的环境变量。创建、列出并永久删除项目。添加、列出、查看和移除自定义域名,包括 DNS 与 SSL 状态。
适用场景
当你的应用托管在 sota.io,并希望直接在聊天客户端中部署、查看日志、修改环境变量或管理域名和项目,而不必打开控制台时使用。
运行要求
需要本地 Node.js 运行环境,在桌面 MCP 客户端中通过 npx 等方式运行该 npm 包。需要 sota.io 账号,并通过 SOTA_API_KEY 环境变量提供 API 密钥;SOTA_API_URL 为可选项。需要能访问 sota.io API 的网络。
安装前请注意
SOTA_API_KEY 中的 API 密钥可访问你的 sota.io 账号,并会保存在客户端配置中。多个工具会修改或删除数据:deploy 会上传所选目录的 tar.gz 压缩包,set-env 会把数据库地址等密钥写入项目设置,delete-project 和 remove-domain 不可恢复。部署和域名可能产生 sota.io 套餐费用。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Sota,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

@sota-io/mcp

MCP server for sota.io — deploy web apps via AI agents.

[npm version] [npm downloads] [License: MIT] [Node]

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 your SOTA_API_KEY via env var.
  • sota-mcp-http (Streamable HTTP) — for self-hosting the remote endpoint that powers mcp.sota.io (used by Claude Desktop and Claude.ai web). Reads SUPABASE_JWT_SECRET, DATABASE_URL, etc. — most users do not need this; it's the same code that runs on mcp.sota.io if you want to host your own.

Most users want the stdio transport.

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:

Add to Claude →

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, …)

  1. Get an API key from sota.io/dashboard/settings
  2. Configure your IDE
  3. Ask your AI: "Deploy my app to sota.io"

Installation

No install needed — run directly with npx:

bash
npx -y @sota-io/mcp

Or install globally:

bash
npm install -g @sota-io/mcpsota-mcp

Configuration

Claude Code

CLI method:

bash
claude mcp add sota -- npx -y @sota-io/mcp

Then set your API key in the shell environment:

bash
export SOTA_API_KEY=sota_your_api_key_here

Manual JSON (.claude/settings.json):

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.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
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:

json
{  "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:

json
{  "mcpServers": {    "sota": {      "command": "npx",      "args": ["-y", "@sota-io/mcp"],      "env": {        "SOTA_API_KEY": "sota_your_api_key_here"      }    }  }}

Tools

ToolDescriptionParameters
deployDeploy an appproject_id, directory?
get-logsGet build/runtime logsproject_id, deployment_id?
set-envSet environment variableproject_id, key, value
get-envList environment variablesproject_id
rollbackRollback to previous deploymentproject_id
get-statusGet deployment statusproject_id
list-projectsList all projects(none)
create-projectCreate a new projectname
delete-projectDelete a project permanentlyproject_id
add-domainAdd custom domain to projectproject_id, domain
list-domainsList custom domainsproject_id
get-domainGet domain details and DNS statusproject_id, domain_id
remove-domainRemove custom domainproject_id, domain_id

deploy

Deploy an application to sota.io. Creates a tar.gz archive of the specified directory and uploads it.

ParameterTypeRequiredDescription
project_idstringYesProject ID to deploy to
directorystringNoDirectory 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.

ParameterTypeRequiredDescription
project_idstringYesProject ID to get logs for
deployment_idstringNoSpecific deployment ID (defaults to latest)
"Show me the build logs for my sota.io project"

set-env

Set an environment variable for a project.

ParameterTypeRequiredDescription
project_idstringYesProject ID
keystringYesEnvironment variable name (e.g., DATABASE_URL)
valuestringYesEnvironment variable value
"Set DATABASE_URL on my project to postgres://localhost/mydb"

get-env

List environment variables for a project.

ParameterTypeRequiredDescription
project_idstringYesProject ID
"Show all environment variables for my project"

rollback

Rollback a project to its previous deployment. This swaps the container image without rebuilding.

ParameterTypeRequiredDescription
project_idstringYesProject 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.

ParameterTypeRequiredDescription
project_idstringYesProject 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.

ParameterTypeRequiredDescription
namestringYesName 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.

ParameterTypeRequiredDescription
project_idstringYesProject 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.

ParameterTypeRequiredDescription
project_idstringYesProject ID
domainstringYesDomain 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.

ParameterTypeRequiredDescription
project_idstringYesProject ID
"Show all custom domains for my project"

get-domain

Get domain details including DNS verification status and SSL state.

ParameterTypeRequiredDescription
project_idstringYesProject ID
domain_idstringYesDomain ID
"Check the DNS status of my custom domain"

remove-domain

Remove a custom domain from a project.

ParameterTypeRequiredDescription
project_idstringYesProject ID
domain_idstringYesDomain ID to remove
"Remove the custom domain from my project"

Environment Variables

VariableRequiredDefaultDescription
SOTA_API_KEYYes—API key with sota_ prefix. Create at sota.io/dashboard/settings
SOTA_API_URLNohttps://api.sota.ioAPI 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:

bash
which npx# Example output: /Users/you/.nvm/versions/node/v22.0.0/bin/npx

Then update your MCP config to use the absolute path:

json
{  "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:

json
{  "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

来源:README.md,提交 45bf3b4

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v1.1.1最新Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分

其他 Sota 集成