Vmware Fusion Mcp Server

Vmware Fusion Mcp Server

🚀 VMware Fusion MCP Server

VMware Fusion MCP Server 是一个基于 FastMCP 构建的模型上下文协议(MCP)服务器,可通过 Fusion REST API 管理 VMware Fusion 虚拟机,为用户提供便捷的虚拟机管理方案。

🚀 快速开始

  • 确保满足“先决条件”中的各项要求。
  • 按照“安装步骤”克隆仓库并安装依赖。
  • 完成“VMware Fusion 设置”,启用 REST API 并启动服务。
  • 配置认证信息,运行 MCP 服务器。

✨ 主要特性

Demo

  • 列出虚拟机:查看 VMware Fusion 中注册的所有虚拟机。
  • 获取虚拟机信息:检索特定虚拟机的详细信息。
  • 电源操作:对虚拟机执行电源操作(开启、关闭、挂起、暂停、恢复、重置)。
  • 获取电源状态:查询虚拟机的当前电源状态。
  • 现代 MCP/LLM 集成:将所有功能作为 MCP 工具暴露给大语言模型(LLM)和代理框架。

📦 安装指南

  1. 克隆仓库
    git clone https://github.com/yeahdongcn/vmware-fusion-mcp-server.git
    cd vmware-fusion-mcp-server
    
  2. 设置环境并安装依赖
    make env
    

📚 详细文档

VMware Fusion 设置

  1. 启用 REST API
    • 打开 VMware Fusion > 偏好设置 > 高级。
    • 勾选“启用 REST API”。
    • 记录 API 端口(默认:8697)。
  2. 启动 REST API 服务
    vmrest
    
    默认情况下,API 将在 http://localhost:8697 可用。

配置

服务器默认连接到 http://localhost:8697 的 VMware Fusion REST API。你必须使用环境变量为 vmrest API 配置认证:

  • VMREST_USER:vmrest API 的用户名(启用认证时必需)。
  • VMREST_PASS:vmrest API 的密码(启用认证时必需)。 这些变量必须在你的 shell、VS Code MCP 配置或部署环境中设置。

示例:带有凭证的 VS Code MCP 服务器配置

{
"mcpServers": {
"vmware-fusion": {
"command": "uvx",
"args": ["vmware-fusion-mcp-server"],
"env": {
"VMREST_USER": "your-username",
"VMREST_PASS": "your-password"
}
}
}
}
  • VMREST_USERVMREST_PASS 设置为你的 vmrest 凭证。

使用方法

运行 MCP 服务器

使用 Make
VMREST_USER=your-username VMREST_PASS=your-password make run
使用 uvx(推荐用于 VS Code/LLM)
VMREST_USER=your-username VMREST_PASS=your-password uvx vmware-fusion-mcp-server

VS Code / LLM 集成

要在 VS Code(或任何 MCP 兼容客户端)中使用此服务器作为工具提供者:

  1. 安装 uvx
    uv pip install uvx
    
  2. 添加到你的 MCP 服务器配置(例如 .vscode/mcp.json
{
"mcpServers": {
"vmware-fusion": {
"command": "uvx",
"args": ["vmware-fusion-mcp-server"],
"env": {
"VMREST_USER": "your-username",
"VMREST_PASS": "your-password"
}
}
}
}
  • VMREST_USERVMREST_PASS 设置为你的 vmrest 凭证。
  • 现在你可以在任何支持 MCP 的 LLM 或 VS Code 代理中使用 VMware Fusion 工具。

MCP 工具

list_vms

  • 描述:列出 VMware Fusion 中的所有虚拟机。
  • 参数:无

get_vm_info

  • 描述:获取特定虚拟机的详细信息。
  • 参数
    • vm_id(字符串):虚拟机的 ID

power_vm

  • 描述:对虚拟机执行电源操作。
  • 参数
    • vm_id(字符串):虚拟机的 ID
    • action(字符串):可选值:"on"、"off"、"suspend"、"pause"、"unpause"、"reset"

get_vm_power_state

  • 描述:获取特定虚拟机的电源状态。
  • 参数
    • vm_id(字符串):虚拟机的 ID

开发

运行测试

make test

格式化代码

make fmt

代码检查

make lint

项目结构

  • vmware_fusion_mcp/server.py - 主要的 FastMCP 服务器实现。
  • vmware_fusion_mcp/vmware_client.py - VMware Fusion REST API 客户端。
  • tests/ - 单元测试和集成测试。

📄 许可证

本项目采用 MIT 许可证,详情请参阅 LICENSE。

👥 贡献指南

  1. 分叉仓库。
  2. 创建功能分支。
  3. 进行更改。
  4. 运行测试和代码检查:make test && make lint
  5. 提交拉取请求。

🔗 参考资料

  • 0 关注
  • 0 收藏,24 浏览
  • system 提出于 2025-10-01 21:03

相似服务问题

相关AI产品