> Discover all available pages from the documentation index: https://mastra.zisheng.pro/ja/llms.txt # Connections の概要 Connections を使うと、Mastra をリモート Agent、コーディング Agent、Provider のソフトウェア開発キット(SDK)のランタイム、外部の Tool やリソースと連携できます。Agent のランタイムを管理するシステムと、やり取りする内容に応じて接続方式を選びます。 - [**Agent-to-Agent(A2A)**](https://mastra.zisheng.pro/ja/docs/agents/a2a): サービス、フレームワーク、ベンダー、言語の境界を越えてリモート Agent を公開または利用します。 - [**Agent Client Protocol(ACP)**](https://mastra.zisheng.pro/ja/docs/agents/acp): 互換性のあるコーディング Agent のプロセスを、Mastra の Tool または Subagent として実行します。 - [**SDK Agent**](https://mastra.zisheng.pro/ja/docs/agents/sdk-agents): Provider SDK がランタイム、Tool、権限、Agent ループを引き続き制御したまま、Claude、Cursor、OpenAI の SDK ベースの Agent を登録します。 - [**Model Context Protocol(MCP)**](https://mastra.zisheng.pro/ja/docs/mcp/overview): Agent を外部の Tool やリソースに接続するか、Mastra の Agent、Tool、Workflow、プロンプト、リソースを MCP 互換システムに公開します。 ## Connections を使用する場面 次の場合に Connections を使用します。 - 別のサービスまたはランタイムで動作する Agent に作業を委任する。 - プロジェクトの Workspace に対してコーディング Agent を実行する。 - Provider 固有の SDK ランタイムや Agent ループを置き換えずに、その Provider の Agent を追加する。 - Agent を外部の Tool やリソースに接続するか、Mastra の機能を他のシステムに公開する。 ## はじめる 越える必要がある境界に応じて選択します。リモート Agent のエンドポイントには [A2A](https://mastra.zisheng.pro/ja/docs/agents/a2a)、コーディング Agent のプロセスには [ACP](https://mastra.zisheng.pro/ja/docs/agents/acp)、Provider が管理するランタイムには [SDK Agent](https://mastra.zisheng.pro/ja/docs/agents/sdk-agents)、Tool とリソースには [MCP](https://mastra.zisheng.pro/ja/docs/mcp/overview) を使用します。 **A2A**: ```typescript import { A2AAgent } from '@mastra/core/a2a' const agent = new A2AAgent({ url: 'https://agent.example.com/.well-known/agent-card.json', }) const result = await agent.generate('Summarize the latest report') console.log(result.text) ``` **ACP**: ```typescript import { AcpAgent } from '@mastra/acp' const agent = new AcpAgent({ id: 'coding-agent', description: 'Inspects and edits code', command: 'claude', args: ['--acp'], persistSession: false, }) const result = await agent.generate('Review this project') console.log(result.text) ``` **SDK Agent**: ```typescript import { OpenAISDKAgent } from '@mastra/openai' const agent = new OpenAISDKAgent({ id: 'openai-agent', description: 'Answers project questions', sdkOptions: { name: 'Project assistant', model: 'gpt-5', }, }) const result = await agent.generate('Explain agent loops in one sentence') console.log(result.text) ``` **MCP**: ```typescript import { MCPClient } from '@mastra/mcp' const client = new MCPClient({ id: 'wikipedia-client', servers: { wikipedia: { command: 'npx', args: ['-y', 'wikipedia-mcp'], }, }, }) try { const tools = await client.listTools() console.log(Object.keys(tools)) } finally { await client.disconnect() } ```