项目简介

Muster是一个基于Model Context Protocol (MCP) 构建的通用控制平面,专门解决平台工程师和AI代理在使用多个MCP服务器时面临的工具污染、服务器管理复杂和工具发现困难等问题。它作为一个元MCP服务器,能够动态管理多个MCP服务器进程,为AI代理提供智能工具发现能力。

主要功能

  • MCP服务器管理:启动、停止、重启MCP服务器,支持健康监控和自动恢复
  • 智能工具发现:通过元工具(list_tools、filter_tools、call_tool)实现动态工具访问
  • 工作流自动化:将代理发现的任务流程持久化为确定性工作流,降低AI成本
  • 服务类管理:定义和管理服务依赖关系及前置条件
  • 动态配置管理:热重载服务器配置
  • 安全访问控制:默认阻止破坏性工具,支持项目级工具过滤
  • 多集群调试支持:通过ServiceClass处理跨集群认证和连接
  • 完整可观测性集成:集成Prometheus、Grafana等监控工具

安装步骤

1. 克隆并构建

git clone https://github.com/giantswarm/muster.git
cd muster && go build .

2. 配置MCP服务器

创建配置文件(如kubernetes-server.yaml):

apiVersion: muster.io/v1
kind: MCPServer
name: kubernetes
spec:
  type: localCommand
  command: ["mcp-kubernetes"]
  autoStart: true

3. 注册服务器

./muster create mcpserver kubernetes.yaml

4. 连接AI代理

在VSCode/Cursor的settings.json中添加:

{
  "mcpServers": {
    "muster": {
      "command": "muster",
      "args": ["standalone"]
    }
  }
}

5. 启动服务

./muster serve

基本使用方法

智能工具发现

  • 通过元工具动态发现可用工具:'list_tools'、'filter_tools'、'call_tool

### 6. 使用元工具
AI代理可以通过以下命令发现和使用工具:
```bash
# 动态发现可用工具
agent: "What Kubernetes tools are available?"
→ filter tools {pattern="kubernetes"}

# 按任务需求查找工具
agent: "I need to check pod logs"
→ filter tools {description="logs"}

服务器配置

Muster作为MCP服务器需要配置启动命令和参数:

{
  "mcpServers": {
    "muster": {
      "command": "muster",
      "args": ["standalone"]
}

配置信息

  • server name: "muster"
  • command: "muster"
  • args: ["standalone"]
undefined

信息

分类

开发者工具