Prototipo · Versión preliminar: todos los servidores del registro oficial, sincronizados cada 30 minutos. Las reseñas y las cuentas llegarán en una etapa posterior.
PopNx MCPServidores MCP para quienes usan IA · explicados con palabras sencillas

Netwright

de ricfaninversión 2.1.0i★ –iSe ejecuta en tu computadora
Nombre en el registroio.github.ricfanin/netwright

Instalar

Resumen

Descripción del creador (original en inglés)

Playwright-style automation of .NET desktop apps (WPF, WinForms, WinUI) for AI agents.

Los tres pilares de PopNx MCP

Estos tres nunca se combinan en una sola puntuación: las opiniones, las mediciones y la popularidad son cosas distintas.

Qué puedes hacer con él

Todavía no escribimos un resumen sencillo para este. Abajo están los datos que leímos del registro.

  • Conexión: Se ejecuta en tu computadora
  • Transporte: stdio
  • Categoría: Web y navegadores

Instalación

Elige la app de IA que usas y copia la configuración.

Antes de instalar

¿Qué app usas?

Elige tu app arriba. La recordamos, así que la próxima vez el botón dirá “Instalar en …”.

Abre Claude Desktop → Settings → Developer → Edit Config y pega esto en claude_desktop_config.json

{
  "mcpServers": {
    "netwright": {
      "command": "dnx",
      "args": [
        "Netwright",
        "--yes"
      ],
      "env": {
        "NETWRIGHT_ALLOW": "your-value"
      }
    }
  }
}

Ejecuta esto en tu terminal

claude mcp add netwright --env NETWRIGHT_ALLOW=your-value -- dnx Netwright --yes

Completa los valores vacíos antes de ejecutarlo.

Abrir en Cursor

O copia la configuración tú

Pégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json

{
  "mcpServers": {
    "netwright": {
      "command": "dnx",
      "args": [
        "Netwright",
        "--yes"
      ],
      "env": {
        "NETWRIGHT_ALLOW": "your-value"
      }
    }
  }
}

Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.

Abrir en VS Code

O copia la configuración tú

Pégalo en .vscode/mcp.json de tu proyecto

{
  "servers": {
    "netwright": {
      "type": "stdio",
      "command": "dnx",
      "args": [
        "Netwright",
        "--yes"
      ],
      "env": {
        "NETWRIGHT_ALLOW": "your-value"
      }
    }
  }
}

Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.

Este se ejecuta en tu computadora, y ChatGPT solo puede conectarse a servidores en internet. Elige otra app.

Tu elección se guarda en una cookie en este dispositivo; no necesitas cuenta.

Valores que debes completar

  • NETWRIGHT_ALLOW env
    Optional ';'-separated wildcard patterns of apps the agent may launch or attach to.

Esta configuración se genera a partir de la ficha del creador en el registro. Si el README dice otra cosa, sigue el README.

Qué puede hacer

Se ejecuta en tu computadora; la lista de herramientas aparece en tu app de IA después de instalarlo.

Revisiones básicasi

Revisamos información que cualquiera puede ver; no hemos leído el código. Las revisiones que no aplican no se cuentan. · Revisado el 7 nov 2026

  • ✓ Superada

    El creador coincide con el repo

    El nombre en el registro se verificó con la cuenta de GitHub ricfanin, dueña del repo

  • … Aún sin revisar

    Sigue en mantenimiento

    Todavía no hemos leído este repo en GitHub

  • … Aún sin revisar

    Tiene licencia

    Todavía no hemos leído este repo en GitHub

  • – No aplica

    El endpoint responde

    Este se ejecuta en tu computadora; no hay endpoint en internet

  • – No aplica

    Inicio de sesión con OAuth

    Se ejecuta en tu computadora y usa ajustes locales en su lugar

  • … Aún sin revisar

    Sin instrucciones ocultas en las descripciones de herramientas

    Se ejecuta en tu computadora; solo podemos leer listas de herramientas de endpoints en internet

Comparado con otros en Web y navegadoresi

  • Más estrellas que el 0% de los otros 879 servidores de esta categoría
  • Publicado en el registro más recientemente que el 56% de los otros 879 servidores de esta categoría
  • Revisiones básicas iguales o mejores que el 100% de los otros 879 servidores de esta categoría

Comparado con todos los servidores activos de esta categoría en el registro. Las estrellas solo cuentan cuando quien lo publica es dueño del repo.

Preguntas frecuentes

¿Es seguro Netwright?

Superó 1 de 1 revisiones básicas aplicables. No hemos leído el código. Antes de agregar una clave o un token, revisa qué acceso pide el servidor y usa una clave que tenga solo los permisos que necesitas.

¿Qué claves o códigos necesita?

El registro no indica ninguna clave obligatoria, aunque algunos servidores te piden iniciar sesión la primera vez que los usas.

¿Se ejecuta en mi computadora o en la nube?

Se ejecuta en tu computadora. Tu app de IA lo inicia cuando hace falta, y los datos no pasan por los servidores del creador (a menos que el propio servidor llame a un servicio en línea).

¿Sigue en mantenimiento?

El repo de GitHub cambió por última vez –, y la última versión (2.1.0) llegó al registro hace 28 días.

¿Qué apps pueden usarlo?

Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. También necesitas .NET en tu computadora.

¿Qué puedo usar en su lugar?

En la misma categoría: Browser Use, Chrome DevTools MCP, MCP Server Browser

Alternativas

Servidores de la misma categoría hechos por otros creadores, ordenados por estrellas.

Cómo leer una tarjeta:★ Estrellas de GitHubiTres pilares: reseñas · revisiones · usoiActualizado = fecha en que se publicó la última versión en el registroi

Browser Use

de browser-use

Browser agents and stealth cloud browsers for AI: run web tasks, fill forms, extract data.

Computadora o nube★ 120.087MITActualizado hace 17 días
Instalar

Chrome DevTools MCP

de ChromeDevTools

MCP server for Chrome DevTools

Se ejecuta en tu computadora★ 54.821Apache-2.0Actualizado hace 15 días
Instalar

MCP Server Browser

de bytedance

MCP server for browser use access

Se ejecuta en tu computadora★ 39.550Apache-2.0Actualizado hace 14 meses
Instalar

README del creador

Abrir el README

Copiado tal cual del repo del creador. PopNx MCP no lo ha revisado ni lo respalda. Se quitaron HTML, imágenes y scripts. Los enlaces llevan fuera de este sitio.

Netwright

Playwright-style automation for .NET desktop apps. Netwright is an MCP server that lets AI agents see and operate WPF, WinForms and WinUI apps: they launch your project, read the UI as compact text, act without stealing your mouse, verify the result, and turn the verified flow into a regression test.

▶ Watch it with sound

Formerly WPF-MCP. Version 2.0 is a rewrite; see Migrating from WPF-MCP 1.x.

> desktop_app action=launch project=src/Orders/Orders.csproj

Launched Orders.exe (pid 9120, WPF, launched by Netwright)

  • window "Orders" [e1]

desktop_snapshot

  • window "Orders" [e1]
  • textbox "Customer" [e4] #txtCustomer
  • combobox "Country" [e5] #cmbCountry collapsed
  • checkbox "Accept terms" [e6] #chkTerms unchecked
  • button "Save" [e7] #btnSave disabled

desktop_set_state target=#chkTerms checked=true

checked checkbox "Accept terms" [e6] #chkTerms ~ checkbox "Accept terms" [e6] #chkTerms checked ~ button "Save" [e7] #btnSave

desktop_click target=#btnSave

clicked button "Save" [e7] #btnSave

  • window "Confirm" [e9] modal
  • text "Save order 42?"
  • button "Yes" [e10]

Why Netwright

  • Made for .NET apps. Works with WPF, WinForms (.NET and .NET Framework 4.x) and WinUI/MAUI through UI Automation. It launches straight from a .csproj, captures stdout/stderr and Trace output, and reports crashes with the exception and stack trace.
  • Cheap in tokens.
  • Snapshots are filtered to what an agent needs: unnamed layout panes are collapsed, and grids are summarized row by row.
  • Actions answer with a Change Report of what appeared, disappeared or changed, so the agent rarely needs another snapshot.
  • Refs (e12) stay valid across snapshots.
  • Stays out of your way. Actions run in the background: in apps Netwright launches, a small companion performs them inside the app, so it never takes the foreground and bound fields commit like a real edit. You keep working while the agent tests. Key presses and right-clicks are explicit, briefly take focus, and give it back.
  • Reliable by default.
  • Every action waits until its target is enabled and on screen.
  • It then waits for the UI to settle, so async screens don't need sleeps.
  • Failures come back as error codes with a hint about what to do next.
  • From exploration to regression tests. desktop_expect verifies state, and desktop_export_test turns the session into a C# test on Netwright.Testing (xUnit, NUnit or MSTest).

Benchmark

Same scenarios, same Fixture App, same token encoding for every server (full methodology and all numbers in benchmarks/results):

WPF Fixture App, median of 5 runsWPF-MCP 1.0FlaUI-MCPWindows-MCPNetwright 2.0
Tool definitions, sent every turn (tokens)2,023 (24 tools)1,418 (12)3,984 (20)1,387 (15)
Snapshot of a form (tokens)1,0237851,956¹385
Snapshot of a 1000-row grid (tokens)3,9886,2341,897¹627
Fill and submit a form: calls / tokens10 / 2,46310 / 3,469–²6 / 549
Same form on WinForms: success0/50/5–²5/5
Wait for an async load: calls / tokens5 / 3,3375 / 2,484–²3 / 405
Screenshot (tokens)25,0731,0001,9441,020
WinForms grid with 1000 non-virtualized rows: snapshot time9.2 s12.9 s0.3 s¹1.5 s

¹ Windows-MCP summarizes the whole desktop instead of the app's UI tree; its grid snapshot does not include the rows. ² Its actions work at screen coordinates with the real mouse, so scripted flows were not run.

Tokens are counted with o200k_base as a proxy for Claude's tokenizer. Netwright's actions are slower per call: the form flow takes ~1.8 s against ~0.6 s, because each action waits for the UI to settle. In exchange the response already contains the result, so the agent needs fewer calls and far fewer tokens.

Install

Requires Windows 10/11 and the .NET 10 SDK. Your apps can target any .NET or .NET Framework version.

Claude Code

claude mcp add netwright -- dnx Netwright --yes

Any MCP client (Claude Desktop, Cursor, VS Code, Copilot…)

{

"mcpServers": { "netwright": { "command": "dnx", "args": ["Netwright", "--yes"] } } }

Prefer a global tool? Run dotnet tool install -g Netwright and use "command": "netwright". To restrict which apps an agent may touch, add "--", "--allow", "MyApp*" to the args. See the Integration Guide for all options.

Tools

ToolWhat it does
desktop_appLaunch an .exe or build and launch a project, attach, close, status
desktop_snapshotThe UI as compact text with Refs
desktop_findElements matching a Selector (#id, role "name", a >> b)
desktop_inspectProperties, patterns and a stable Selector of one element
desktop_clickClick (background; right/double click with foreground)
desktop_typeSet text (background) or type real keys
desktop_set_stateCheck, select, expand, set a value, or pick an item by name
desktop_press_keyKey presses and shortcuts (foreground)
desktop_scrollScroll by direction, to an edge, or into view
desktop_windowList, activate, minimize, maximize, restore, close windows
desktop_screenshotImage of a window or element, even when covered
desktop_waitWait for an element state or for text; reports what changed
desktop_expectRetrying assertions: text, value, enabled, checked, count…
desktop_logsApp output: stdout, stderr, debug/trace
desktop_export_testTurn the session into a C# regression test

Full reference: docs/TOOLS_REFERENCE.md.

Supported UI technologies

TierTechnologyWhat that means
1WPF, WinForms (.NET 6+ and .NET Framework 4.x)A Fixture App, integration tests on every change, benchmarked
2WinUI 3, .NET MAUI on WindowsA Fixture App and integration tests
3Avalonia, Uno PlatformBest effort through UI Automation

Other Windows apps (Win32, Qt, Electron…) often work because Netwright speaks plain UI Automation, but they are not supported.

Automation works best when your app sets AutomationProperties.AutomationId (WPF/WinUI) or Name (WinForms) on the controls you care about. See Making your app automation-friendly.

Regression tests without an agent

[Fact]

public async Task Saving_an_order_asks_for_confirmation() { await using var app = await DesktopApp.LaunchProjectAsync(@"..\..\..\..\src\Orders\Orders.csproj");

await app.TypeAsync("#txtCustomer", "Rossi"); await app.CheckAsync("#chkTerms"); await app.ClickAsync("#btnSave");

await app.Expect("window \"Confirm\"").ToBeVisibleAsync(); }

dotnet add package Netwright.Testing. This is the code desktop_export_test writes for you.

How it works

Netwright captures each window with one cached UI Automation query. Windows are found with Win32, only about 20 properties are requested, and offscreen elements are filtered inside the provider. From that capture it renders filtered text, resolves Selectors in memory, and diffs trees by RuntimeId to build Change Reports. Details and measurements: docs/ARCHITECTURE.md. Vocabulary: CONTEXT.md. Decisions: docs/adr.

Migrating from WPF-MCP 1.x

1.x2.0
wpf_launch_application, wpf_attach_application, wpf_close_application`desktop_app action=launch\attach\close`
wpf_snapshot (refs reset on every snapshot)desktop_snapshot (refs are stable)
wpf_find_element, wpf_get_element_propertiesdesktop_find, desktop_inspect
wpf_click, wpf_typedesktop_click, desktop_type; both accept a Ref or a Selector
wpf_set_value, wpf_toggle, wpf_select, wpf_expand_collapsedesktop_set_state (value, checked, item, expanded)
wpf_press_keydesktop_press_key foreground=true
wpf_scroll, wpf_scroll_into_view, wpf_focusdesktop_scroll (direction, to, into_view)
wpf_list_windows, wpf_switch_window, wpf_window_actiondesktop_window
wpf_take_screenshot (base64 text)desktop_screenshot (image content)
wpf_wait_fordesktop_wait (also waits for text)
wpf_console_messagesdesktop_logs
wpf_set_background_modeBackground is the default; pass foreground=true per call when needed
JSON envelopes (success, data, metadata)Compact text; errors are isError results with code and hint

The package is now Netwright (command netwright), replacing WpfMcp.Server (wpf-mcp).

Contributing

Issues and PRs are welcome. See CONTRIBUTING.md. Build and test with .\scripts\build.ps1 -Integration, and measure with .\scripts\benchmark.ps1.

License

MIT

Pregunta a PopNx