Skip to content

✨ Add simple_generalist A2A agent for testing with AppWorld MCP#121

Open
kellyaa wants to merge 3 commits intokagenti:mainfrom
kellyaa:simple_generalist
Open

✨ Add simple_generalist A2A agent for testing with AppWorld MCP#121
kellyaa wants to merge 3 commits intokagenti:mainfrom
kellyaa:simple_generalist

Conversation

@kellyaa
Copy link
Contributor

@kellyaa kellyaa commented Feb 11, 2026

Summary

This PR adds a new a2a/simple_generalist example agent that exposes an A2A-compatible server backed by AG2, with optional MCP tool usage.

Key changes:

  • Add new a2a/simple_generalist project (packaging, lockfile, Dockerfile, env template, README).
  • Implement A2A server wiring in a2a/simple_generalist/src/simple_generalist/a2a_server/server.py:
    • Agent card + skill metadata
    • Request handling + streaming task updates/events
    • Per-request MCP connection via streamablehttp_client when MCP_SERVER_URL is configured
  • Implement AG2-driven generalist agent in a2a/simple_generalist/src/simple_generalist/agent/generalist_agent.py:
    • ConversableAgent + UserProxyAgent execution loop (a_initiate_chat)
    • Optional MCP toolkit registration for tool calling
    • Final answer extraction from AG2 chat history
  • Add environment-driven settings in a2a/simple_generalist/src/simple_generalist/config/settings.py:
    • LLM model/key/base URL/extra headers
    • max iterations
    • optional public A2A URL
  • Add runtime entrypoint in a2a/simple_generalist/src/simple_generalist/main.py.
  • Add setup/documentation notes for local and Kagenti usage in a2a/simple_generalist/README.md.

Related issue(s)

kagenti/kagenti#543

kellyaa and others added 3 commits February 9, 2026 16:40
Signed-off-by: Kelly Abuelsaad <kaymar@gmail.com>
Signed-off-by: Kelly Abuelsaad <kaymar@gmail.com>
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.

1 participant