Skip to main content

plugin that enables your teams agent to be used as an a2a agent

Project description

Microsoft Teams A2A

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.

Installation

uv add microsoft-teams-a2a

Usage

A2A Server (Expose Agent)

from 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])

A2A Client (Use Other Agents)

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])

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

microsoft_teams_a2a-2.0.0a6.tar.gz (7.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

microsoft_teams_a2a-2.0.0a6-py3-none-any.whl (12.4 kB view details)

Uploaded Python 3

File details

Details for the file microsoft_teams_a2a-2.0.0a6.tar.gz.

File metadata

  • Download URL: microsoft_teams_a2a-2.0.0a6.tar.gz
  • Upload date:
  • Size: 7.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.11 {"installer":{"name":"uv","version":"0.9.11"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for microsoft_teams_a2a-2.0.0a6.tar.gz
Algorithm Hash digest
SHA256 a64bd92ac540a7392e5a6c49cd40c7c80d71c74c9c4bfabc423938af0881de26
MD5 a3d2f0d1d2f33acf4df5eb48c105102d
BLAKE2b-256 456d3f706c21833ef2ba2182c3929e5311889aaad02046b90c5a2a3bed2ade99

See more details on using hashes here.

File details

Details for the file microsoft_teams_a2a-2.0.0a6-py3-none-any.whl.

File metadata

  • Download URL: microsoft_teams_a2a-2.0.0a6-py3-none-any.whl
  • Upload date:
  • Size: 12.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.11 {"installer":{"name":"uv","version":"0.9.11"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for microsoft_teams_a2a-2.0.0a6-py3-none-any.whl
Algorithm Hash digest
SHA256 2765ac616e43516f98ba270b35932a33cc344bb3607a744cf05a71c646f53f17
MD5 1e596026d35769d9edc06be18f1d3250
BLAKE2b-256 6c350a1f06bbd532b8909be1ea775715cfb3895454483f992882a233a4155fdf

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page