肩部MCP服务器
肩部内部开发平台的模型上下文协议(MCP)服务器。它直接与Kubernetes API进行工作空间、应用程序和基础设施生命周期操作,并与Loki/Tempo集成以进行日志和跟踪。
快速开始
需要Node.js 18.17+。
从独立仓库通过npx运行(从monorepo同步):
npx github:jherreros/shoulders-mcp-serverMCP客户端配置示例:
{
"mcpServers": {
"shoulders": {
"command": "npx",
"args": ["github:jherreros/shoulders-mcp-server"]
}
}
}在本地构建和运行:
cd /Users/juan/source/shoulders/shoulders-mcp-server
npm install
npm run build
node dist/server.js工具
工作区
create_workspace:创建新工作区。list_workspaces:列出所有工作区。use_workspace:设置活动工作区。current_workspace:阅读活动工作区。delete_workspace:删除工作区。
应用程序
deploy_app:创建或更新Web应用程序,包括内部服务模式、env/envFrom、HTTP探测、资源和安全上下文。list_apps:列出Web应用程序。get_app_status:获取Web应用程序清单。delete_app:删除Web应用程序。
工作量
deploy_workload:创建或更新worker、一次性作业或CronJob。list_workloads:列出工作量。delete_workload:删除工作负载。
基础设施
add_database:使用PostgreSQL数据库、额外数据库、Secret和init SQL选项创建StateStore。add_bucket:通过StateStore创建Garage S3存储桶。add_stream:创建事件流。list_infra:列出StateStore/EventStream资源。delete_infra:删除StateStore/EventStream资源。
平台与集群
get_platform_status:集群/平台运行状况(Flux、Crossplane、Gateway)。list_clusters:列出本地vind集群。use_cluster:将上下文切换到vind集群。
可观测性
get_app_logs:通过Loki获取最近的日志;回落到shoulders logs如果洛基不可用。get_trace:从Tempo获取ID跟踪。
资源
服务器公开跨平面模式和示例清单作为MCP资源:
shoulders://schemas/workspaceshoulders://schemas/webapplicationshoulders://schemas/workloadshoulders://schemas/state-storeshoulders://schemas/event-streamshoulders://examples/workspaceshoulders://examples/webapplicationshoulders://examples/workloadshoulders://examples/state-storeshoulders://examples/event-stream
环境变量
SHOULDERS_REPO_ROOT:肩部仓库的路径(用于解析模式/示例)。SHOULDERS_OBSERVABILITY_NAMESPACE:可观察性命名空间(默认observability).SHOULDERS_LOKI_SERVICE:Loki服务名称(默认loki).SHOULDERS_TEMPO_SERVICE:Tempo服务名称(默认tempo).SHOULDERS_LOKI_REMOTE_PORT:Loki服务端口(默认3100).SHOULDERS_TEMPO_REMOTE_PORT:Tempo服务端口(默认3100).SHOULDERS_MCP_PORT_FORWARD_TIMEOUT_MS:端口转发超时(毫秒)(默认值15000).KUBECTL_BIN:路径kubectl(默认值kubectl).KUBECONFIG:将Kubeconfig设置为目标。
备注
get_trace需要跟踪ID。对于跟踪搜索/发现,请将Grafana Explore与Tempo数据源一起使用。get_app_logs在可用时使用Loki;回退流模式在8秒后被截断。
