Skip to content

MCP connector rewrites configured Streamable HTTP endpoint #31902

Description

@kriptoburak

Affected module

Ingestion Framework

Describe the bug

Direct MCP connections accept a server url, but HttpTransport posts to f"{url}/mcp" instead of the configured URL. A complete endpoint such as https://xquik.com/mcp is therefore requested as https://xquik.com/mcp/mcp.

The Streamable HTTP transport also omits Accept: application/json, text/event-stream. MCP servers can use either response type. The client currently proposes protocol revision 2024-11-05, while the latest initialization-based revision is 2025-11-25.

To reproduce

  1. Configure a direct MCP service connection with StreamableHTTP transport and URL https://example.test/custom/mcp.
  2. Patch requests.Session.post or inspect the outgoing request.
  3. Call send_request("initialize", ...).

The request targets https://example.test/custom/mcp/mcp. Its Accept header does not advertise both supported response types.

Expected behavior

The transport should post to the configured URL exactly. It should advertise JSON and server-sent events, and propose protocol revision 2025-11-25. Bearer API key handling should remain unchanged.

Environment

  • OS: macOS
  • Python: 3.11
  • OpenMetadata: current main at 06cbbbdcaa223300c8bac1ad2511dcb02feb225d
  • OpenMetadata Ingestion package: current main

Additional context

The official Streamable HTTP specification defines one server endpoint and requires both response types in the Accept header:

https://modelcontextprotocol.io/specification/2025-11-25/basic/transports

Issue #21535 requested MCP endpoint discovery. This report is narrower and covers the direct connection transport. Xquik is one public endpoint that exposes a complete /mcp URL, but the defect and proposed fix are provider-neutral.

  • I searched for duplicate issues.
  • This report contains no credentials or private data.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    Status
    In Review / QA 👀

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions