桌面自动化服务器

一个基于C#和.NET 8的模型上下文协议(MCP)服务器,使AI代理能够查看、交互并自动化Windows桌面应用程序。

  • by everythingisalientome
  • C#
  • 本地部署
  • 更新于
在 GitHub 查看 everythingisalientome/custom-desktopuse-mcp

使用说明

桌面自动化MCP服务器

用C#和.NET构建的模型上下文协议(MCP)服务器。网8。此服务器使AI代理(如GitHub Copilot或Claude Desktop)能够使用标准UI Automation查看、交互和自动化Windows桌面应用程序。

功能和工具

此服务器向AI公开以下工具:

  • 应用管理
    • LaunchApp:启动应用程序(例如。, calc.exe).
    • CloseApp:关闭当前正在运行的应用程序。
  • 发现
    • GetWindowTree:扫描当前窗口并返回UI元素(按钮、输入、ID)的JSON树。
  • 交互
    • ClickElement:单击按钮或元素。
    • RightClickElement:打开上下文菜单。
    • WriteText:在字段中输入文本。
    • GetText:从显示器或文本框中读取值。
    • SendKeys:发送全局键盘快捷键(例如。, {ENTER}, ^c).
    • SelectItems:从下拉菜单(组合框)或列表(列表框)中选择项目。
    • SetCheckbox:选中或取消选中复选框。
    • SelectRadioButton:选择特定的单选选项。

先决条件

  • 操作系统: Windows 10/11
  • 框架: .NET 8.0 SDK

安装和设置

  1. 构建项目: 在项目文件夹中打开终端并运行:

    dotnet build -c Debug
    
  2. 获取可执行路径: 注意到的完整路径 .exe 生成(通常在 bin\Debug\net8.0-windows\).

配置

VS代码(GitHub副本)

创建或更新 .vscode/mcp.json 在您的工作空间中:

{
    "mcpServers": {
        "desktop-automation": {
            "command": "C:\\Path\\To\\Your\\Project\\bin\\Debug\\net8.0-windows\\DesktopMcpServer.exe",
            "args": []
        }
    }
}

想法帮助:

  1. https://www.youtube.com/watch?v=MKD-sCZWpZQ
  2. https://learn.microsoft.com/en-us/nuget/concepts/nuget-mcp-server
  3. https://github.com/FlaUI/FlaUI
  4. https://github.com/microsoft/WPF-Samples/tree/main
  5. https://github.com/FlaUI/FlaUInspect