공개 에이전트 검색
이 예제들을 사용하여 다른 A2A 클라이언트가 당신의 에이전트가 작업을 완료할 수 있는지 결정하기 전에 가져올 JSON의 형태를 만드세요.
이 예제들을 사용하여 다른 A2A 클라이언트가 당신의 에이전트가 작업을 완료할 수 있는지 결정하기 전에 가져올 JSON의 형태를 만드세요.
제공자, 스킬, 태그, 기능, 보안 메타데이터를 조정하여 검토자가 에이전트가 무엇을 하는지, 누가 운영하는지 이해할 수 있게 하세요.
팀이 워크플로우에 통합하기 전에 내부 에이전트 전반에 걸쳐 엔드포인트, 인증, 스킬 설명을 표준화하세요.
JSON 템플릿
제품 질문, 주문 조회, 반품, 에스컬레이션 인계를 처리합니다.
이렇게 만들어진 이유
{
"name": "고객 지원 에이전트",
"description": "고객 지원 질문에 답변하고, 주문 컨텍스트를 검색하고, 해결되지 않은 문제를 인간 팀에 에스컬레이션합니다.",
"supportedInterfaces": [
{
"url": "https://api.example.com/a2a/customer-support",
"protocolBinding": "JSONRPC",
"protocolVersion": "1.0"
}
],
"provider": {
"organization": "예제 주식회사",
"url": "https://example.com"
},
"version": "1.0.0",
"capabilities": {
"streaming": true,
"pushNotifications": true,
"extendedAgentCard": false
},
"defaultInputModes": [
"text/plain",
"application/json"
],
"defaultOutputModes": [
"text/plain",
"application/json"
],
"skills": [
{
"id": "resolve-customer-support-request",
"name": "고객 지원 요청 해결",
"description": "고객 지원 요청을 분류하고, 필요한 상황을 수집하고, 해결 방법을 제안하고, 신뢰도가 낮을 경우 에스컬레이션합니다.",
"tags": [
"support",
"orders",
"returns"
],
"examples": [
"주문한 상품을 반품할 수 있도록 도와주세요."
]
}
],
"securitySchemes": {
"oauth2": {
"oauth2SecurityScheme": {
"flows": {
"clientCredentials": {
"tokenUrl": "https://api.example.com/a2a/customer-support/oauth/token",
"scopes": {
"agent.invoke": "Invoke agent skills"
}
}
}
}
}
},
"security": [
{
"oauth2": [
"agent.invoke"
]
}
]
}예약 가능한 시간대를 찾고 예약 확인을 준비합니다.
이렇게 만들어진 이유
{
"name": "예약 에이전트",
"description": "가용성을 검색하고 예약 옵션을 제안하며 승인을 위해 약속 예약을 준비합니다.",
"supportedInterfaces": [
{
"url": "https://api.example.com/a2a/booking",
"protocolBinding": "JSONRPC",
"protocolVersion": "1.0"
}
],
"provider": {
"organization": "예제 주식회사",
"url": "https://example.com"
},
"version": "1.0.0",
"capabilities": {
"streaming": false,
"pushNotifications": true,
"extendedAgentCard": false
},
"defaultInputModes": [
"text/plain",
"application/json"
],
"defaultOutputModes": [
"application/json"
],
"skills": [
{
"id": "find-and-prepare-booking",
"name": "예약 찾기 및 준비",
"description": "리소스 가용성을 확인하고, 예약 창을 비교하고, 체계적인 예약 제안을 반환합니다.",
"tags": [
"booking",
"calendar",
"availability"
],
"examples": [
"내일 오후에 30분 약속을 잡아보세요."
]
}
],
"securitySchemes": {
"apiKey": {
"apiKeySecurityScheme": {
"location": "header",
"name": "X-API-Key"
}
}
},
"security": [
{
"apiKey": []
}
]
}제품, 재고, 가격, 구매 제약 조건을 비교합니다.
이렇게 만들어진 이유
{
"name": "쇼핑 에이전트",
"description": "사용자 제약 조건과 제품을 비교하고 절충 사항을 고려하여 순위가 매겨진 구매 옵션을 반환합니다.",
"supportedInterfaces": [
{
"url": "https://api.example.com/a2a/shopping",
"protocolBinding": "JSONRPC",
"protocolVersion": "1.0"
}
],
"provider": {
"organization": "예제 주식회사",
"url": "https://example.com"
},
"version": "1.0.0",
"capabilities": {
"streaming": true,
"pushNotifications": false,
"extendedAgentCard": false
},
"defaultInputModes": [
"text/plain",
"application/json"
],
"defaultOutputModes": [
"application/json"
],
"skills": [
{
"id": "compare-shopping-options",
"name": "쇼핑 옵션 비교",
"description": "후보 제품을 평가하고, 제약 조건을 기준으로 필터링하고, 근거와 함께 순위가 매겨진 권장 사항을 반환합니다.",
"tags": [
"shopping",
"commerce",
"recommendations"
],
"examples": [
"1,200달러 미만의 경량 노트북을 비교해 보세요."
]
}
],
"securitySchemes": {
"oauth2": {
"oauth2SecurityScheme": {
"flows": {
"clientCredentials": {
"tokenUrl": "https://api.example.com/a2a/shopping/oauth/token",
"scopes": {
"agent.invoke": "Invoke agent skills"
}
}
}
}
}
},
"security": [
{
"oauth2": [
"agent.invoke"
]
}
]
}코딩 작업을 검토하고, 패치를 제안하고, 구현 결정을 설명합니다.
이렇게 만들어진 이유
{
"name": "코딩 에이전트",
"description": "코드 분석, 변경 제안, 구현 노트 반환을 통해 소프트웨어 엔지니어링 작업을 지원합니다.",
"supportedInterfaces": [
{
"url": "https://api.example.com/a2a/coding",
"protocolBinding": "JSONRPC",
"protocolVersion": "1.0"
}
],
"provider": {
"organization": "예제 주식회사",
"url": "https://example.com"
},
"version": "1.0.0",
"capabilities": {
"streaming": true,
"pushNotifications": true,
"extendedAgentCard": true
},
"defaultInputModes": [
"text/plain",
"application/json"
],
"defaultOutputModes": [
"text/plain",
"application/json"
],
"skills": [
{
"id": "implement-code-change",
"name": "코드 변경 구현",
"description": "코딩 요청을 읽고, 관련 파일을 검사하고, 패치 제안을 반환하고, 확인 단계를 요약합니다.",
"tags": [
"coding",
"review",
"patches"
],
"examples": [
"사용자 API에 페이지 매김을 추가합니다."
]
}
],
"securitySchemes": {
"apiKey": {
"apiKeySecurityScheme": {
"location": "header",
"name": "X-API-Key"
}
}
},
"security": [
{
"apiKey": []
}
]
}출처를 수집하고, 증거를 추출하고, 구조화된 리서치 노트를 반환합니다.
이렇게 만들어진 이유
{
"name": "리서치 에이전트",
"description": "원본 자료를 수집하고, 증거를 추출하고, 인용이 포함된 구조화된 연구 노트를 생성합니다.",
"supportedInterfaces": [
{
"url": "https://api.example.com/a2a/research",
"protocolBinding": "JSONRPC",
"protocolVersion": "1.0"
}
],
"provider": {
"organization": "예제 주식회사",
"url": "https://example.com"
},
"version": "1.0.0",
"capabilities": {
"streaming": true,
"pushNotifications": false,
"extendedAgentCard": false
},
"defaultInputModes": [
"text/plain"
],
"defaultOutputModes": [
"text/plain",
"application/json"
],
"skills": [
{
"id": "prepare-research-brief",
"name": "연구 개요 준비",
"description": "승인된 출처를 검색하고, 주장과 증거를 추출하고, 간결한 연구 개요를 반환합니다.",
"tags": [
"research",
"evidence",
"citations"
],
"examples": [
"재생 가능 에너지 정책에 대한 인용 개요를 준비합니다."
]
}
]
}승인, 상태 확인, 후방 업무 워크플로우 업데이트를 조정합니다.
이렇게 만들어진 이유
{
"name": "내부 워크플로우 에이전트",
"description": "내부 승인을 조정하고, 시스템 상태를 확인하고, 운영팀을 위한 워크플로 업데이트를 준비합니다.",
"supportedInterfaces": [
{
"url": "https://api.example.com/a2a/workflow",
"protocolBinding": "JSONRPC",
"protocolVersion": "1.0"
}
],
"provider": {
"organization": "예제 주식회사",
"url": "https://example.com"
},
"version": "1.0.0",
"capabilities": {
"streaming": false,
"pushNotifications": true,
"extendedAgentCard": true
},
"defaultInputModes": [
"application/json"
],
"defaultOutputModes": [
"application/json"
],
"skills": [
{
"id": "coordinate-internal-workflow",
"name": "내부 워크플로우 조정",
"description": "워크플로 의도를 수신하고, 정책 요구 사항을 확인하고, 승인을 수집하고, 최종 상태를 보고합니다.",
"tags": [
"workflow",
"operations",
"approval"
],
"examples": [
"급여 업데이트 배포에 대한 승인을 요청합니다."
]
}
],
"securitySchemes": {
"oauth2": {
"oauth2SecurityScheme": {
"flows": {
"clientCredentials": {
"tokenUrl": "https://api.example.com/a2a/workflow/oauth/token",
"scopes": {
"agent.invoke": "Invoke agent skills"
}
}
}
}
}
},
"security": [
{
"oauth2": [
"agent.invoke"
]
}
]
}자신 있게 조정하기
각 Agent Card 예제는 복사하기에 충분할 만큼 의도적으로 완전하지만, Agent Card를 변경 없이 그대로 게시해서는 안 됩니다. 이를 여러분 자신의 A2A 서버를 위한 필드 맵으로 취급하세요: 신원, 엔드포인트, 제공자, 인증, 기능, 모드, 스킬 세부 사항을 프로덕션 값으로 교체하세요.
가장 뛰어난 Agent Card는 평이한 언어와 기계가 읽을 수 있는 메타데이터로 에이전트의 작업 경계를 설명합니다. 클라이언트는 에이전트가 무엇을 할 수 있고 할 수 없는지, 어떤 URL을 호출해야 하는지, 자격 증명이 필요한지 판단할 수 있어야 합니다.
모든 example.com URL을 배포된 A2A 엔드포인트와 제공자 웹사이트로 교체하세요.
실제 작업 경계에 맞게 스킬 이름, 설명, 태그(v1.0에서 필수), 예제를 다시 작성하세요.
provider.organization을 설정하고 Agent Card 내용이 변경될 때마다 최상위 version을 올리세요.
엔드포인트가 의도적으로 공개된 경우에만 인증 필드를 제거하세요.
defaultInputModes와 defaultOutputModes를 서버가 실제로 수락하고 반환하는 것과 일치시키세요.
최종 JSON을 검증하고 서비스 도메인의 /.well-known/agent-card.json에 게시하세요.
구축할 준비가 되었습니다
Agent Card 생성기에서 아무 패턴이나 열어 JSON을 검토하고 게시하기 전에 검증하세요.