AIエージェントの公開仕様の現状のまとめとこれから

目次

はじめに

こんにちは、2025年5月に中途入社したデータエンジニアの蛭田海斗です。普段はMagic: The Gatheringをやったり犬と散歩したりしています。

最近はどこもかしこもAIエージェントばかりですね。LLMベンダーはもとより、各クラウドベンダーなどがこぞってAIエージェント用の開発ツールを公開しており、大変盛り上がっています。

一方で、標準化の動きも進んでおり、例えばツール周りを標準化したAnthropicの Model Context Protocol (MCP) は大抵のAIエージェントで利用可能なほど広がっています。

他にも以下のような仕様が生まれてきており、これらに沿って開発することでAIエージェント同士の相互運用性が高まることが期待されます。

この記事では、これらの仕様について解説するとともに、これからどうなるのかについても考察します。

各仕様の概要

この記事では4つの仕様を紹介します。

  • Model Context Protocol (MCP)
  • Agent2Agent (A2A) Protocol
  • Open Agent Specification (Agent Spec)
  • AGNTCY

それぞれ目指すものやカバーする範囲が異なっています。一部重複するものもあり、図示すると次のようになります。

各仕様の関係性
各仕様の関係性

Model Context Protocol (MCP)

Model Context Protocol (MCP) は、2024年11月にAnthropicが提案し、2025年12月にLinux Foundation (正確にはその傘下組織) に寄贈された、LLMから呼び出すツールを標準化した仕様です。

Microsoftの Language Server Protocol (LSP) にインスピレーションを受け、AIアプリケーションへのコンテキスト提供を標準化することを目指しています。

MCP
https://modelcontextprotocol.io/docs/getting-started/intro より引用

ベースはJSON-RPC 2.0で、stdio(ローカル)/ Streamable HTTP(リモート)で通信します。流れは以下の通りです。

MCPの流れ
MCPの流れ

重要なのは、利用側が非常に簡単にMCPサーバーを利用できる点です。認証などを除けばコマンドやURLを指定するだけでAIアプリケーションからMCPサーバーを利用できます。

この特徴により、現在では多くのSaaSがMCPサーバーを提供し始めており、AIエージェント開発ツールでもほとんどのツールで簡単に組み込みが可能です。

Agent2Agent (A2A) Protocol

Agent2Agent (A2A) Protocol は、Googleが2025年4月に提案し、同年6月にLinux Foundationに寄贈された、AIエージェント同士が相互通信するための仕様です。

主な概念はAgent CardとTask、それらに対するJSON-RPCやgRPC, RESTでのメッセージングです。

他のエージェントはAgent Cardを取得することでそのエージェントが何ができるのかを知り、Taskを送信することでエージェント同士が連携して処理を行う、という流れです。

Agent Cardの例を引用します。

https://a2a-protocol.org/latest/specification/#85-sample-agent-card

{
  "protocolVersion": "0.3.0",
  "name": "GeoSpatial Route Planner Agent",
  "description": "Provides advanced route planning, traffic analysis, and custom map generation services. This agent can calculate optimal routes, estimate travel times considering real-time traffic, and create personalized maps with points of interest.",
  "supportedInterfaces": [
    {"url": "https://georoute-agent.example.com/a2a/v1", "protocolBinding": "JSONRPC"},
    {"url": "https://georoute-agent.example.com/a2a/grpc", "protocolBinding": "GRPC"},
    {"url": "https://georoute-agent.example.com/a2a/json", "protocolBinding": "HTTP+JSON"}
  ],
  "provider": {
    "organization": "Example Geo Services Inc.",
    "url": "https://www.examplegeoservices.com"
  },
  "iconUrl": "https://georoute-agent.example.com/icon.png",
  "version": "1.2.0",
  "documentationUrl": "https://docs.examplegeoservices.com/georoute-agent/api",
  "capabilities": {
    "streaming": true,
    "pushNotifications": true,
    "stateTransitionHistory": false
  },
  "securitySchemes": {
    "google": {
      "type": "openIdConnect",
      "openIdConnectUrl": "https://accounts.google.com/.well-known/openid-configuration"
    }
  },
  "security": [{ "google": ["openid", "profile", "email"] }],
  "defaultInputModes": ["application/json", "text/plain"],
  "defaultOutputModes": ["application/json", "image/png"],
  "skills": [
    {
      "id": "route-optimizer-traffic",
      "name": "Traffic-Aware Route Optimizer",
      "description": "Calculates the optimal driving route between two or more locations, taking into account real-time traffic conditions, road closures, and user preferences (e.g., avoid tolls, prefer highways).",
      "tags": ["maps", "routing", "navigation", "directions", "traffic"],
      "examples": [
        "Plan a route from '1600 Amphitheatre Parkway, Mountain View, CA' to 'San Francisco International Airport' avoiding tolls.",
        "{\"origin\": {\"lat\": 37.422, \"lng\": -122.084}, \"destination\": {\"lat\": 37.7749, \"lng\": -122.4194}, \"preferences\": [\"avoid_ferries\"]}"
      ],
      "inputModes": ["application/json", "text/plain"],
      "outputModes": [
        "application/json",
        "application/vnd.geo+json",
        "text/html"
      ]
    },
    {
      "id": "custom-map-generator",
      "name": "Personalized Map Generator",
      "description": "Creates custom map images or interactive map views based on user-defined points of interest, routes, and style preferences. Can overlay data layers.",
      "tags": ["maps", "customization", "visualization", "cartography"],
      "examples": [
        "Generate a map of my upcoming road trip with all planned stops highlighted.",
        "Show me a map visualizing all coffee shops within a 1-mile radius of my current location."
      ],
      "inputModes": ["application/json"],
      "outputModes": [
        "image/png",
        "image/jpeg",
        "application/json",
        "text/html"
      ]
    }
  ],
  "supportsAuthenticatedExtendedCard": true,
  "signatures": [
    {
      "protected": "eyJhbGciOiJFUzI1NiIsInR5cCI6IkpPU0UiLCJraWQiOiJrZXktMSIsImprdSI6Imh0dHBzOi8vZXhhbXBsZS5jb20vYWdlbnQvandrcy5qc29uIn0",
      "signature": "QFdkNLNszlGj3z3u0YQGt_T9LixY3qtdQpZmsTdDHDe3fXV9y9-B3m2-XgCpzuhiLt8E0tV6HXoZKHv4GtHgKQ"
    }
  ]
}
A2Aの流れ
A2Aの流れ

MCPとの違いは連携対象がツールではなくAIエージェントである点です。AIエージェントに対して長期間の処理を移譲できるよう、非同期のTaskもサポートしています。

ただし、A2AのAgent CardをMCPのリソースとして公開することもでき、お互いに補完的な関係となっています。

A2A
https://a2a-protocol.org/ より引用

各社が提供するAIエージェントフレームワークもA2Aをサポートするようになっており、MCPほどではないものの広まってきています。

Open Agent Specification (Agent Spec)

Open Agent Specification (Agent Spec) は、2025年10月にOracleが提案した、AIエージェントの仕様を標準化した仕様です。

Agent Spec
https://oracle.github.io/agent-spec より引用

主な特徴はエージェントの定義をJSON Schemaで行えることで、そのJSON Schemaを経由して各フレームワークのコードに相互変換できます。これによりエージェントの定義をフレームワークに依存せずに行えるようになり、実装への変換まで行えます。

日本オラクル株式会社のエンジニアの方が作成した記事から例を引用します。

https://qiita.com/ksonoda/items/f47dcde81b8a8bc6d889

{
  "component_type": "Agent",
  "id": "8d69e786-170b-433f-b316-629abcfa8554",
  "name": "Helpful agent",
  "description": null,
  "metadata": {},
  "inputs": [],
  "outputs": [],
  "llm_config": {
    "component_type": "OciGenAiConfig",
    "id": "b7b255bb-7aeb-4077-9690-e26f86e0ba50",
    "name": "Oci Client Config",
    "description": null,
    "metadata": {},
    "default_generation_parameters": null,
    "model_id": "cohere.command-a-03-2025",
    "compartment_id": "<compartment_id>",
    "serving_mode": "ON_DEMAND",
    "provider": null,
    "client_config": {
      "component_type": "OciClientConfigWithApiKey",
      "id": "aa7bb3fa-1678-4a38-9041-55accf920731",
      "name": "Oci Client Config",
      "description": null,
      "metadata": {},
      "service_endpoint": "https://inference.generativeai.us-chicago-1.oci.oraclecloud.com",
      "auth_type": "API_KEY",
      "auth_profile": "DEFAULT",
      "auth_file_location": "~/.oci/config"
    }
  },
  "system_prompt": "あなたは優秀なアシスタントです。事実をもとにユーザーの質問に回答してください。仮に記憶の情報をもとに回答する場合は必ずその旨を述べて回答してください。",
  "tools": [],
  "agentspec_version": "25.4.1"
}

このJSONをLangGraphやAutoGenなどのフレームワークのエージェントに変換することができるため、フレームワークに依存しない共通のエージェント定義、実装が可能になります。

AGNTCY

AGNTCYは、Ciscoが2025年3月に提案し、2025年7月にLinux Foundation (正確にはその傘下組織) に寄贈されている、AIエージェントの様々な標準化仕様の集まりです。Observabilityやインフラ、AIエージェント間のメッセージングなどの仕様が含まれています。

AGNTCY
https://agntcy.org/ より引用

仕様にはGoogleも参加しており、AGNTCYの中のOpen Agentic Schema FrameworkにはA2Aに似た仕様が含まれています。以下の通りエージェントのA2AのAgent Cardのような能力の提示が可能になっています。

https://github.com/agntcy/oasf/blob/main/schema/objects/record.json を引用します。

{
  "caption": "Record",
  "description": "The data model defines a schema for agentic AI data representation. The schema provides a way to describe the workload's modules, constraints, artifact locators, versioning, ownership, or relevant details.",
  "extends": "object",
  "name": "record",
  "attributes": {
    "name": {
      "caption": "Name",
      "description": "The name of the record. For example: <code>Marketing Strategy Agent</code>.",
      "requirement": "required"
    },
    "version": {
      "caption": "Version",
      "description": "The version of the record. Values MAY conform to a specific versioning schema.",
      "requirement": "required"
    },
    "schema_version": {
      "caption": "Schema Version",
      "description": "Version of the OASF schema.",
      "requirement": "required"
    },
    "description": {
      "caption": "Description",
      "description": "The description of the record.",
      "requirement": "required"
    },
    "authors": {
      "caption": "Authors",
      "description": "Specifies the authors list of a record.",
      "requirement": "required"
    },
    "annotations": {
      "caption": "Annotations",
      "description": "Additional metadata associated with this record.",
      "requirement": "optional"
    },
    "created_at": {
      "caption": "Creation Time",
      "description": "Includes the creation timestamp. Value MUST conform to <a target='_blank' href='https://www.rfc-editor.org/rfc/rfc3339.html'>RFC-3339</a>. For example:<br><code>2024-09-10T23:20:50.520Z</code>,<br><code>2024-09-10 23:20:50.520789Z</code>.",
      "requirement": "required"
    },
    "skills": {
      "caption": "Skills",
      "description": "List of skills associated with this record.",
      "requirement": "required"
    },
    "domains": {
      "caption": "Domains",
      "description": "List of domains associated with this record.",
      "requirement": "recommended"
    },
    "locators": {
      "caption": "Locators",
      "description": "List of source locators where this record can be found or used from.",
      "requirement": "optional"
    },
    "modules": {
      "caption": "Modules",
      "description": "List of modules that describe this record and its capabilities more in depth.",
      "requirement": "recommended"
    },
    "previous_record_cid": {
      "caption": "Previous Record CID",
      "description": "Content Identifier (CID) of the data of the record with the previous version.",
      "requirement": "optional"
    }
  }
}

AGNTCYのOpen Agentic Schema FrameworkはAgent Cardへの変換も提供されています。

現状と今後のまとめ

Linux Foundationへの集約

この記事で紹介した使用のうち、OracleのOpen Agent Specification以外は全て Linux Foundation に寄贈されています。

Linux FoundationにはOracleも参加しており、今後Open Agent SpecificationもLinux Foundationに寄贈される可能性もあります。もしそうなれば、AIエージェントの仕様はLinux Foundationに集約されることになります。

また、現状でもA2AとAGNTCYで被っている領域もあり、今後Linux Foundationの中で統合される可能性もあります。

現段階で仕様に沿って開発するべきか

ここは特に私個人の意見となりますが、現状では仕様に沿って開発するのは時期尚早かなと考えています。

先述の通りA2AやAGNTCYで被っている領域があることもあり、仕様自体が揺れる可能性が高いと見ています。

また、MCPはかなり広まっており事実上の標準となっているようにも見えますが、それでもコンテキストの圧迫などの問題が指摘されており、別の仕様が生まれる可能性も大きく残っているように思います。

MCPを提案したAnthropic自身が最近ClaudeにSkillsという仕組みを導入しています。これはMCPのツールの説明を全てコンテキストに載せるのではなく、状況を見て段階的にコンテキストに載せることで、コンテキストの圧迫を軽減する仕組みです。この仕組みがMCPの仕様に載ってくるのか、それとも別の仕様が生まれるのかはまだ見通しがつきません。

Skills
https://platform.claude.com/docs/en/agents-and-tools/agent-skills/overview より引用

また、Open Agent Specificationについては提案が2025年10月であり、まだこれから徐々に広がっていくという段階です。

例えば以下のDiscussionではOpenAIのAIエージェントフレームワークにOpen Agent Specificationを採用することについて議論されていますが、2025年10月時点では予定はないとのことです。

https://github.com/openai/openai-agents-python/issues/1875

Thanks for the suggestion! We don’t have plans to add this integration as a built-in module right now, but we’ll keep exploring the integrations that developers need!

クラウドベンダーであるAWSの Strands Agents やGoogleの Agent Development Kit においても公式な採用は確認されていません。

したがって、共通の仕様から各フレームワークの実装を生成できるというメリットはありつつも、現状で急いでOpen Agent Specificationに沿って開発するということは考えていません。

今後の流れ

一方で、今後は仕様がLinux Foundationに集約され、それらの仕様が徐々にブラッシュアップされながら、徐々に標準となっていく流れはあるかと思います。

引き続きこれらの動向は注視していきたいです。Githubの各リポジトリ、ORGをフォローしておくと最新情報を集められますのでオススメです。

まとめ

この記事ではAIエージェントの仕様について解説しました。

勢いがなかなか衰えないAIエージェントの進化の中で、仕様化の現状を把握し、自社での開発に活かす手助けになれていれば幸いです。

一緒に頑張りましょう。

参考リンク

お知らせRECRUIT TECH CONFERENCE 2026を開催します!(オンライン配信/参加無料)

リクルート主催の技術カンファレンス。
第3回目となる今回は「AI×プロダクト開発」をテーマに、急速な技術進化の中で生まれた多様な領域のナレッジから、技術者の活躍を引き出す土壌づくりまで、豊富なセッションをお届けします。是非お気軽にご参加ください!

お申し込みはこちら

RECRUIT TECH CONFERENCE 2026

  • 開催日時
    2026年2月27日(金) 12:00~19:30 (オンライン配信/途中入退場自由)
  • 社外ゲスト
    和田 卓人 氏(タワーズ・クエスト株式会社 取締役社長)/岡野原 大輔 氏(株式会社Preferred Networks 共同創業者 代表取締役社長) ※ご登壇順

記事内容及び組織や事業・職種などの名称は、編集・執筆当時のものです。

キャリア採用の関連職種ページはこちら

関連職種の採用情報
詳しくはこちら

関連組織の特設ページはこちら