Appaloft MCP server
让 MCP client 使用 Appaloft operation catalog 中的真实部署、配置、观察和恢复工具。
Appaloft MCP server 是 Appaloft 的可调用工具入口。它把现有 operation catalog 暴露给 MCP client,不创建新的 AI-only 业务模型。Skill 负责流程判断;MCP 负责在已配置工具时执行精确的 command/query 调用。
启动 stdio server:
appaloft mcp stdio启动 server 本身不会部署应用、创建资源或修改状态。只有 MCP client 调用具体 tool 时才会进入 Appaloft command/query bus。
@appaloft/ai-mcp 是仓库内负责 MCP transport、descriptor、resources、prompts 和测试的 source
package。独立 appaloft-mcp package/bin 等 release packaging 接好后再发布;当前文档化入口是
appaloft mcp stdio。
每个 tool 都对应一个 operation key:
deployments.create->deployments_createdeployments.plan->deployments_planresources.configure-source->resources_configure_sourceruntime-monitoring.samples.list->runtime_monitoring_samples_listsystem.doctor->system_doctor
Tool descriptor 来自 packages/application/src/operation-catalog.ts,输入 JSON schema 来自同一个
command/query Zod schema。Command 通过 CommandBus.execute,Query 通过 QueryBus.execute,
并使用 entrypoint: "mcp"。
Tool descriptor 会带 MCP annotations,标记 query 只读、破坏性 command、幂等 query,以及部署类操作可能触达外部系统。Tool response 同时返回 JSON text 和 structured content,兼容旧 MCP client 和支持结构化结果的新 host。
不存在 quick_deploy_create 这类 agent-only 工具。如果某个行为不在 operation catalog 中,就不是
Appaloft MCP operation。
只读 resources:
appaloft://operation-catalogappaloft://tools/high-valueappaloft://skill/appaloftappaloft://skill/deploy-protocolappaloft://tools/mcp-guideappaloft://docs/agent
Prompts:
appaloft-first-deployappaloft-recover-deploymentappaloft-configure-resourceappaloft-observe-runtimeappaloft-publish-static-artifact
Resources 和 prompts 只提供上下文和 workflow 起点,不拥有写侧策略、租户选择、后台任务或隐藏状态。
- 不绕过 Appaloft 直接调用 repository、use case、provider SDK、Docker、SSH、proxy 或数据库。
- 不读取或输出
.env、私钥、token、cookie、database URL、云厂商凭据、raw secret 或未脱敏日志。 - 鉴权、tenant context、operation guard、确认字段、redaction 和结构化错误都保留在既有 runtime 边界。
- 删除和破坏性操作仍必须使用对应 schema 中的 delete-safety 和 exact confirmation 字段。
Appaloft Skill 是 agent 的流程协议:识别意图、选择 CLI/API/Web/MCP 表面、按顺序调用既有操作,并组织最终回复。MCP 是 callable tool layer:当 host 已配置 Appaloft MCP 时,skill 可以优先使用工具调用。
用户说 /appaloft help me deploy this repo 时,/appaloft 是 host 的 skill invocation phrase,不是 Appaloft CLI 命令。加载 skill 后,再根据当前 session 是否有 MCP tools 决定使用 MCP、CLI、HTTP/API 或 Web。