Skip to content

uv.exe / .venv Scripts\windows-mcp.exe blocked by Windows Smart App Control (Code Integrity 3077) #339

Description

@takase1024

Environment

  • Windows 11 25H2 (build 10.0.26200)
  • Windows Security: Smart App Control = On
  • Installed via Claude Desktop Extension ("ant.dir.cursortouch.windows-mcp")
  • Extension runs inside a uv-managed virtualenv

Problem

When Claude Desktop launches the Windows-MCP extension, uv.exe attempts to
load the auto-generated console-script stub
...\.venv\Scripts\windows-mcp.exe, and Windows Smart App Control blocks it.
This causes the MCP server process to be killed / disconnect mid-session.

Windows Security notification:

"このアプリの一部がブロックされています / Part of this app has been blocked"
(Windows-mcp.exe)

Relevant Code Integrity event log entries (Microsoft-Windows-CodeIntegrity/Operational):

```
Event ID 3077:
Code Integrity determined that a process (....local\bin\uv.exe) attempted to
load ...\Claude Extensions\ant.dir.cursortouch.windows-mcp.venv\Scripts\windows-mcp.exe
that did not meet the Enterprise signing level requirements or violated code
integrity policy (Policy ID:{0283ac0f-fff1-49ae-ada1-8a933130cad6}).

Event ID 3033:
Code Integrity determined that a process (....local\bin\uv.exe) attempted to
load ...\Claude Extensions\ant.dir.cursortouch.windows-mcp.venv\Scripts\windows-mcp.exe
that did not meet the Enterprise signing level requirements.
```

Why this happens

.venv\Scripts\windows-mcp.exe is a console-script launcher stub that pip/uv
generates locally at install time. Unlike a signed release binary, this stub
has no publisher signature and no reputation, so Smart App Control (and WDAC
in general) blocks it by default on systems with these protections enabled.

Impact

Any user with Smart App Control enabled (the default on new Windows 11
installs) will likely hit this block, causing the extension to silently
disconnect.

Possible solutions / questions for maintainers

  • Could a signed, prebuilt Windows binary be distributed instead of relying on
    a locally-generated venv stub exe?
  • Alternatively, could the extension be launched via the venv's python.exe
    directly (e.g. python -m windows_mcp) instead of the generated
    windows-mcp.exe console-script stub? The venv's copied python.exe
    retains its original signature from python.org, whereas the stub does not.
  • Is this a known limitation, or is there a recommended workaround for users
    who don't want to disable Smart App Control system-wide?

Steps to reproduce

  1. Enable Smart App Control on Windows 11.
  2. Install the Windows-MCP Claude Desktop Extension.
  3. Start a Claude Desktop session that invokes the extension.
  4. Observe Windows Security notification blocking windows-mcp.exe, and the
    MCP server disconnects.

Happy to provide more logs/details if useful.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions