这是一个MCP(Model Context Protocol)服务器实现,它作为Stakpak CLI的一部分,可以由Stakpak代理或其他支持MCP的LLM客户端调用,以执行本地操作或与Stakpak平台交互。
项目简介
Stakpak MCP 服务器是 Stakpak CLI 工具内置的一个组件。它实现了 Model Context Protocol (MCP),允许连接的客户端(如 Stakpak Agent 或其他 LLM 应用)以标准化的方式访问服务器端提供的功能。这些功能主要表现为可调用的“工具”(Tools)。
主要功能点
该MCP服务器通过其暴露的工具提供以下能力:
- 执行系统命令: 允许LLM代理在服务器运行的本地环境中执行任意 shell 命令,实现自动化运维任务。
- 文件操作: 支持读取、创建、修改(字符串替换、按行插入)、删除文件。
- 目录列表: 可以列出指定目录下的文件和子目录。
- 智能代码搜索: 能够通过自然语言查询索引在Stakpak平台上的代码块。
- 代码生成与转译: 利用Stakpak平台的代码智能能力,根据提示生成或转译基础设施即代码(如Terraform, Kubernetes, Dockerfile等)。
安装步骤
该MCP服务器作为Stakpak CLI的一部分发布。安装Stakpak CLI即可同时获得MCP服务器组件。
推荐使用 Homebrew 安装 (适用于 Linux 和 macOS):
- 添加Stakpak的 Homebrew 源:
brew tap stakpak/stakpak - 安装Stakpak CLI:
brew install stakpak
其他安装方式(如二进制下载、Docker镜像)请参考Stakpak官方文档。
服务器配置
此MCP服务器被设计为由兼容的MCP客户端启动和连接。MCP客户端通常需要以下信息来配置此服务器:
- Server Name (服务器名称): 例如 "stakpak-local-mcp"
- Command (启动命令): 启动Stakpak CLI主程序的命令路径,例如在安装后通常就是 "stakpak"。
- Args (启动参数): 启动MCP服务器模式所需的参数。根据本项目代码,该参数为 '["mcp"]'。
- Transport (传输协议): 该服务器使用基于HTTP的传输协议,通常配置为 "http"。
- URI (连接地址): 服务器默认监听的地址和路径,通常是 "http://localhost:65535/mcp"。
一个典型的MCP客户端配置片段可能如下所示(具体格式取决于客户端):
{ "name": "stakpak-local-mcp", "transport": "http", "uri": "http://localhost:65535/mcp", "command": ["stakpak", "mcp"], "description": "Stakpak CLI内置的本地MCP服务器" }
用户无需手动运行复杂的启动命令或管理端口,这些都由兼容的MCP客户端负责配置、启动和连接。
基本使用方法
用户通常不会直接与此MCP服务器交互。它是作为Stakpak Agent或其他MCP客户端的后端存在。要使用这些工具,用户需要运行Stakpak CLI的Agent命令(例如 'stakpak' 启动交互模式,或 'stakpak agent run' 启动非交互模式),然后通过与LLM代理交互来间接调用这些工具。
例如,在交互模式下,当LLM代理决定需要运行一个本地命令时,它会通过MCP协议向此服务器发送一个 'tools/call' 请求来调用 'run_command' 工具,服务器执行命令并将结果返回给代理。
# 示例:启动Stakpak Agent的交互模式,该模式会连接本地MCP服务器 stakpak
或者通过 'stakpak mcp' 命令直接启动服务器进程(通常由客户端负责启动):
# 示例:直接启动MCP服务器(通常无需用户手动执行) stakpak mcp
关键词
命令执行, 文件管理, 代码智能, DevOps自动化, 本地工具
信息
分类
开发者工具