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

Labels

Type

No type

Projects

Status

Not Started

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions