Cross Cloud Amazon Bedrock AgentCore with Microsoft Foundry over A2A On July 29, 2026, a developer successfully tested cross-cloud interoperability between Amazon Bedrock AgentCore and Microsoft Foundry over the Agent-to-Agent (A2A) v1.0 protocol. The demo converted 100 USD to EUR using both an MCP tool and a Foundry-hosted agent, with a deterministic comparator reporting zero difference. The project, available on GitHub, demonstrates transport, authentication, and cross-framework agreement. I wanted to test one specific path: php Amazon Bedrock AgentCore AWS | +-- MCP -- live exchange-rate tool | +-- A2A v1.0 -- Microsoft Foundry hosted agent Azure On July 29, 2026, that path worked end to end. An AgentCore-hosted Strands coordinator called a Microsoft Foundry agent over A2A v1.0, authenticated with Microsoft Entra, and compared the reply with an independent MCP conversion. For the smoke case, both sides converted 100 USD to EUR using a rate of 0.87873 and returned 87.87300 . The deterministic comparator reported zero relative difference and no warnings. This article shows how to run that demo and documents what failed on the way. The code is in xbill9/bedrock-foundry-a2a-currency https://github.com/xbill9/bedrock-foundry-a2a-currency . This is not intended to be a currency chatbot. Currency conversion gives the demo a small domain with exact arithmetic, a public data source, and answers that are easy to compare. The coordinator supports three modes: | Mode | Path | |---|---| mcp only | AgentCore calls the exchange-rate MCP tool | a2a only | AgentCore delegates to the Foundry agent over A2A | verified | Both calls run concurrently and deterministic code compares the results | The LLM selects and explains the workflow. It does not calculate the conversion or decide whether two amounts agree. Python Decimal does that: difference = abs primary.converted amount - verifier.converted amount relative difference = difference / abs primary.converted amount agreed = relative difference <= Decimal "0.005" If the two sources disagree, the coordinator returns both quotes. It never asks a model which number looks better. CLI / test runner | | SigV4 v Amazon Bedrock AgentCore Runtime, us-east-1 Strands Agents coordinator, Amazon Nova Micro | +-- MCP stdio | | | +-- Frankfurter daily reference rates | +-- AWS Secrets Manager | | | +-- Entra service-principal credential | +-- Entra OAuth client-credentials exchange | +-- A2A v1.0 JSON-RPC | v Microsoft Foundry hosted agent, East US 2 Microsoft Agent Framework, gpt-5-mini | +-- MCP stdio | +-- Frankfurter daily reference rates The two agents use the same rate provider deliberately. This smoke test is about transport, authentication, tool use, and cross-framework agreement, not about reconciling different market feeds. You need: azd with the Foundry agent extensionInstall the AgentCore CLI and authenticate: npm install -g @aws/agentcore aws sts get-caller-identity az login azd auth login The Azure identity performing the deployment needs Foundry Project Manager on the Foundry project. Azure management-plane Owner or Contributor alone does not grant the data-plane agents/write action. Clone the repository and install into the current user's Python environment. The related benchmark repositories expose the same console-script names, so invoking modules from the intended checkout avoids accidentally running a sibling clone. git clone https://github.com/xbill9/bedrock-foundry-a2a-currency.git cd bedrock-foundry-a2a-currency pip3 install --user --break-system-packages -e ". dev " pip3 install --user --break-system-packages -r requirements.txt PYTHONPATH=. python3 -m pytest -q The July 29 build passed 66 tests. These cover the Decimal domain logic, MCP subprocess transport, failure policies, Entra credential parsing, and a Foundry-shaped authenticated A2A v1.0 server. Try the three modes with deterministic fixture rates: PYTHONPATH=. python3 -m coordinator.cli \ 100 USD EUR --mode mcp only PYTHONPATH=. python3 -m coordinator.cli \ 100 USD EUR --mode a2a only PYTHONPATH=. python3 -m coordinator.cli \ 100 USD EUR --mode verified --transport mcp-stdio --json Fixture results prove orchestration and protocol behavior. They are not financial quotes. The repository's deployment script packages the Foundry agent, provisions the project and gpt-5-mini model deployment, deploys the hosted agent, enables incoming A2A, and reads back the authenticated v1.0 agent card: ./infra/deploy foundry peer.sh The script prints an endpoint shaped like: https://