io.github.mdfifty50-boop/a2a-bridge
Agent-to-agent communication bridge for multi-agent systems
التثبيت
أضف هذا إلى إعدادات MCP في عميلك (Claude Desktop: claude_desktop_config.json، وCursor: .cursor/mcp.json، ويستخدم VS Code وغيره الصيغة نفسها «mcpServers»).
a2a-bridge-mcpclaude mcp add a2a-bridge -- npx -y a2a-bridge-mcp@0.1.1
{
"mcpServers": {
"a2a-bridge": {
"command": "npx",
"args": [
"-y",
"a2a-bridge-mcp@0.1.1"
]
}
}
}
التوثيق
مأخوذ من ملف README للمشروع على GitHub ويُحدَّث أسبوعيًا. تفتح الروابط على GitHub.
a2a-bridge-mcp
MCP server for agent-to-agent communication -- capability discovery, task delegation, and result aggregation across MCP agents.
MCP connects agents to tools, but not to each other. This server adds a standardized agent-to-agent layer within the MCP protocol -- register agents, discover capabilities, delegate tasks, and broadcast work to multiple agents. Inspired by Google's A2A protocol.
Install
npx a2a-bridge-mcp
Claude Desktop
Add to claude_desktop_config.json:
{
"mcpServers": {
"a2a-bridge": {
"command": "npx",
"args": ["a2a-bridge-mcp"]
}
}
}
From source
git clone https://github.com/mdfifty50-boop/a2a-bridge-mcp.git
cd a2a-bridge-mcp
npm install
node src/index.js
Tools
register_agent
Register an agent with capabilities for discovery by other agents.
| Param | Type | Default | Description |
|---|---|---|---|
agent_id | string | required | Unique agent identifier |
capabilities | string[] | required | Capability strings (e.g. ["code-review", "summarization"]) |
description | string | "" | Human-readable description |
input_schema | object | {} | JSON schema for accepted input |
output_schema | object | {} | JSON schema for produced output |
endpoint | string | "" | Optional endpoint or transport hint |
discover_agents
Find agents matching a capability need with fuzzy text similarity scoring.
| Param | Type | Default | Description |
|---|---|---|---|
capability_needed | string | required | Capability to search for |
min_score | number | 0.3 | Minimum similarity score (0-1) |
Returns scored matches sorted by relevance.
delegate_task
Delegate a task to a specific registered agent. Creates a tracked task with status lifecycle.
| Param | Type | Default | Description |
|---|---|---|---|
from_agent | string | required | Delegating agent ID |
to_agent | string | required | Target agent ID |
task_description | string | required | What the target should do |
input_data | object | {} | Input data for the task |
timeout_ms | number | 30000 | Timeout in milliseconds |
Returns a task_id for tracking.
get_task_result
Get status and result of a delegated task. Also used by executing agents to submit results.
| Param | Type | Description |
|---|---|---|
task_id | string | Task ID from delegate_task or broadcast_task |
submit_result | object | (Optional) Submit completion result |
submit_error | string | (Optional) Submit failure error |
Status lifecycle: pending -> running -> completed / failed.
broadcast_task
Send a task to ALL agents matching a capability. Creates individual tracked tasks for each match.
| Param | Type | Default | Description |
|---|---|---|---|
from_agent | string | required | Broadcasting agent ID |
capability_needed | string | required | Capability to match |
task_description | string | required | What matched agents should do |
input_data | object | {} | Input data |
min_score | number | 0.3 | Minimum match score |
timeout_ms | number | 30000 | Timeout per agent |
Returns list of task IDs for aggregation via get_task_result.
get_agent_card
Get an agent's full capability card with schemas, stats, and task history.
| Param | Type | Description |
|---|---|---|
agent_id | string | Agent identifier |
Returns capabilities, input/output schemas, success rate, and task counts. Inspired by Google A2A agent cards.
list_agents
List all registered agents, optionally filtered by capability.
| Param | Type | Default | Description |
|---|---|---|---|
filter | string | "" | Capability keyword to filter by (empty = all) |
Resources
| URI | Description |
|---|---|
a2a://agents | All registered agents with capabilities and stats |
Usage Pattern
1. register_agent -- each agent registers at startup
2. discover_agents -- find who can handle a task
3. delegate_task -- send work to a specific agent
OR broadcast_task -- send work to all matching agents
4. get_task_result -- poll for completion or submit results
5. get_agent_card -- inspect an agent's full profile
6. list_agents -- overview of the agent network
Multi-agent workflow example
Agent A (orchestrator):
1. register_agent(agent_id="orchestrator", capabilities=["planning", "coordination"])
2. discover_agents(capability_needed="code review")
-> finds Agent B (score: 0.95)
3. delegate_task(from="orchestrator", to="agent-b", task="Review PR #42")
-> task_id: "task_1234"
4. get_task_result(task_id="task_1234")
-> status: "completed", result: { approved: true, comments: [...] }
Agent B (worker):
1. register_agent(agent_id="agent-b", capabilities=["code-review", "linting"])
2. (receives task via external notification or polling)
3. get_task_result(task_id="task_1234", submit_result={ approved: true })
License
MIT
الأسئلة الشائعة
ما هو io.github.mdfifty50-boop/a2a-bridge؟
Agent-to-agent communication bridge for multi-agent systems
كيف أثبّت io.github.mdfifty50-boop/a2a-bridge؟
يعمل على جهازك. في Claude Code: claude mcp add a2a-bridge -- npx -y a2a-bridge-mcp@0.1.1. وفي العملاء الآخرين، الصق إعداد JSON من هذه الصفحة في إعدادات MCP الخاصة بهم.
هل يحتاج io.github.mdfifty50-boop/a2a-bridge إلى مفتاح API؟
لا يذكر إدراجه في السجل أي مفتاح أو سر إلزامي. قد تتطلب بعض الميزات حسابًا لدى الخدمة التي يتصل بها.
هل io.github.mdfifty50-boop/a2a-bridge مفتوح المصدر؟
شيفرته علنية على GitHub، لكن المستودع لا يعلن ترخيصًا قياسيًا.
من يصون io.github.mdfifty50-boop/a2a-bridge؟
ينشره mdfifty50-boop. يدرجه AI.tn لكنه لا يصونه ولا يوصي به.
من سجل MCP الرسمي. الإدراج ليس توصية: راجع شيفرة الخادم وصلاحياته قبل منحه الوصول إلى بياناتك.