mcpField
S
sota

sota

远程服务
github.com/sota-deploy云与基础设施023 周前更新
代码仓库

关于 sota

@sota-io/mcp 是一个 MCP 服务,供 AI Agent 在 sota.io 上部署和管理 Web 应用。它提供项目、部署、环境变量和自定义域名控制,并支持 stdio 与 Streamable HTTP 传输。

主要功能

  1. 01从指定目录部署应用
  2. 02查看部署状态和日志
  3. 03管理项目环境变量
  4. 04创建项目并管理自定义域名
  5. 05回滚到之前的部署

适用场景

  1. 01从当前项目目录部署应用
  2. 02部署后检查构建或运行日志
  3. 03设置或查看项目环境变量
  4. 04检查自定义域名的 DNS 和 SSL 状态

MCP 相关

该软件包为本地客户端提供 stdio MCP 传输,并为托管或自托管端点提供 Streamable HTTP 传输。其工具用于管理 sota.io 项目、部署、环境变量和域名。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://mcp.sota.io/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

安装包
npm@sota-io/mcp1.5.0

工具

14
参数类型必填说明
codestring否确认邮件中的 6 位验证码。请在第二次调用时提供,以完成注册。首次调用时请省略。
emailstring是真实邮箱地址。我们会向此地址发送确认码。临时或一次性邮箱服务将被屏蔽。

详细介绍

@sota-io/mcp

适用于 sota.io 的 MCP 服务 — 通过 AI Agent 部署 Web 应用。

npm version npm downloads License: MIT Node

两种传输方式

自 v1.4.0 起,此软件包提供 两种传输方式:

  • sota-mcp(stdio,默认)— 适用于 Claude Code、Cursor、Windsurf,以及任何会启动本地进程的 MCP 客户端。通过环境变量传递 SOTA_API_KEY。
  • sota-mcp-http(Streamable HTTP)— 适用于自托管为 mcp.sota.io 提供支持的远程端点 (Claude Desktop 和 Claude.ai 网页版使用)。读取 SUPABASE_JWT_SECRET、DATABASE_URL 等 — 大多数用户不需要此方式; 如果你想托管自己的端点,它使用的代码与 mcp.sota.io 相同。

大多数用户需要的是 stdio 传输方式。

一键安装到 Claude Desktop / Claude.ai 网页版

如果你使用 Claude Desktop 或 Claude.ai(Pro / Max / Team / Enterprise 计划), 最简单的安装方式不是这个 npm 软件包,而是托管在 mcp.sota.io 的远程 端点。点击此处:

添加到 Claude →

OAuth 负责处理身份验证。新用户可以完全在 Claude 内通过 create_account 工具注册,无需切换到浏览器标签页。

参见 https://sota.io/docs/integrations/claude。

快速入门(stdio — Claude Code、Cursor、Windsurf、…)

  1. 从 sota.io/dashboard/settings 获取 API 密钥
  2. 配置你的 IDE
  3. 告诉你的 AI:“将我的应用部署到 sota.io”

安装

无需安装 — 直接使用 npx 运行:

npx -y @sota-io/mcp

或全局安装:

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

配置

Claude Code

命令行方式:

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

然后在 Shell 环境中设置你的 API 密钥:

export SOTA_API_KEY=sota_your_api_key_here

手动编辑 JSON(.claude/settings.json):

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

编辑 claude_desktop_config.json:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %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

在项目根目录中创建 .cursor/mcp.json:

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

编辑 ~/.codeium/windsurf/mcp_config.json:

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

工具

工具描述参数
deploy部署应用project_id、directory?
get-logs获取构建/运行时日志project_id、deployment_id?
set-env设置环境变量project_id、key、value
get-env列出环境变量project_id
rollback回滚到上一次部署project_id
get-status获取部署状态project_id
list-projects列出所有项目(无)
create-project创建新项目name
delete-project永久删除项目project_id
add-domain为项目添加自定义域名project_id、domain
list-domains列出自定义域名project_id
get-domain获取域名详情和 DNS 状态project_id、domain_id
remove-domain移除自定义域名project_id、domain_id
deploy

将应用部署到 sota.io。此工具会将指定目录打包为 tar.gz 压缩包并上传。

参数类型必填描述
project_idstring是要部署到的项目 ID
directorystring否要部署的目录(默认为当前工作目录)
"Deploy my app in the current directory to sota.io"
get-logs

获取部署的构建和运行时日志。如果未提供 deployment_id,则返回最新部署的日志。

参数类型必填描述
project_idstring是要获取日志的项目 ID
deployment_idstring否特定部署 ID(默认为最新部署)
"Show me the build logs for my sota.io project"
set-env

为项目设置环境变量。

参数类型必填描述
project_idstring是项目 ID
keystring是环境变量名称(例如,DATABASE_URL)
valuestring是环境变量值
"Set DATABASE_URL on my project to postgres://localhost/mydb"
get-env

列出项目的环境变量。

参数类型必填描述
project_idstring是项目 ID
"Show all environment variables for my project"
rollback

将项目回滚到上一次部署。此操作会切换容器映像,不会重新构建。

参数类型必填描述
project_idstring是要回滚的项目 ID
"Roll back my app to the previous version"
get-status

获取项目当前的部署状态,包括 URL 和近期部署历史记录。

参数类型必填描述
project_idstring是要查询状态的项目 ID
"What's the status of my sota.io deployment?"
list-projects

列出 sota.io 账户中的所有项目。

无需参数。

"List my sota.io projects"
create-project

在 sota.io 上创建新项目。项目 slug 会根据名称自动生成(小写字母、连字符,最多 63 个字符),并用作子域名({slug}.sota.io)。例如,"My API" 会变为 my-api.sota.io。

参数类型必填描述
namestring是新项目的名称
"Create a new sota.io project called my-api"
delete-project

从 sota.io 删除项目及其所有部署。此操作不可撤销。

参数类型必填描述
project_idstring是要删除的项目 ID
"Delete my sota.io project abc123"
add-domain

为项目添加自定义域名。返回用于指向该域名的 DNS 配置说明。

参数类型必填描述
project_idstring是项目 ID
domainstring是域名(例如,"example.com" 或 "app.example.com")
"Add example.com as a custom domain to my project"
list-domains

列出项目的所有自定义域名。

参数类型必填描述
project_idstring是项目 ID
"Show all custom domains for my project"
get-domain

获取域名详情,包括 DNS 验证状态和 SSL 状态。

参数类型必填描述
project_idstring是项目 ID
domain_idstring是域名 ID
"Check the DNS status of my custom domain"
remove-domain

从项目中移除自定义域名。

参数类型必填描述
project_idstring是项目 ID
domain_idstring是要移除的域名 ID
"Remove the custom domain from my project"

环境变量

变量必填默认值描述
SOTA_API_KEY是—带有 sota_ 前缀的 API 密钥。在 sota.io/dashboard/settings 创建
SOTA_API_URL否https://api.sota.ioAPI 基础 URL

故障排除

“npx: command not found”

问题: IDE 未继承加载 nvm/fnm 的 shell PATH。

解决方法: 使用 npx 的绝对路径。使用以下命令查找:

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

然后更新 MCP 配置,使用绝对路径:

{
  "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 环境变量”

问题: MCP 配置中未设置 API 密钥。

解决方法: 在 MCP 服务配置中添加 env 块。Shell 环境变量不会自动传递给 MCP 服务,因此必须在配置中添加 env 块:

{
  "env": {
    "SOTA_API_KEY": "sota_your_api_key_here"
  }
}
连接被拒绝或超时错误

问题: 网络问题或 API URL 错误。

解决方法: 检查互联网连接。如果使用自定义 API URL,请确认 SOTA_API_URL 设置正确。默认值为 https://api.sota.io。

许可证

MIT

链接

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。