Skip to content

Resolve A2A and MCP bindings by name - #1004

Merged
radugheo merged 1 commit into
mainfrom
fix/a2a-mcp-resolve-by-name
Jul 31, 2026
Merged

Resolve A2A and MCP bindings by name#1004
radugheo merged 1 commit into
mainfrom
fix/a2a-mcp-resolve-by-name

Conversation

@radugheo

@radugheo radugheo commented Jul 22, 2026

Copy link
Copy Markdown
Collaborator
  • Resolve Unified Runtime MCP and remote A2A resources by display name through the SDK name= lookup.
  • Preserve execution-folder routing and lazy URL resolution while switching resource identifiers to display names.
  • Require the released uipath-platform>=0.2.15,<0.3.0, bump uipath-langchain to 0.15.0, and refresh the lockfile.
  • Update focused MCP and A2A tool coverage.

Copilot AI review requested due to automatic review settings July 22, 2026 22:17

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the MCP and A2A tool resolution flow to use name-based lookups in the UiPath SDK (with legacy slugs passed as compatibility hints), and adjusts test coverage to match the new binding behavior.

Changes:

  • Switch MCP server resolution from retrieve_async(slug=...) to retrieve_by_name_async(name=..., legacy_slug=...).
  • Switch Remote A2A agent resolution from retrieve_async(slug=...) to retrieve_by_name_async(name=..., legacy_slug=...) and update the A2aClient interface accordingly.
  • Update MCP/A2A tests to mock and assert the new name-based SDK calls.

Reviewed changes

Copilot reviewed 5 out of 5 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
tests/agent/tools/test_mcp/test_mcp_tool.py Updates MCP tool invocation test mocks to use retrieve_by_name_async.
tests/agent/tools/test_mcp/test_mcp_client.py Updates MCP client tests to mock/assert retrieve_by_name_async arguments (name + legacy_slug + folder_path).
tests/agent/tools/test_a2a_tool.py Updates A2A tests for the new client fields and retrieve_by_name_async call shape.
src/uipath_langchain/agent/tools/mcp/mcp_client.py Changes MCP server URL resolution to use name-based retrieval with legacy slug fallback.
src/uipath_langchain/agent/tools/a2a/a2a_tool.py Changes A2A agent URL resolution to use name-based retrieval with legacy slug fallback; updates client construction accordingly.

Comment thread src/uipath_langchain/agent/tools/a2a/a2a_tool.py Outdated
@radugheo
radugheo force-pushed the fix/a2a-mcp-resolve-by-name branch 3 times, most recently from 3fa9f00 to 0512fd6 Compare July 23, 2026 10:10
Comment thread pyproject.toml Outdated
@radugheo
radugheo force-pushed the fix/a2a-mcp-resolve-by-name branch from 0512fd6 to b662883 Compare July 28, 2026 11:19
Comment thread src/uipath_langchain/agent/tools/a2a/a2a_tool.py
@radugheo
radugheo force-pushed the fix/a2a-mcp-resolve-by-name branch 6 times, most recently from f18e5ce to d0793a5 Compare July 31, 2026 11:20
@radugheo
radugheo force-pushed the fix/a2a-mcp-resolve-by-name branch from d0793a5 to cc42ff2 Compare July 31, 2026 11:26
@sonarqubecloud

Copy link
Copy Markdown

@radugheo
radugheo merged commit 4671337 into main Jul 31, 2026
45 checks passed
@radugheo
radugheo deleted the fix/a2a-mcp-resolve-by-name branch July 31, 2026 11:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants