使用说明
项目简介
MCP PowerShell 执行服务器是一个基于 Model Context Protocol (MCP) 的后端应用,它接收并执行 PowerShell 脚本,并将执行结果返回给客户端。这使得 AI 助手等 MCP 客户端能够利用 PowerShell 的强大功能,进行系统管理、自动化任务处理等。
主要功能点
- PowerShell 脚本执行: 接收客户端发送的 PowerShell 脚本,并在服务器端安全执行。
- 实时结果返回: 脚本执行完毕后,服务器将实时返回执行结果,包括标准输出和错误信息。
- MCP 协议支持: 遵循 MCP 协议标准,可以与任何兼容 MCP 协议的客户端(如 GitHub Copilot 等)进行集成。
- 工具注册: 通过 '@mcp.tool()' 装饰器,将 PowerShell 脚本执行功能注册为 MCP 工具,供客户端调用。
安装步骤
-
克隆仓库
git clone https://github.com/dfinke/mcp-powershell-exec.git cd mcp-powershell-exec -
环境准备
- 确保已安装 Python 3.10 或更高版本。
- 确保已安装 PowerShell 5.1 或更高版本。
- (可选)建议创建 Python 虚拟环境以隔离项目依赖。
-
运行服务器 在项目根目录下,使用 Python 运行 'server.py' 文件:
python server.py服务器默认会在本地启动,等待 MCP 客户端连接。
服务器配置
要让 MCP 客户端(例如 GitHub Copilot in VSCode Insiders)连接到此服务器,您需要在客户端的 MCP 配置文件中添加服务器配置信息。以下是一个示例 'mcp.json' 配置,通常位于客户端的 '.vscode' 目录下:
{ "servers": { "powershell-integration": { // 服务器名称,客户端用于识别和调用 "command": "py", // 启动服务器的命令,这里使用 python 解释器 "args": [ "drive:/path/to/server.py" // 服务器脚本 server.py 的路径,请替换为实际路径,例如 "D:/mcp-powershell-exec/server.py" ], "env": {} // 环境变量配置,如果服务器需要特定环境变量,可以在这里配置 } } }
配置说明:
- '"servers"': 定义所有 MCP 服务器的配置。
- '"powershell-integration"': 您为此 PowerShell 服务器定义的名称,可以自定义,客户端通过此名称引用服务器。
- '"command"': 启动服务器进程的命令。这里假设 'python' 命令可以直接运行 Python 解释器。如果您的 Python 环境配置不同,请修改为正确的 Python 解释器路径或命令,例如 'python3' 或 Python 解释器的完整路径。
- '"args"': 传递给启动命令的参数列表。这里指定了 'server.py' 脚本的路径。请务必将 '"drive:/path/to/server.py"' 替换为 'server.py' 文件在您本地文件系统中的实际路径。
- '"env"': 可选的环境变量配置。如果您的服务器脚本依赖特定的环境变量,可以在这里设置。
基本使用方法
- 启动 MCP PowerShell 执行服务器:按照安装步骤中的说明运行 'server.py'。
- 配置 MCP 客户端:在 MCP 客户端(如 VSCode Insiders 中的 GitHub Copilot)中配置 'mcp.json' 文件,添加上述服务器配置信息,并确保路径正确。
- 启用 Agent Mode (代理模式):在 Copilot Chat 中启用 "Agent mode" 或 "Copilot Edits",并刷新工具列表。客户端应该能够检测到名为 "powershell-integration" 的服务器及其提供的工具。
- 在客户端中使用工具:在 Copilot Chat 中,您可以使用 '@powershell-integration.run_powershell' 工具来执行 PowerShell 代码。例如,您可以输入类似 '#run_powershell Get-Process' 的指令,Copilot 会调用 MCP 服务器执行 'Get-Process' 命令,并将结果返回给您。
信息
分类
桌面与硬件