DataDesigner/packages/data-designer-engine
Nabin Mulepati e4857f62fa
feat: add Streamable HTTP transport support for remote MCP providers (#358)
* feat: add Streamable HTTP transport support for remote MCP providers (#357)

Add `streamable_http` as a supported transport type for `MCPProvider`,
enabling connections to MCP servers that use the Streamable HTTP protocol
(e.g. Tavily remote endpoints). Previously only SSE transport was supported,
causing silent 5-minute timeouts when connecting to incompatible endpoints.

- Expand `MCPProvider.provider_type` to `Literal["sse", "streamable_http"]`
  (default remains `"sse"` for backwards compatibility)
- Route `streamable_http` providers through `streamablehttp_client` from
  the MCP SDK in `MCPIOService._get_or_create_session()`
- Handle variable-length context manager results from MCP transport clients
- Add `DataDesigner.list_mcp_tool_names()` for discovering available tools
- Update CLI form builder and controller to support the new transport option
- Add tests for streamable_http config, session creation, and form builder

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* updates

* simplify import

* address greptile comments

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-04 08:11:54 -07:00
..
src/data_designer/engine feat: add Streamable HTTP transport support for remote MCP providers (#358) 2026-03-04 08:11:54 -07:00
tests feat: add Streamable HTTP transport support for remote MCP providers (#358) 2026-03-04 08:11:54 -07:00
pyproject.toml feat: add dynamic version pinning for inter-package dependencies (#282) 2026-02-03 11:14:55 -05:00
README.md refactor: slim package refactor into three subpackages (#240) 2026-01-27 13:53:20 -05:00

data-designer-engine

Generation engine for NeMo Data Designer synthetic data generation framework.

This package contains the execution engine that powers Data Designer. It depends on data-designer-config and includes heavy dependencies like pandas, numpy, and LLM integration via litellm.

Installation

pip install data-designer-engine

This automatically installs data-designer-config as a dependency.

See main README.md for more information.