形成mcp
基础设施即代码(IaC)平台的MCP服务器和AI编码技能 表格提供15个MCP工具用于查询和管理云基础设施,以及13种技能,教你的AI编码助手如何通过formae执行常见的基础设施工作流程。
先决条件
- 转到1.25+
- 一个流动的代理人(
formae agent start)
安装
克劳德代码(通过插件市场)
注册市场:
/plugin marketplace add platform-engineering-labs/formae-marketplace安装插件:
/plugin install formae-mcp@formae-marketplace重新启动Claude Code以使插件生效。MCP服务器二进制文件在首次使用时自动构建。
通过让克劳德跑来验证 /formae-status.
克劳德代码(手册)
如果你不想使用市场:
- 克隆仓库:
git clone https://github.com/platform-engineering-labs/formae-mcp.git ~/.claude/plugins/formae-mcp- 使用插件目录启动Claude Code:
claude --plugin-dir ~/.claude/plugins/formae-mcpMCP服务器二进制文件在首次使用时自动构建。
法典
看 .codex/INSTALL.md 有关Codex特定的安装说明。
开源代码
看 .opencode/INSTALL.md 有关OpenCode特定的安装说明。
可用技能
| 技能 | 描述 |
|---|---|
formae-status | 检查正在运行的命令、部署进度、最近的操作和失败 |
formae-stacks | 查看基础架构堆栈、组织和资源计数 |
formae-resources | 按类型、堆栈、标签或管理状态查询已部署的资源 |
formae-targets | 列出云目标、配置的区域和提供商帐户 |
formae-plugins | 列出已安装的插件、支持的提供程序和资源类型 |
formae-apply | 通过应用forma文件或协调堆栈来部署基础架构 |
formae-patch | 在不完全协调的情况下进行有针对性的基础设施更改 |
formae-destroy | 拆除基础设施资源、堆栈或环境 |
formae-fix-code-drift | 检查带外更改,并决定是吸收还是覆盖 |
formae-discover | 在云帐户中查找非托管资源 |
formae-import | 对未管理/已发现的资源进行形式化管理 |
formae-plugin-new | 构建一个新的formae资源插件 |
formae-plugin-add-resource | 向现有插件添加新的资源类型 |
formae-config | 在中管理命名的formae配置文件 ~/.config/formae/ 通过 fcfg CLI |
可用的MCP工具
只读
| 工具 | 说明 |
|---|---|
list_resources | 使用可选筛选器查询资源 |
list_stacks | 检索所有堆栈 |
list_targets | 查询已配置的云目标 |
get_command_status | 获取特定命令的状态 |
list_commands | 列出带有可选查询和筛选器的命令 |
get_agent_stats | 检索代理统计信息 |
check_health | 形式代理的健康检查 |
list_plugins | 列出活动插件 |
list_changes_since_last_reconcile | 列出自上次对账以来的基础设施更改 |
extract_resources | 将资源提取为PKL代码 |
突变
| 工具 | 说明 |
|---|---|
apply_forma | 部署或更新基础设施(协调或修补模式) |
destroy_forma | 按文件或查询删除基础结构 |
cancel_commands | 取消正在运行的命令 |
force_sync | 触发即时资源同步 |
force_discover | 立即触发资源发现 |
配置
默认情况下,formae mcp连接到formae代理 http://localhost:49684。要覆盖此内容,请执行以下操作:
环境变量 (最高优先级):
export FORMAE_AGENT_URL=http://my-agent-host
export FORMAE_AGENT_PORT=8080配置文件 (~/.config/formae/formae.conf.pkl):
amends "formae:/Config.pkl"
cli {
api {
url = "http://my-agent-host"
port = 8080
}
}优先级:环境变量>配置文件>默认值。
