← Back to list

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…

Nilam Wadhavane · 2025-06-29 10:41 · 0 claps · 1.4 min read
#remote-mcp-server #adk #notimplementederror #windows-solution #subprocess
Open on Medium ↗
Wiki topics: AGT · AI Agents 🏃 · Running & Endurance

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