/ Annuaire / Playground / Windows MCP
● Communauté CursorTouch ⚡ Instantané

Windows MCP

par CursorTouch · CursorTouch/Windows-MCP

Computer-use pour Windows — Claude lit l'arbre UI Automation (pas seulement les pixels), ce qui lui permet de piloter Excel, Outlook et les applications métier legacy de façon fiable.

Windows MCP expose l'API Windows UI Automation ainsi que la capture d'écran et la synthèse d'entrées comme outils MCP. Contrairement au computer-use basé uniquement sur les pixels, il fournit à Claude une vue structurée de l'arbre du bureau — fenêtres, contrôles, noms, automation IDs — pour que les clics atterrissent sur le bon contrôle même quand les mises en page changent. Conçu pour automatiser les logiciels Windows internes qui n'ont pas d'API.

Pourquoi l'utiliser

Fonctionnalités clés

Démo en direct

Aperçu en pratique

windows-mcp-cursortouch.replay ▶ prêt
0/0

Installer

Choisissez votre client

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "windows-mcp-cursortouch": {
      "command": "uvx",
      "args": [
        "windows-mcp"
      ]
    }
  }
}

Ouvrez Claude Desktop → Settings → Developer → Edit Config. Redémarrez après avoir enregistré.

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "windows-mcp-cursortouch": {
      "command": "uvx",
      "args": [
        "windows-mcp"
      ]
    }
  }
}

Cursor utilise le même schéma mcpServers que Claude Desktop. La config projet l'emporte sur la globale.

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "windows-mcp-cursortouch": {
      "command": "uvx",
      "args": [
        "windows-mcp"
      ]
    }
  }
}

Cliquez sur l'icône MCP Servers dans la barre latérale Cline, puis "Edit Configuration".

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "windows-mcp-cursortouch": {
      "command": "uvx",
      "args": [
        "windows-mcp"
      ]
    }
  }
}

Même format que Claude Desktop. Redémarrez Windsurf pour appliquer.

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "windows-mcp-cursortouch",
      "command": "uvx",
      "args": [
        "windows-mcp"
      ]
    }
  ]
}

Continue utilise un tableau d'objets serveur plutôt qu'une map.

~/.config/zed/settings.json
{
  "context_servers": {
    "windows-mcp-cursortouch": {
      "command": {
        "path": "uvx",
        "args": [
          "windows-mcp"
        ]
      }
    }
  }
}

Ajoutez dans context_servers. Zed recharge à chaud à la sauvegarde.

claude mcp add windows-mcp-cursortouch -- uvx windows-mcp

Une seule ligne. Vérifiez avec claude mcp list. Supprimez avec claude mcp remove.

Cas d'usage

Usages concrets : Windows MCP

Automatiser une application métier Windows sans API

👤 Ingénieurs RPA fatigués des licences UiPath ⏱ ~60 min advanced

Quand l'utiliser : Le fournisseur de l'application interne ne veut pas exposer d'API ; vous avez besoin que Claude saisisse des données quotidiennes.

Prérequis
  • Windows 10/11 avec l'application cible installée — Installation standard
  • Python 3.10+ pour uvx — winget install Python.Python.3.12
Déroulement
  1. Inspecter l'arbre UI
    Lance l'application BookingSystem.exe, puis dump l'arbre UI de la fenêtre principale. Je veux voir les automation IDs.✓ Copié
    → L'arbre affiche des contrôles avec AutomationId — pas juste des boutons sans nom
  2. Piloter un chemin nominal une fois
    Maintenant : ouvre le dialogue Nouvelle Réservation, remplis client 'Acme Inc', date 2026-05-12, sauvegarde. Prends une capture d'écran à la fin.✓ Copié
    → Réservation sauvegardée ; la capture confirme
  3. Généraliser et boucler
    Lis /work/bookings.csv. Pour chaque ligne, répète le flux de réservation. Sauvegarde les captures dans /work/runs/.✓ Copié
    → Chaque ligne traitée ; captures par réservation

Résultat : Automatisation headless d'une application fournisseur, rejouable depuis un CSV.

Pièges
  • L'application utilise des contrôles personnalisés (ex. WinForms ListView sans AutomationId) — Repliez-vous sur des clics aux coordonnées d'une position fixe dans la fenêtre ; documentez la fragilité
  • Une boîte de dialogue modale vole le focus en pleine boucle — Vérifiez toujours la fenêtre active avant send_keys ; abandonnez en cas d'inattendu
Combiner avec : filesystem

Extraire des données d'Excel sans API Excel

👤 Analystes où l'IT n'autorise pas COM/Office API ⏱ ~15 min intermediate

Quand l'utiliser : Vous pouvez ouvrir Excel mais pas par programmation.

Déroulement
  1. Ouvrir le fichier
    Lance Excel, ouvre C:\reports\Q2.xlsx, focus sur la feuille 'Sales'.✓ Copié
    → Le titre de la fenêtre affiche le nom du fichier
  2. Copier la plage
    Sélectionne A1:D200, copie dans le presse-papiers, puis lis le texte du presse-papiers.✓ Copié
    → Tableau séparé par tabulations retourné
  3. Sauvegarder en CSV via le système de fichiers
    Parse ça en lignes et sauvegarde sous /tmp/Q2-sales.csv.✓ Copié
    → CSV créé

Résultat : Données Excel sous forme CSV sans toucher à l'API COM ni installer de packages tiers.

Pièges
  • Les formats du presse-papiers varient selon les versions d'Excel — Essayez CSV d'abord ; repliez-vous sur TSV via les variantes du presse-papiers
Combiner avec : filesystem

Capturer un bug desktop pour un collègue pendant que vous êtes concentré

👤 Devs qui jonglent avec le support ⏱ ~5 min beginner

Quand l'utiliser : Un bug se reproduit sur votre machine Windows et vous voulez une capture propre + des instructions de reproduction.

Déroulement
  1. Reproduire et capturer
    Prends une capture d'écran de la fenêtre d'application active. Sauvegarde sous bug.png.✓ Copié
    → PNG écrit
  2. Annoter les étapes
    Liste les 5 derniers éléments UI visibles avec lesquels tu as interagi — titres de fenêtres, labels de dialogues — pour que je puisse coller ça dans le ticket.✓ Copié
    → Étapes de reproduction concrètes au niveau des éléments

Résultat : Ticket de bug bien ciblé sans Alt+Tab.

Pièges
  • La capture contient des informations privées — Ne capturez que la fenêtre active, pas le bureau entier
Combiner avec : github

Combinaisons

Associez-le à d'autres MCPs pour un effet X10

windows-mcp-cursortouch + filesystem

Piloter une application desktop depuis une entrée CSV

Lis /work/orders.csv. Pour chaque ligne, clique dans l'application de réservation.✓ Copié
windows-mcp-cursortouch + github

Capturer un bug desktop et ouvrir une issue

Capture d'écran de la fenêtre active, puis crée une issue GitHub avec le PNG et les étapes de reproduction.✓ Copié

Outils

Ce que ce MCP expose

OutilEntréesQuand appelerCoût
list_windows (aucun) Trouver l'application cible gratuit
get_ui_tree window_id? Découverte avant de cliquer gratuit
click automation_id | x,y Cliquer sur un contrôle connu gratuit
type_text text: str Saisir du texte dans le champ actif gratuit
send_keys keys: str (ex. 'ctrl+s') Raccourcis clavier / modificateurs gratuit
screenshot window_id?, region? Confirmation visuelle gratuit
launch_process exe: str Démarrer l'application cible gratuit
read_clipboard (aucun) Après une copie gratuit

Coût et limites

Coût d'exécution

Quota d'API
Aucun — automatisation locale
Tokens par appel
50–500 (les dumps d'arbre UI peuvent être plus volumineux)
Monétaire
OSS gratuit
Astuce
Évitez de dumper l'arbre UI complet à chaque étape — ciblez par window_id

Sécurité

Permissions, secrets, portée

Portées minimales : contrôle de la session de bureau locale
Stockage des identifiants : Aucun — mais Claude peut voir tout ce qui est à l'écran
Sortie de données : Local ; rien ne quitte la machine à moins que vous n'accordiez également un MCP réseau
Ne jamais accorder : lancement automatique en compte administrateur couplage d'accès distant

Dépannage

Erreurs courantes et correctifs

Contrôle non trouvé par automation_id

L'application utilise des IDs dynamiques ou pas d'IDs. Utilisez get_ui_tree et correspondez par hiérarchie name/role

Vérifier : Inspectez avec Microsoft inspect.exe
Les clics atterrissent sur la mauvaise fenêtre

Appelez toujours set_focus sur la fenêtre cible avant click ; vérifiez la fenêtre active après

L'installation uvx échoue avec une erreur 'wheel'

Installez Visual C++ Build Tools ; certaines dépendances pywin32 en ont besoin

Alternatives

Windows MCP vs autres

AlternativeQuand l'utiliserCompromis
Anthropic Computer Use (pixels)Vous avez besoin d'un contrôle basé sur les pixels multiplateformeMoins fiable sur Windows qu'avec UIA ; plus fragile aux changements de mise en page
AutoIt / PowerShellVous scriptez en dehors d'un LLMPas de couche agent ; scripting manuel uniquement
Peekaboo (macOS)Vous êtes sur macOS, pas WindowsOS différent ; non interchangeable

Plus

Ressources

📖 Lire le README officiel sur GitHub

🐙 Voir les issues ouvertes

🔍 Parcourir les 400+ serveurs MCP et Skills