Skip to content

a2a - #17

Draft
jmoreno45 wants to merge 7 commits into
developfrom
feature/a2a
Draft

a2a#17
jmoreno45 wants to merge 7 commits into
developfrom
feature/a2a

Conversation

@jmoreno45

@jmoreno45 jmoreno45 commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

Adds A2A capability with some example agents.

python examples/a2a_table_mcp_server.py --port 9101 &
python examples/a2a_average_mcp_server.py --port 9102 &
python examples/a2a_langchain_agent.py --port 9111 --config configs/example_a2a_agents.json --mcp-url http://localhost:9101/mcp &
python examples/a2a_google_adk_agent.py --port 9112 --config configs/example_a2a_agents.json --mcp-url http://localhost:9102/mcp &
mada-cli configs/example_a2a_agents.json
mada-gradio /g/g20/moreno45/Projects/GITHUB-MADA/mada/configs/example_a2a_agents.json

Can also be exposed as an A2A agent

Run MADA in A2A mode on the same port advertised in the card:

mada-a2a --port 9120 /g/g20/moreno45/Projects/GITHUB-MADA/mada/configs/example_a2a_agents.json

Other A2A agents can discover it at:

http://localhost:9120/.well-known/agent-card.json

If another machine/agent needs to reach it, use --public-url with the externally reachable URL:

mada-a2a --port 9120 --public-url http://hostname:9120/ /g/g20/moreno45/Projects/GITHUB-MADA/mada/configs/example_a2a_agents.json

CLI

Initializing agents and MCP servers...
Status: Connection Successful: Orchestrator initialized with 0 MCP Servers and 2 remote A2A agents and 3 agents
Orchestration mode: agent-as-tool
Model: gpt-5.4 from livai

Available tools:
   • A2A: LangChainAgent - Table reader specialist that can load and display a small built-in CSV table by calling its MCP table-reader tool.
   • A2A: GoogleADKAgent - Column average specialist that can compute averages for numeric columns in a small built-in CSV table by calling its MCP average tool.

Chat with the agents (type 'quit' to exit)
--------------------------------------------------
 
You: load table

Agents:
--------------------
[task-1] Started in background.


[task-1] Completed:

[Calling: call_langchainagent]
Loaded table:

| experiment | temperature_c | pressure_kpa |
|---|---:|---:|
| alpha | 21.2 | 101.3 |
| beta | 24.8 | 99.8 |
| gamma | 19.6 | 103.1 |
| delta | 22.4 | 100.6 |

 
You: average table

Agents:
--------------------
[task-2] Started in background.


[task-2] Completed:

[Calling: call_googleadkagent]
Column averages:

- temperature_c: 22.00
- pressure_kpa: 101.20

 
You:

Gradio

image image

@jmoreno45
jmoreno45 requested a review from bgunnar5 July 30, 2026 22:15
@bgunnar5

Copy link
Copy Markdown
Member

If another machine/agent needs to reach it, use --public-url with the externally reachable URL:

mada-a2a --port 9120 --public-url http://hostname:9120/ /g/g20/moreno45/Projects/GITHUB-MADA/mada/configs/example_a2a_agents.json

Haven't looked at any of the code here yet but this sounds like it would be a perfect use-case for Wormhole.

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