Repository navigation
Releases: prinzalx/winadmin-mcp
Release list
v0.5.5
Fixed
parse_evtxwith anevent_idno longer fails with "the query is invalid" on some systems. The id is now filtered in PowerShell on the numericIdinstead of through-FilterXPath, which is locale-independent and keeps the per-id/provider counts about the whole file, as documented. The result reportsmatched_eventsnext tototal_events.- Docs and the windows-triage skill now state that each MCP client formats the tool-name prefix differently (Hermes uses
mcp__winadmin__<tool>, othersmcp_winadmin_<tool>).
v0.5.4
v0.5.3
v0.5.2
v0.5.1
v0.5.0
New tool modules (all off by default, switch them on in the web dashboard)
- Scheduler —
list_tasks,get_task,run_task,enable_task,disable_task,task_history - Registry —
read_registry_key,write_registry_value,delete_registry_value,export_registry_key; every write exports a.regbackup first - Security —
check_elevation,get_security_events,list_drivers,get_minifilters,analyze_pe(static PE import analysis, no external tools needed) - Monitor —
events_watch(delta since last call),services_watch,error_trends,service_restarts,system_changes - Learnings —
list_learnings,add_learning,forget_learning,search_events,parse_evtx,export_learnings
46 switchable tools + 2 governance tools = 48 in tools/list.
Web dashboard
- Browser-style tabs, one per module
- Hover mini-doc on every tool row, module description under the tab bar
Docs
- README is now an index; details moved to
docs/(getting started, tools, governance, web dashboard, Hermes, configuration, development) windows-triageskill extended with the deepening tools and the rule that the agent never confirms its own parked actions
winadmin-mcp v0.4.2
Test-only fix: the Streamable HTTP check waited a fixed 1.5 s for the
server and the GitHub runner was slower than that, so CI failed on a
connection refused. It now polls until the HTTP interface answers.
winadmin-mcp v0.4.1
Fixes the approval popup for clients that reach the server over Streamable HTTP (e.g. an agent in WSL).
- HTTP sessions. Each request used to build its own MCP server, so the
tools/callran on an
instance that had never seeninitialize. The client capabilities looked absent, the popup was
never attempted and every gated call parked. Sessions are now kept permcp-session-id, and the
popup is routed back on the stream of the waiting call (relatedRequestId). - Capability spelling. A client that declares a bare
elicitationcapability is treated as
supporting form mode, which the SDK has to be told explicitly. - Diagnostics. The handshake line now reports it:
client connected: <name> — popup supported
ornot supported by this client. - Sessions unregister their config subscription when they close.
Covered by the new scripts/mcp-http-popup-check.mjs (8 checks over a real SSE stream).
If the terminal prints not supported by this client, the client never requested popups and the
web interface decides — that is the fallback, not a bug.
winadmin-mcp v0.4.0
The approval popup (MCP elicitation)
A parked action had a flaw: the human ran it in the web interface, but the result stayed there and
never reached the agent — so the agent called the tool again and parked again.
A gated tool call now asks for approval inside the MCP client through the standard MCP
elicitation request, the same mechanism a TUI uses to offer options. Approve there and the tool
executes immediately with the result returned in the same tool call; decline or dismiss and
nothing runs and nothing parks.
Clients that do not declare the elicitation capability are never asked and park the action for the
web interface as before, so this stays agent-agnostic.
New switch
ask in agent in the Awaiting approval header (askInAgent in config.json, on by default,
served over PATCH /api/settings).
Tests
npm test now also runs scripts/mcp-popup-check.mjs: a client that declares elicitation approves,
declines and switches the popup off, 9 additional checks.
winadmin-mcp v0.3.0
Version everywhere
- The running version is printed in the console after startup and shown in the UI footer.
- When GitHub has a newer release, the footer links update available 0.x.y to the releases page.
WAMD_NO_UPDATE_CHECK=1skips the one-time lookup.
Who may confirm a parked action
An agent could call confirm_action on its own parked action, which made the approval gate
useless in practice. By default an MCP source may no longer confirm: the parked action stays
pending and only the human in the web interface can run it. The new agent may confirm switch
in the Awaiting approval heading turns the old behaviour back on (allowAgentConfirm in the
config file, PATCH /api/settings).
Recent activity gets a Clear button
POST /api/audit/clear drops the recorded calls and rewrites the audit file, so the list cannot
grow without bound across restarts.