Parent
Part of #93
Context
The Responses API supports a connector_id field on MCP tool entries as an alternative to server_url. Connectors are pre-configured MCP server definitions that let clients reference servers by ID instead of embedding URLs directly.
tool_parse (#42) already preserves MCP tool entries as opaque JSON, and mcp_tool_list (#43) will resolve server_url directly for MVP. This spike investigates how to surface connector configuration in Praxis so that connector_id references can be resolved.
Questions to answer
- How does the OpenAI Responses API define connectors? What fields does a connector carry (URL, headers, auth, allowed_tools)?
- Should connectors be defined in Praxis YAML config (static) or managed via an admin API (dynamic)?
- Where does connector resolution happen — in
tool_parse, in a separate filter, or as a shared service?
- How do connectors interact with Praxis clusters (is a connector just a named reference to a cluster + path)?
- What is the relationship between connectors and the MCP broker's static server registry (
McpBrokerConfig.servers)?
Deliverable
A short design doc or proposal section answering the above, with a recommended approach for implementation.
Parent
Part of #93
Context
The Responses API supports a
connector_idfield on MCP tool entries as an alternative toserver_url. Connectors are pre-configured MCP server definitions that let clients reference servers by ID instead of embedding URLs directly.tool_parse(#42) already preserves MCP tool entries as opaque JSON, andmcp_tool_list(#43) will resolveserver_urldirectly for MVP. This spike investigates how to surface connector configuration in Praxis so thatconnector_idreferences can be resolved.Questions to answer
tool_parse, in a separate filter, or as a shared service?McpBrokerConfig.servers)?Deliverable
A short design doc or proposal section answering the above, with a recommended approach for implementation.