RM

rubenszimbres/multi-agent-system-a2a-adk-mcp

Developer tools

이 페이지는 AI로 자동 번역되었습니다. 기술적인 세부 사항은 원문을 확인하세요. 원문 보기

3 stars 1 forks 품질 65 트렌드 12Apache-2.0

Multi-Agent Systems with Google's Agent Development Kit + A2A + MCP

개요

This project implements a security-focused data processing pipeline using the Agent-to-Agent (A2A) protocol combined with Model Context Protocol (MCP) integration. The system provides secure database queries through a multi-agent architecture. The system utilizes a layered architecture: 1. : Provides standardized communication between clients and agent services 2. : Manages agent behavior and tool integration 3. : Provides specialized SQL and data processing tools - : Handle client requests and agent communication - : Process natural language requests using specialized tools - : Provides SQL query and database interaction tools - : Coordinate task execution across agents The system implements a security pipeline with three specialized agents: 1. : Evaluates input for security threats (SQL injection, XSS, etc.) 2. : Performs database queries and analysis using MCP tools 3.

README

원문 README의 일부입니다. 원문 보기.

Agent-to-Agent (A2A) Security Pipeline with MCP Integration

A security-focused, multi-agent data processing pipeline that combines the Agent-to-Agent (A2A) protocol, Google Agent Development Kit (ADK), and the Model Context Protocol (MCP). The system enables secure natural-language querying of a salary database through a sequential pipeline of specialized agents that enforce threat detection, SQL execution, and PII masking.


Table of Contents


Architecture Overview

The system is composed of three independent layers that collaborate to process every request securely:

┌─────────────────────────────────────────────────────────────┐
│                        CLIENT LAYER                         │
│          query_MCP_ADK_A2A.py  ·  a2a_client.py            │
└────────────────────┬────────────────────────────────────────┘
                     │  JSON-RPC 2.0 over HTTP
┌────────────────────▼────────────────────────────────────────┐
│                     A2A PROTOCOL LAYER                       │
│   Judge Server :10002  ·  SQL Server :10004  ·  Mask :10003 │
│              a2a_servers.py  ·  task_manager.py              │
└────────────────────┬────────────────────────────────────────┘
                     │  ADK agent callbacks
┌────────────────────▼────────────────────────────────────────┐
│                      ADK AGENT LAYER                         │
│       Judge Agent  →  SQL Agent  →  Mask Agent               │
│                      agent.py                                │
└──────┬─────────────────┬───────────────────┬────────────────┘
       │                 │                   │
  SecurityBlocker   MCP Server         Google Cloud DLP
  (in-process)    server_mcp.py         (Cloud API)
                       │
                  SQLite Database
                   salaries.db

Layer Responsibilities

Layer Components Responsibility
Client query_MCP_ADK_A2A.py, a2a_client.py Request orchestration, input sanitization, Model Armor integration
A2A Protocol a2a_servers.py, task_manager.py Standardized JSON-RPC 2.0 agent communication, task lifecycle management
ADK Agents agent.py, mcp_agent.py Natural language understanding, tool invocation, sequential pipeline execution
Tools server_mcp.py, SecurityBlocker, Google Cloud DLP SQL execution, threat detection, PII masking

Agent Pipeline

GitHub에서 전체 README 보기

설치

docker run -p 8000:8000 \
MCP 초보자라면? mcpskill.org 가이드부터 시작하세요 →