Skip to content

[WIP] Fix duplicate tool argument name error in a2a servers setup#18

Draft
Copilot wants to merge 1 commit into
mainfrom
copilot/fix-duplicate-tool-argument-error
Draft

[WIP] Fix duplicate tool argument name error in a2a servers setup#18
Copilot wants to merge 1 commit into
mainfrom
copilot/fix-duplicate-tool-argument-error

Conversation

Copilot AI commented Mar 23, 2026

Copy link
Copy Markdown
Contributor

Thanks for asking me to work on this. I will get started on it and keep this PR's description up to date as I form a plan and make progress.

Original prompt

This will be all only inside of src/a2a_servers. You can however look at /projectOverview.md to see how it fits into the whole project.

Right now a2a_servers is able to set up multiple a2a servers at once with different paths. It does through configuration files in a directory called src/a2a_servers/agents. Currently the LLM agents are hosted on Microsoft foundry and setup via the new foundry portal

(note that it got completely revamped recently past your training data so keep note that we are using the new Microsoft foundry portal and it no longer called azure foundry)

The problem with this setup is that Microsoft doesn't fully support one a2a client connecting to multiple a2a servers if they are setup via the portal and referenced via an ID. The reason is that when setting up the llm agents via the portal and adding a2a server connections they all get added with the same tool name "remote protocol" and I get a "duplicate tool argument name, each tool must have a unique name" error

Note that this error is not documented publicly, but I was able to talk with someone from Microsoft who said their internal documents have a fix for it where you have to rename the schema via code. That is your task.

You will figure out how to either get a foundry agent via ID and modify its tool schema to remove the duplicate name error or just fully setup the agent via code from the get go. Make sure to have a way to see the tool schema.

You will most likely not be able to fully test it as you won't have the azure credentials for it. But let me know how I can test it. Because you likely wont be able to run and test yourself implement both methods of setting up agent fully via code and setting up on portal with referencing via ID then modifying via code mode. Then tell me how to run each one myself

You can still test to make sure your code is syntactically well and passes all the things marked in the precommit


🔒 GitHub Advanced Security automatically protects Copilot coding agent pull requests. You can protect all pull requests by enabling Advanced Security for your repositories. Learn more about Advanced Security.

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.

2 participants