使用说明
地形+塞雷纳MCP(本地,码头化)
本地友好的Docker Compose设置:
- HashiCorp地形mcp服务器 在
streamable-http模式(注册表/docs)。 - Serena MCP 在SSE模式下,工作区已挂载以进行代码感知
.tf编辑。
两者都绑定到 127.0.0.1 默认情况下,这样队友就可以通过共享安全地旋转它们 .env.
快速启动
cp .env.example .env
# (optional) edit .env to set TFE_TOKEN if you need authenticated registry access
docker compose up -d # starts both terraform-mcp and serena-mcp
docker compose ps
# host-side checks (terraform MCP health, Serena SSE):
curl -sSf http://127.0.0.1:${MCP_PORT:-8080}/health
curl -I http://127.0.0.1:${SERENA_MCP_PORT:-9121}/sse
端点(主机):
- Terraform MCP健康状况:
http://127.0.0.1:${MCP_PORT:-8080}/health - 地形MCP端点:
http://127.0.0.1:${MCP_PORT:-8080}${MCP_ENDPOINT:-/mcp} - Serena MCP SSE:检查容器日志中打印的SSE路径(通常
http://127.0.0.1:${SERENA_MCP_PORT:-9121}/sse) - Serena仪表板:
http://127.0.0.1:${SERENA_DASHBOARD_PORT:-24282}
文件
compose.yaml–HashiCorp地形mcp服务器streamable-http模式;Serena MCP处于SSE模式,安装了工作空间;两者都绑定到本地主机。.env.example–端口/端点/CORS/auth、Serena端口和TZ的默认值。AGENTS.md–这些MCP如何适应我们的代理设置(两者都有光标注释)。ROADMAP.md–未来的改进(TLS、测试、QoL)。
为什么这样设置
- 默认安全:仅发布于
127.0.0.1;Terraform MCP使用严格的CORS默认值。 - Env驱动:加入
.env在不编辑compose的情况下更改port/path/rorigins/auth。 - 可重复的:固定图像和显式命令。
- 工作区感知:Serena运行时挂载了用于代码编辑的仓库。
- 已测试:使用curl对Terraform健康和Serena SSE进行本地验证。
光标注释
- 地形MCP:将光标指向
http://127.0.0.1:${MCP_PORT:-8080}${MCP_ENDPOINT:-/mcp}(需要HTTP MCP支持)。保持主机绑定127.0.0.1. - Serena MCP:此组合使用SSE传输
${SERENA_MCP_PORT:-9121}.检查docker logs -f serena-mcp对于Serena打印的确切SSE URL/路径,然后将Cursor的HTTP/SSE MCP服务器配置为该URL。
示例 ~/.cursor/mcp.json (默认值来自 .env.example)
{
"mcpServers": {
"terraform-mcp": {
"type": "http",
"url": "http://127.0.0.1:8080/mcp"
},
"serena-mcp": {
"type": "sse",
"url": "http://127.0.0.1:9121/sse"
}
}
}
如果更改,请调整端口或端点 MCP_PORT, MCP_ENDPOINT,或 SERENA_MCP_PORT 在 .env.
可选:在本地添加TLS
如果你想用HTTPS进行本地测试,我们可以添加一个Caddy/Traefik sidecar来终止TLS https://localhost 同时保持MCP容器的私密性。看 ROADMAP.md.
停止
docker compose down
