Fixing “NotImplementedError” When Running Remote MCP Agent via ADK on Windows
If you’re developing with Google ADK (Agent Development Kit) on Windows and run into a NotImplementedError related to subprocess creation…
Fixing “NotImplementedError” When Running Remote MCP Agent via ADK on Windows
If you’re developing with Google ADK (Agent Development Kit) on Windows and run into a NotImplementedError related to subprocess creation, you’re not alone. This is a common issue, especially when working with Remote MCP Agents.
After some debugging, I found a surprisingly simple fix:
Use adk web --no-reload instead of adk web.
The Error
Here’s what I saw when running:
(.venv) PS C:\adk-mcp-tutorial-main> adk web
The server would start successfully, but on interacting with a Remote MCP Agent, I got:
raise NotImplementedError
NotImplementedError
File "...\asyncio\base_events.py", line 493, in _make_subprocess_transport
raise NotImplementedError
NotImplementedError
This happens inside:
await asyncio.create_subprocess_exec(...)
This error comes from Python’s asyncio event loop on Windows, which doesn’t fully support subprocess transports the same way Unix-like systems do.
Why This Happens
The root cause lies in Python’s asyncio subprocess support on Windows.
Unlike Unix-based systems (Linux/macOS), Windows has limited support for asyncio.create_subprocess_exec(). Under the hood, asyncio uses ProactorEventLoop, and creating subprocess transports for stdio-based communication isn’t implemented in the same way.
This is a known limitation of asyncio in Python on Windows.
The error originates from asyncio.create_subprocess_exec() under the hood, which attempts to set up an I/O transport that Windows does not implement natively for ProactorEventLoop.
Many ADK tools internally use subprocesses to spawn sessions (especially for remote MCPs), and this causes problems in reload mode on Windows.
The Solution
Instead of:
adk web
Run:
adk web --no-reload
Why it works:
The --no-reload flag disables auto-reloading of the web server, which under the hood can spawn subprocesses — triggering the NotImplementedError in Windows.
By disabling reload, the server avoids the unsupported subprocess calls.
Note for Windows Users
If you encounter:
NotImplementedError
→ _make_subprocess_transport
Try launching ADK like this:
adk web --no-reload
This simple flag can save you hours of frustration!
Final Thoughts
Google ADK is powerful for building intelligent agent workflows, but Windows compatibility issues — especially around asyncio and subprocess — can be tricky.
Thanks to the --no-reload flag, you can develop comfortably without needing WSL or Linux.
Happy building, Windows agents! 💻🚀
메타데이터
- post_id
- 8bd736adb705
- slug
- fixing-notimplementederror-when-running-remote-mcp-agent-via-adk-on-windows-8bd736adb705
- url
- https://medium.com/@nilamwadhavane123/fixing-notimplementederror-when-running-remote-mcp-agent-via-adk-on-windows-8bd736adb705
- canonical_url
- https://medium.com/@nilamwadhavane123/fixing-notimplementederror-when-running-remote-mcp-agent-via-adk-on-windows-8bd736adb705
- author_url
- https://medium.com/@nilamwadhavane123
- status
- ok
- fetched_at
- 2026-06-24 04:09:36