Token导航 LogoToken导航TokenDH.com
MCP App Deployer logo
运维云端未说明官方级别未说明来源级核验

MCP App Deployer

MCP Server

用于管理Kubernetes应用部署的服务,支持从容器镜像或OCI Helm图表生成并推送应用定义到GitOps仓库。

工具数

5

提示词数

0

GitHub Stars

0

资源数

0
容器化GoClaudeClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

noiseoverip

提供方

noiseoverip

最后核验

2026/5/17 20:20

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

用于部署到Kubernetes的MCP服务器

本演练演示如何使用 app-deployer 管理Kubernetes应用程序。

它支持两种部署模式:

  • deploy-image 从容器映像生成Kubernetes清单,并将其推送到GitOps存储库。
  • deploy-helmchart 推送指向OCI Helm图的ArgoCD应用程序定义。

这两种模式都使用相同的GitOps工作流:服务器将ArgoCD应用程序定义写入您的git存储库,ArgoCD将其提取并部署到您的集群中。

先决条件

  • Kubernetes集群(和 kubeconfig)
  • GitOps的GitHub存储库
  • 群集上安装了ArgoCD
  • ArgoCD存储库配置了所需的凭据,以便在使用时提取Helm OCI映像 deploy-helmchart 模式。
  • ArgoCD存储库配置为从GitHub存储库读取,服务器将在其中推送清单和应用程序定义。
  • GITHUB_TOKEN 具有repo访问权限

安装

  1. 构建服务器:
   go build -o app-deployer .

配置

将服务器添加到MCP客户端配置中(例如。, claude_desktop_config.json):

{
  "mcpServers": {
    "app-deployer": {
      "command": "/absolute/path/to/app-deployer",
      "args": [
        "--kubeconfig", "/path/to/kubeconfig",
        "--github-token", "YOUR_GITHUB_TOKEN",
        "--github-url", "https://github.com/your/repo",
        "--namespace", "applications", // Target namespace for apps
        "--domain", "example.com" // Base domain for Ingress
      ]
    }
  }
}

HTTP传输(流式HTTP)

默认情况下,服务器通过stdio运行。要通过HTTP公开它,请传递 --http 以及密码:

./app-deployer \
  --kubeconfig /path/to/kubeconfig \
  --github-token YOUR_GITHUB_TOKEN \
  --github-url https://github.com/your/repo \
  --http :8080 \
  --http-password "$MCP_HTTP_PASSWORD" \
  --http-path /mcp

旗帜:

  • --http :监听地址(例如。 :8080).省略使用stdio。
  • --http-password :每次请求都需要携带令牌。也可以通过以下方式提供 MCP_HTTP_PASSWORD 有人是。
  • `--http-path

:MCP端点的URL路径(默认为 /mcp`).

客户端必须以以下方式发送密码 Authorization: Bearer (或 X-MCP-Password: ).未经授权的请求得到 401.

配置Claude Code以使用HTTP服务器

通过添加 claude mcp CLI:

claude mcp add --transport http app-deployer https://your-host:8080/mcp \
  --header "Authorization: Bearer $MCP_HTTP_PASSWORD"

或者直接添加到 ~/.claude.json (或 .mcp.json 在你的项目中) mcpServers:

{
  "mcpServers": {
    "app-deployer": {
      "type": "http",
      "url": "https://your-host:8080/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_PASSWORD"
      }
    }
  }
}

仅供本地使用,请将URL指向 http://127.0.0.1:8080/mcp对于网络上可访问的任何内容,在服务器前面终止TLS(例如在入口后面)——承载令牌在每次请求时都会发送。

用法

1.从映像部署应用程序

使用 deploy-image 创建新部署的工具。

工具: 部署映像 论据:

  • app_name:“我的应用程序”
  • image:“nginx:最新”

这将:

  • 在Git中生成Kubernetes清单。
  • 在Git中创建ArgoCD应用程序。
  • 将更改推送到存储库。ArgoCD随后应同步应用程序。

2.从OCI Helm Chart部署应用程序

使用 deploy-helmchart 该工具用于创建安装OCI Helm chart的ArgoCD应用程序。

工具: 部署头盔图 论据:

  • app_name:“我的应用程序”
  • chart: "oci://registry-1.docker.io/bitnamicharts/nginx:15.9.0"

这将:

  • 在Git中创建一个指向OCI图表的ArgoCD应用程序。
  • 在生成的ArgoCD应用程序中覆盖这些Helm值:

- ingress.name = app_name - ingress.host = app_name.domain

  • 将更改推送到存储库。ArgoCD随后应同步应用程序。

笔记:

  • 图表参数必须是包含版本标记的完整OCI图表引用。
  • ArgoCD希望OCI仓库URL没有 oci:// 在生成的清单中添加前缀,因此服务器会相应地重写输入。

3.检查状态

使用状态工具检查应用程序是否已部署且运行正常。

工具: 状态 论据:

  • app_name:“我的应用程序”

输出将显示:

  • Git清单状态
  • ArgoCD应用程序状态(运行状况/同步)
  • 入口可达性

对于Helm chart部署,状态仍然按名称检查ArgoCD应用程序。它可能会报告生成的清单在Git中不存在,因为Helm模式只写入ArgoCD应用程序清单。

4.销毁应用程序

使用销毁工具删除应用程序。

工具: 摧毁 论据:

  • app_name:“我的应用程序”

这将从Git中删除清单,触发ArgoCD修剪资源。

5.更新应用程序

使用更新工具根据以后的资源更新应用程序。

工具: 更新 论据:

  • app_name:“我的应用程序”

这将触发部署资源的重启,从而使其获取最新映像。

update 仍然适用于使用创建的应用程序 deploy-image,其中部署以以下名称命名 app_name 存在于目标命名空间中。

E2E测试

如果您设置了环境,则可以运行端到端测试:

export KUBECONFIG=~/.kube/config
export GITHUB_TOKEN=...
export GITHUB_URL=...
export E2E_TEST=true
go test -v .

目录标签

目录标签

容器化GoClaudeKubernetes部署混合部署GitOps应用管理Helm

支持客户端

Claude

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

token

工具数量(toolCount,工具数)

5

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明token部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP