Agent-to-Agent Protocol (A2A)
A2A, AI ajanlarının platformlar arasında iletişim kurmasını ve iş birliği yapmasını sağlayan açık bir protokoldür. A2A uyumlu ajanlar oluşturmayı ve bağlamayı öğrenin.
A2A nedir?
A2A (Agent-to-Agent Protocol), AI ajanlarının farklı platformlar ve satıcılar arasında birbirlerini keşfetmesini ve iletişim kurmasını sağlayan açık bir protokoldür. Başlangıçta Google tarafından başlatılan ve şu anda Linux Foundation tarafından bakımı yapılan A2A, ajanların karmaşık görevlerde iş birliği yapması için standart bir yol sunar.
A2A vs MCP — Fark nedir? * MCP ajanları araçlara bağlar (veritabanları, API'ler, hizmetler) * A2A ajanları diğer ajanlara bağlar (yetkilendirme, iş birliği) İkisini birlikte kullanın: MCP ajanınıza yetenekler verir, A2A uzmanlaşmış ajanlarla iş birliği yapmasını sağlar.
Mevcut uygulama
| Özellik | Durum |
|---|---|
| Streaming | A2A sonuçları döndürmeden önce eksiksiz yanıtı bekler |
| Kimlik doğrulama | Yok veya API anahtarı tabanlı |
| Keşif | agent-card.json üzerinden |
Temel kavramlar
AgentCards
Her A2A ajanı bir AgentCard sunar — ajanın yeteneklerini bilgisayarlı keşfi sağlayan /.well-known/agent-card.json konumundaki bir JSON dosyası.
ajan, AgentCard URL'lerinde, A2A isteklerinde ve yönlendirmelerde varsayılan olarak özel ve dahili ağ adreslerini engeller. Dedicated bir dağıtım işletiyorsanız dahili A2A ajanlarına ulaşmak için
URL_VALIDATION_ENABLED=falseayarlayın. Doğrulama kapalıyken URL'ler yine de geçerli olmalı ve HTTP veya HTTPS kullanmalıdır.
{
"name": "Research Agent",
"description": "Searches and summarizes academic papers",
"url": "https://research-agent.example.com",
"version": "1.0.0",
"skills": [
{
"id": "paper-search",
"name": "Paper Search",
"description": "Search academic databases for relevant papers"
},
{
"id": "summarize",
"name": "Summarize Paper",
"description": "Generate a concise summary of a research paper"
}
]
}İletişim akışı
- Keşif — İstemci ajan yeteneklerini öğrenmek için
/.well-known/agent-card.jsondosyasını alır - Görev oluşturma — İstemci girdi verisiyle bir görev isteği gönderir
- İşleme — Ajan görevi işler ve eksiksiz bir yanıt üretir
- Yanıt — Ajan tam sonucu döndürür (streaming yok)
Eksiksiz A2A Ajan Örneği: ajan-A2A-Demo Deposu, Express sunucusu ve ajan API entegrasyonu olan TypeScript tabanlı bir A2A ajanı (protokol v0.3.0) içerir.
A2A ne zaman kullanılır?
| Kullanım senaryosu | A2A | MCP |
|---|---|---|
| Bir veritabanını sorgulama | ✓ | |
| Bir API çağırma | ✓ | |
| Araştırmayı uzmanlaşmış bir ajana yetkilendirme | ✓ | |
| Bir görevde birden fazla ajanı koordine etme | ✓ | |
| Harici araçlara/hizmetlere bağlanma | ✓ | |
| Ajanlar arası iş birliği | ✓ |
Kaynaklar
- A2A Protocol Web Sitesi — Resmi dokümantasyon ve spesifikasyon
- A2A GitHub Deposu — Protokol spesifikasyonu ve referans uygulamaları
- ajan Cookbook — ajan üzerinde oluşturmak için çalıştırılabilir A2A tarifleri
İlgili dokümantasyon
- MCP Entegrasyon Rehberi — Ajanları araçlara bağlayın
- MCP Sunucu Dizini — Doğrulanmış MCP sunucuları
- Ajan yapılandırması — ajan ajanlarınızı yapılandırın