From 5a5136de17149c68aa147b8941beccd6f2dcdb2f Mon Sep 17 00:00:00 2001 From: Tin Chi Lo Date: Mon, 15 Jun 2026 16:52:20 -0700 Subject: [PATCH] fix(mcp): default Notion registry entry to streamable HTTP with OAuth --- litellm/proxy/mcp_registry.json | 5 +++-- .../_experimental/mcp_server/test_mcp_discovery.py | 10 ++++++++++ 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/litellm/proxy/mcp_registry.json b/litellm/proxy/mcp_registry.json index 449c2d9e54f..8a68a4c4bff 100644 --- a/litellm/proxy/mcp_registry.json +++ b/litellm/proxy/mcp_registry.json @@ -185,8 +185,9 @@ "icon_url": "https://cdn.simpleicons.org/notion", "category": "Productivity", "registry_url": "https://registry.modelcontextprotocol.io/servers/com.notion%2Fmcp", - "transport": "sse", - "url": "https://mcp.notion.com/sse", + "transport": "http", + "url": "https://mcp.notion.com/mcp", + "auth_type": "oauth2", "env_vars": [] }, { diff --git a/tests/test_litellm/proxy/_experimental/mcp_server/test_mcp_discovery.py b/tests/test_litellm/proxy/_experimental/mcp_server/test_mcp_discovery.py index 4d36edc3ee7..3d3f9cfd781 100644 --- a/tests/test_litellm/proxy/_experimental/mcp_server/test_mcp_discovery.py +++ b/tests/test_litellm/proxy/_experimental/mcp_server/test_mcp_discovery.py @@ -106,6 +106,16 @@ class TestMCPRegistryFile: assert "command" not in slack assert "args" not in slack + def test_notion_defaults_to_streamable_http_oauth(self, registry_path): + """Notion's MCP server should default to streamable HTTP at /mcp with OAuth, not SSE at /sse.""" + with open(registry_path, "r") as f: + data = json.load(f) + notion = next(s for s in data["servers"] if s["name"] == "notion") + assert notion["transport"] == "http" + assert notion["url"] == "https://mcp.notion.com/mcp" + assert notion["auth_type"] == "oauth2" + assert "/sse" not in notion["url"] + def test_atlassian_uses_authv2_endpoint(self, registry_path): """Atlassian's MCP server should default to the streamable HTTP authv2 endpoint.""" with open(registry_path, "r") as f: