winbox (totekuh/winbox) is an MCP server listed on the M8ven Trust Index. It scores 62 out of 100, grade C. It declares 92 tools. No publisher has claimed this listing.

C
Caution
62/100

winbox

Isolated Windows vulnerability-research platform for Kali and AI agents: VM automation, hypervisor debugging, driver/IPC testing, containment, and MCP.

Caution. Specific findings reduced this grade. They are listed on the page. Grades reflect the full trust pyramid: code, verification depth, and reputation. New projects cap at C until adoption is earned.

How we verified

⚡ Live Monitored: not connected

Verified is a snapshot. Live keeps it current, and builds your track record.

⚡ Connect GitHub → continuous verification on every pushwhy connect →

Who stands behind it

totekuh

Source: github_code

Is this your MCP?

Claim it to get a verified publisher badge, a free copy of our full audit findings, and direct contact for any high-priority issues we find. Or connect your repo for our deepest verification, Live Monitored: read-only, revoke anytime. What we access →

Install from

The grade above is for the source repository. Registries can serve a different version, so we mark the ones we were not able to read.

// key findings
⚠️
Tool descriptions don’t match what handlers do
2 tools describe read intent but their handlers mutate — job_result (line 622: """Fetch the result of a background exec()/python()/powershell() job.); ps (line 1114: r = subprocess.run()
No credential exfiltration, no sensitive file access, no obfuscation
Static analysis found nothing flowing your secrets to unexpected places.
Open source with a license and README
Anyone can audit the code, the license is declared, and the publisher documents what it does.
// tools this server exposes92 tools

These names and descriptions are the publisher's own, read from the source code. We print them as written. Our assessment is the findings above, not this list.

python

Execute Python code inside the Windows VM.

powershell

Execute PowerShell (Windows PowerShell 5.1) inside the Windows VM.

exec

Run a command line in the Windows VM via cmd.exe.

job_result

Fetch the result of a background exec()/python()/powershell() job.

ioctl

Send an IOCTL to a Windows device driver.

reg_query

Query a Windows registry key or value.

reg_set

Set a Windows registry value.

reg_delete

Delete a Windows registry value or entire key.

ps

List processes in the Windows VM with PID, name, path, and memory usage.

eventlogs

Query Windows event logs via Get-WinEvent in the VM.

eventlogs_clear

Clear one or more Windows event log channels via wevtutil cl.

upload

Upload a file from Kali to the Windows VM via VirtIO-FS.

file_copy

Copy a file within the Windows VM.

mem_read

Read memory from a process in the Windows VM.

service_stop

Stop a Windows service.

service_start

Start a Windows service.

av_status

Report Windows Defender / AMSI protection state in the VM.

av_enable

Re-enable Windows Defender real-time protection, AMSI, and behavior monitoring.

av_disable

Disable Windows Defender completely — sets GP registry keys then REBOOTS the VM.

hvci_status

Report HVCI / Virtualization Based Security state in the VM.

hvci_disable

Disable HVCI and VBS — sets registry keys + bcdedit then REBOOTS the VM.

hvci_enable

Re-enable HVCI and VBS. Reboots the VM.

net_isolate

Block internet on the VM via libvirt nwfilter (guest-proof).

net_unplug

Unplug the VM's virtual NIC entirely (full air-gap).

net_connect

Restore full network access (undo net_isolate or net_unplug).

pipe_list

Enumerate named pipes in the Windows VM matching a pattern.

pipe_info

Get security and configuration details for a named pipe.

pipe_connect

Open a handle to a named pipe and return the result.

pipe_open

Open a named pipe and return a session ID for subsequent send/recv/close calls.

pipe_send

Write bytes to an open pipe session.

pipe_recv

Read bytes from an open pipe session.

pipe_close

Close an open pipe session and clean up.

kdbg_start

Start the QEMU gdb stub for hypervisor-level kernel debug.

kdbg_stop

Stop the QEMU gdb stub. Any attached gdb session gets EOF.

kdbg_status

Show whether the gdb stub is listening.

kdbg_doctor

Fast, non-disruptive kdbg readiness report.

kdbg_cet_status

Report whether Windows CET state is safe for QEMU GDB stop/resume.

kdbg_prepare

Hide CET-SS from the VM for stable kdbg use; reboot required.

kdbg_restore_cet

Restore the CET policy backed up by ``kdbg_prepare``; reboot required.

kdbg_symbols_load

Load symbols + struct offsets for nt.

kdbg_sym

Resolve a kernel symbol. Use ``mod!sym`` to pick a module (default nt).

kdbg_struct

Return a struct layout or a single field offset from the symbol store.

kdbg_ps

Walk ``PsActiveProcessHead`` and return all running processes.

kdbg_vad

Resolve one user VA or list bounded executable VAD evidence.

kdbg_token

Return PDB-backed primary-token identity and raw privilege masks.

kdbg_handles

Return a validated process handle-table root and enumeration support state.

kdbg_object

Decode a kernel object header for a caller-proven object body pointer.

kdbg_capture

Take one bounded, immutable process or system evidence capture.

kdbg_capture_diff

Diff two named captures entirely offline; no VM/RSP access occurs.

kdbg_threads

Walk one process's kernel thread list without injecting into the guest.

kdbg_thread_baseline

Save one explicit complete host-side ETHREAD baseline for ``pid``.

kdbg_thread_diff

Compare one explicit current ETHREAD snapshot to a named baseline.

kdbg_triage

Capture one bounded, coherent process-research snapshot.

kdbg_thread_triage

Rank bounded process-wide scheduler evidence from one coherent RSP stop.

kdbg_lm

Walk ``PsLoadedModuleList`` and return all loaded kernel modules.

kdbg_user_lm

Walk PEB.Ldr and return all user-mode modules in ``pid``.

kdbg_user_symbols_load

Load PDB symbols for a user-mode module in ``pid``.

kdbg_read_va

Read virtual memory from an arbitrary process WITHOUT an attached debugger session through the persistent RSP reader.

kdbg_base_refresh

Re-resolve and persist the nt load base from the live guest.

kdbg_attach

Attach a kdbg debugging session to a Windows process via the gdbstub.

kdbg_session

Show current kdbg session info, or report no session.

kdbg_target_status

Probe the captured target identity as alive, exiting, gone, or unknown.

kdbg_bp

Install a breakpoint or watchpoint at TARGET in the attached process.

kdbg_bps

List all installed breakpoints in the current session.

kdbg_bp_trace

Query the trace log for a breakpoint with actions.

kdbg_rm

Remove a breakpoint by id.

kdbg_cont

Resume the VM; block until next bp hit in target's CR3.

kdbg_cont_start

Start a durable continue operation and return immediately.

kdbg_cont_poll

Poll the durable continue operation without blocking.

kdbg_cont_cancel

Interrupt and cancel the current durable continue operation.

kdbg_step

Single-step the firing vCPU.

kdbg_disasm

Disassemble x86-64 instructions at ADDR (or current RIP if empty).

kdbg_decomp

Return focused Ghidra pseudocode for ADDR or the current RIP.

kdbg_decomp_status

Show Docker/PyGhidra API, worker/JVM state, and analysis-cache status.

kdbg_decomp_cache

List Ghidra content-cache entries, sizes, profiles, and LRU timestamps.

kdbg_decomp_cache_prune

Preview or prune cold Ghidra caches; dry-run is the safe default.

kdbg_decomp_cache_repair

Delete and rebuild one exact digest-keyed Ghidra project cache.

kdbg_decomp_prepare

Analyze exact cached modules while the VM runs.

kdbg_decomp_prepare_status

Read the latest or token-selected background preparation result.

kdbg_decomp_cancel

Cancel an active request or one exact background preparation token.

kdbg_ghidra_install

Build the pinned, self-contained headless Ghidra Docker image.

kdbg_ghidra_run

Start and verify the private persistent headless Ghidra API.

kdbg_ghidra_stop

Stop and remove only the labelled winbox headless Ghidra container.

kdbg_interrupt

Async halt request — breaks out of an in-flight ``kdbg_cont``.

kdbg_regs

Dump full register state at the most recent halt.

kdbg_mem

Read LENGTH bytes at VA in the attached target's address space.

kdbg_write_mem

Write hex-encoded DATA at VA in the attached target's address space.

kdbg_context

Return one bounded triage bundle for the current halted stop.

kdbg_stack

Read N native words starting at RSP/ESP at the current halt.

kdbg_bt

Unwind the live Windows x64 or WoW64 x86 stack.

kdbg_detach

Tear down kdbg and resume only when the daemon certifies it is safe.

kdbg_resume

Recovery valve — resume a VM stuck in 'paused (debug)' state.

// environment variables
To run this server yourself, you supply these values. They go in your own MCP client configuration and stay on your machine. The secret label means the value is sensitive, not that the server mishandles it.
configWINBOX_GHIDRA_OPEN_PROGRAMS
configWINBOX_GHIDRA_PROJECT_DIR
configWINBOX_DECOMP_BACKEND
configWINBOX_PYGHIDRA_PYTHON
configGHIDRA_INSTALL_DIR
configWINBOX_GHIDRA_CACHE_MAX_BYTES
configWINBOX_GHIDRA_MEMORY
configWINBOX_GHIDRA_CPUS
// quality suggestions

Tool annotations

No tools have read-only/destructive annotations

Add readOnlyHint or destructiveHint annotations to every tool so hosts can warn users before invoking.

All four hints declared on every tool

92/92 tools missing one or more hints — python (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); powershell (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); exec (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint), +89 more. OpenAI's directory rejects tools where any of the four hints are missing or non-boolean.

For every tool, set all four hints (readOnlyHint, destructiveHint, idempotentHint, openWorldHint) to explicit true/false values that match the handler’s actual behaviour.

Destructive tools are labelled

3 tools perform destructive updates without destructiveHint — job_result deletes at line 697 (shutil.rmtree(cfg.shared_dir / ".mcp" / "jobs" / str(job.id), ignore_errors=True)); pipe_open deletes at line 2623 (shutil.rmtree(session_dir, ignore_errors=True)); pipe_close deletes at line 2828 (shutil.rmtree(session_dir, ignore_errors=True))

Add destructiveHint:true to any tool whose handler calls .delete(), .upsert(), .update(), unlink, rm, DELETE, DROP, REPLACE INTO, or any operation that overwrites existing data.

Descriptions match behaviour

2 tools describe read intent but their handlers mutate — job_result (line 622: """Fetch the result of a background exec()/python()/powershell() job.); ps (line 1114: r = subprocess.run()

Rename the tool, rewrite the description, or move the side-effect into a separate clearly-named tool.

Tool description accuracy

job_result: description implies read-only but handler writes/deletes/executes; ps: description implies read-only but handler writes/deletes/executes

Update tool descriptions to accurately reflect all capabilities — especially write, delete, or execute operations.

Claim the listing to review these findings one by one and send us a correction where you disagree, straight to the team. Claiming also means we tell you when the grade moves, and reach you first if we find anything urgent.

// full audit trail
The findings above are the summary. The full trail, every check we ran, each deduction, the network hosts observed and the dependency advisories, goes to verified publishers, along with an alert whenever a new one lands. Verified publishers can also review each finding and dispute it in one click. Publisher corrections have sharpened several of our checks this month, because the maintainer knows the codebase better than any scanner.
// improvement guidance — verified publishers only
We have 5 concrete improvements we can share with the publisher of this MCP. Each comes with specific guidance to raise the trust score.
// embed badge in your README
[![M8ven Verified](https://m8ven.ai/badge/mcp/totekuh/winbox?variant=verified)](https://m8ven.ai/mcp/totekuh/winbox)
Shows verification status without the grade. Want the grade badge instead? Remove ?variant=verified from the URL.
commit: 28e53d022edfdf424040a94460680129d7e57b5e
code hash: 9da2ce0488c886f90602a138e8a27cf3d26aaf47d2e6d49e0ec38b6eb865b47a
view raw JSON →
Check MCPs from inside your assistant
Tool Check · MCP

Vetting this one by hand? Tool Check is an MCP that scores other MCPs. Add it once and ask Claude, ChatGPT, or any MCP client to grade a server, surface CVEs, check the publisher, and suggest safer alternatives — before you install.

https://m8ven.ai/api/mcp/tool-check
check_toolsearch_toolscompare_toolsrecommend_alternativescheck_publisherreport_concern
How to add it →Free · no account needed · works in any MCP client