{"record":{"id":"bb26122be092a2ed","repo":"continuedev/continue","slug":"mcp-config-with-url-and-no-type-specified-failed-b","errorCode":null,"errorMessage":"MCP config with URL and no type specified failed both SSE and HTTP connection: ${e instanceof Error ? e.message : String(e)}","messagePattern":"MCP config with URL and no type specified failed both SSE and HTTP connection: (.+?)","errorType":"exception","errorClass":"Error","httpStatus":null,"severity":"error","filePath":"core/context/mcp/MCPConnection.ts","lineNumber":276,"sourceCode":"                  );\n                } else {\n                  try {\n                    const transport = this.constructHttpTransport({\n                      ...this.options,\n                      type: \"streamable-http\",\n                    });\n                    await this.client.connect(transport, {});\n                    this.transport = transport;\n                  } catch (e) {\n                    try {\n                      const transport = this.constructSseTransport({\n                        ...this.options,\n                        type: \"sse\",\n                      });\n                      await this.client.connect(transport, {});\n                      this.transport = transport;\n                    } catch (e) {\n                      throw new Error(\n                        `MCP config with URL and no type specified failed both SSE and HTTP connection: ${e instanceof Error ? e.message : String(e)}`,\n                      );\n                    }\n                  }\n                }\n              }\n\n              // TODO register server notification handlers\n              // this.client.transport?.onmessage(msg => console.log())\n              // this.client.setNotificationHandler(, notification => {\n              //   console.log(notification)\n              // })\n              const capabilities = this.client.getServerCapabilities();\n\n              // Resources <—> Context Provider\n              if (capabilities?.resources) {\n                try {\n                  const { resources } = await this.client.listResources(","sourceCodeStart":258,"sourceCodeEnd":294,"githubUrl":"https://github.com/continuedev/continue/blob/5522c6f44ca0ac3528b37244818fbfa39b5af470/core/context/mcp/MCPConnection.ts#L258-L294","documentation":"Post-processing fallback in the non-streaming chat response converter: the response was received successfully but its provider label doesn't match any known conversion case. In practice hard to hit because the same provider check gated the request; it guards future/unknown provider values.","triggerScenarios":"determineVertexProvider returns a value outside 'gemini'|'anthropic'|'mistral' after the request succeeded — e.g. a custom/extended provider map injected by a fork or future version.","commonSituations":"Forked or locally extended adapter where a provider is added to routing but not to response conversion; mismatched package versions between routing utilities and the adapter.","solutions":["Ensure any custom provider added to determineVertexProvider also has a converter case in the switch","Update/align openai-adapters package versions so routing and conversion stay in sync","Report upstream if it occurs with an unmodified install"],"exampleFix":null,"handlingStrategy":"type-guard","validationCode":null,"typeGuard":"const isKnownProvider = (p: string): p is 'gemini' | 'anthropic' | 'mistral' => ['gemini','anthropic','mistral'].includes(p);","tryCatchPattern":null,"preventionTips":["Don't fork routing without forking converters equally","Pin adapter versions consistently across packages"],"tags":["vertexai","internal","provider-routing"],"backgroundTag":"unhandled-enumeration-value","analyzedSha":"5522c6f44ca0ac3528b37244818fbfa39b5af470","analyzedAt":"2026-08-27T11:28:54.683Z","schemaVersion":2},"datasetVersion":"2026-08-27T13:17:12.746Z"}