Agent-to-Agent (A2A) protocol support for Microsoft Teams AI applications. Enables Teams agents to communicate and collaborate with other AI agents using standardized protocols.
pip install microsoft-teams-a2aOr if using uv:
uv add microsoft-teams-a2afrom microsoft_teams.apps import App
from microsoft_teams.a2a import A2APlugin, A2APluginOptions
from a2a.types import AgentCard, AgentCapabilities
app = App()
# Define agent card with capabilities
agent_card = AgentCard(
name="weather_agent",
description="An agent that can tell you the weather",
url="http://localhost:4000/a2a/",
version="0.0.1",
protocol_version="0.3.0",
capabilities=AgentCapabilities(),
default_input_modes=[],
default_output_modes=[]
)
a2a_server = A2APlugin(A2APluginOptions(agent_card=agent_card))
app = App(plugins=[a2a_server])from microsoft_teams.a2a import A2AClientPlugin, A2APluginUseParams
from microsoft_teams.ai import ChatPrompt
from microsoft_teams.openai import OpenAICompletionsAIModel
model = OpenAICompletionsAIModel(api_key="your-api-key", model="gpt-4")
# Connect to another A2A agent
a2a_client = A2AClientPlugin()
a2a_client.on_use_plugin(
A2APluginUseParams(
key="my-weather-agent",
base_url="http://localhost:4000/a2a",
card_url=".well-known/agent-card.json"
)
)
prompt = ChatPrompt(model, plugins=[a2a_client])