Skip to content

Azure MCP Server Returns Non-JSON-RPC Format, Breaking Docker MCP Gateway Integration #1373

@NotMyself

Description

@NotMyself

Summary

The Azure MCP server returns a custom JSON response format instead of JSON-RPC 2.0, causing all tool calls through Docker MCP gateway to fail with invalid character 'S' looking for beginning of value.

Full Bug Report

See detailed analysis and reproduction steps at:
NotMyself/claude-hall-monitor#1

Quick Summary

When running via Docker MCP gateway (docker mcp server enable azure):

  • Azure MCP returns {"status":200,"message":"Success",...} instead of JSON-RPC 2.0
  • The 'S' in "Success" breaks the JSON-RPC parser
  • Azure CLI works fine (authentication is valid)
  • Other MCP servers work fine (gateway is valid)

Direct Container Test

echo '{"jsonrpc":"2.0","id":1,"method":"tools/list"}' | docker run --rm -i mcp/azure server start

Returns:

{"status":200,"message":"Success","results":[],"duration":89}

Should return:

{"jsonrpc":"2.0","id":1,"result":{"tools":[...]}}

Related Issues

This may be related to the authentication regression in versions 0.6.x-0.8.x (#776) where stderr/stdout contamination was also reported.

Environment

  • Docker Desktop: Latest (December 2025)
  • Azure CLI: Authenticated and working
  • OS: Windows 11

Cross-References

  • Also reported to: docker/mcp-gateway, Azure/azure-mcp

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    Status

    Untriaged

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions