Skip to content

feat: DaprMCPWorkflowClient and MCP workflow helpers #995

@sicoyle

Description

@sicoyle

DaprMCPWorkflowClient and MCP Workflow Helpers

Add DaprMCPWorkflowClient to the Python SDK so all Python AI frameworks (dapr-agents, python-ai, etc.) can use it without depending on dapr-agents.

Scope

  • DaprMCPWorkflowClient class: connect(server_name), get_all_tools(), call_tool()
  • Starts ListTools/CallTool workflows via DaprClient.start_workflow
  • Returns tools as typed objects with input schemas
  • Workflow name construction (dapr.internal.mcp.<server>.<method>)
  • JSON-compatible types matching proto definitions
  • Reuse create_pydantic_model_from_schema for tool arg models
  • Unit tests: mock DaprClient.start_workflow, assert correct workflow names/inputs
  • Example usage and docs

Blocked by

Blocks

  • dapr-agents MCPServer integration (consumes this client)
  • diagridio/python-ai MCP support

Related

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

Status

Backlog

Relationships

None yet

Development

No branches or pull requests

Issue actions