MCP Agentic Framework
About
An agentic communication framework for multi-agent collaboration using MCP.
Details
- Author
- piotr1215
- Categories
- Developer Tools, AI, Automation, Communication
Jump to
Usage With Claude Desktop Or Claude Code
{ "mcpServers": { "agentic-framework": { "type": "http", "url": "http://127.0.0.1:3113/mcp" } } }
- Start the HTTP server:npm run start:http
- Add the above configuration to your~/.claude.json
- Restart Claude Desktop
Note: The HTTP transport supports Server-Sent Events (SSE)
When running withnpm run start:http, the following endpoints are available:
- /mcp- Main MCP endpoint for agent communication
- /health- Health check endpoint that returns:
{ "status": "ok", "name": "mcp-agentic-framework", "version": "1.0.0" }
- name(string, required): Agent's display name
- description(string, required): Agent's role and capabilities
- instanceId(string, optional): Instance identifier for automatic deregistration
{ "name": "DeveloperAgent", "description": "Responsible for writing code and implementing features" }
- id(string, required): Agent's unique identifier
](https://docs.anthropic.com/en/docs/claude-code/sub-agents#quick-start)[ { "id": "agent_abc123", "name": "DeveloperAgent", "description": "Responsible for writing code", "status": "online", "lastActivityAt": "2024-01-20T10:30:00.000Z" } ]
Send a message from one agent to another.
- to(string, required): Recipient agent's ID
- from(string, required): Sender agent's ID
- message(string, required): Message content
Retrieve unread messages for an agent. Messages are automatically deleted after reading.
- agent_id(string, required): Agent's ID to check messages for
{ "messages": [ { "from": "agent_abc123", "fromName": "DeveloperAgent", "message": "Task completed", "timestamp": "2024-01-20T10:30:00.000Z" } ] }
Update an agent's status (online, offline, busy, away).
- agent_id(string, required): Agent's ID
- status(string, required): New status (one of: online, offline, busy, away)
Send a broadcast message to all registered agents (except the sender).
- from(string, required): Sender agent's ID
- message(string, required): Broadcast message content
- priority(string, optional): Priority level (low, normal, high). Defaults to 'normal'
{ "from": "orchestrator", "message": "System maintenance in 10 minutes", "priority": "high" }
{ "success": true, "recipientCount": 5, "errors": [] // Any delivery failures }
Retrieve pending notifications for an agent.
- agent_id(string, required): Agent's ID
1. Register agents: - "Register an orchestrator agent for coordinating tasks" - "Register worker1 agent for processing" - "Register worker2 agent for analysis" 2. Orchestrator delegates tasks: - "Send message from orchestrator to worker1: Process customer data" - "Send message from orchestrator to worker2: Analyze market trends" 3. Workers communicate: - "Send message from worker1 to worker2: Data ready for analysis" 4. Broadcast updates: - "Send broadcast from orchestrator: All tasks completed"
The improved broadcast feature allows efficient communication with all agents:
// Orchestrator sends high-priority announcement await sendBroadcast( orchestratorId, "Emergency: System overload detected, pause all operations", "high" ); // All other agents receive: "[BROADCAST HIGH] Emergency: System overload..." // Regular status update await sendBroadcast( orchestratorId, "Daily standup meeting in 5 minutes", "normal" ); // All agents receive: "[BROADCAST NORMAL] Daily standup meeting..."
# Run all tests npm test # Run tests in watch mode npm run test:watch # Run tests with coverage npm run test:coverage
The framework stores data in/tmp/mcp-agentic-framework/:
- agents.json: Registered agents with status and activity tracking
- messages/*.json: Individual message files (one per message)
- Input validation on all tool parameters
- File-based locking prevents race conditions
- No path traversal vulnerabilities
- Messages are stored locally only
- No external network calls
interface Agent { id: string; // Unique identifier name: string; // Display name description: string; // Role description status: string; // online|offline|busy|away registeredAt: string; // ISO timestamp lastActivityAt: string; // ISO timestamp }
interface Message { id: string; // Message ID from: string; // Sender agent ID to: string; // Recipient agent ID message: string; // Content timestamp: string; // ISO timestamp read: boolean; // Read status }
Orchestrator → assigns tasks → Worker agents Worker agents → process in parallel → report back Orchestrator → broadcasts completion → all agents notified
Developer → sends code → multiple Reviewers Reviewers → work independently → send feedback Developer → broadcasts updates → all reviewers see changes
Monitor agent → detects issue → broadcasts alert All agents → receive alert → adjust behavior Coordinator → broadcasts all-clear → normal operations resume
- Ensure sender agent is registered
- Check recipient agents are registered
- Remember sender doesn't receive own broadcasts
- Verify agent registration
- Usediscover-agentsto list all agents
- Check agent IDs are correct
- Messages are deleted after reading
- Each message can only be read once
- Check correct agent ID
This is a web browser that enables your coding agent, such as Claude Code, to visit websites on your behalf and assist you in identifying bugs or creating UI test cases.
AgentChatBus is a persistent AI communication bus that lets multiple independent AI Agents chat, collaborate, and delegate tasks — across terminals, across IDEs, and across frameworks.
What Shopify did for ecommerce, Chipp does for AI agents. Build, deploy, and monetize AI agents for your business — no engineering team required.
CodeVF MCP lets AI hand off problems to real engineers instantly, so your workflows don’t stall when models hit their limits.
Client implementation for Mastra, providing seamless integration with MCP-compatible AI models and tools.
Agent-native developer Q&A API with MCP + A2A endpoints for citations, job pickup, and answer submission.
On-demand access to 150+ specialist AI agent templates — search, browse, and spawn agents. 150x reduction in context usage vs loading agents locally.
Remote MCP server (Streamable HTTP) at https://mcp.agenticrail.nz/ — deterministic step-order enforcement for AI agents. evaluate_step returns ALLOW or DENY before a step runs; verify_receipt proves a sequence's Ed25519-signed, hash-chained receipt chain is intact. No auth required: omit the bearer token and calls run on the public demo key. That first clause matters — the form has no "remote/hosted" field, and putting the endpoint in the description is the convention on that list ("Fully REMOTE! Just use…"). The rest mirrors your own server card verbatim, so the listing and the card can't drift.
An AI Agent with optional Human-in-the-Loop Safety and Model Context Protocol (MCP) integration.
Agent Mail Rooms is a paid remote MCP endpoint for OpenAI Codex agent coordination MCP. It exposes structured JSON tools, a public server card, token-based access, usage receipts, and audit-
MCP bridge that lets Claude Code delegate heavy tasks to the Antigravity CLI (agy) — purpose-built tools, model routing with fallback, session continuity, and output truncation to save Claude's context and tokens.
A Model Context Protocol (MCP) based communication framework that enables multiple AI agents to collaborate through asynchronous messaging. Built with Test-Driven Development (TDD) and functional programming principles.
This framework provides a standardized way for multiple Claude agents (or other MCP-compatible agents) to:
- Register themselves with unique identities
- Discover other registered agents
- Exchange messages asynchronously
- Send broadcasts to all agents
- Work together on complex tasks
The framework uses file-based storage for simplicity and portability, making it easy to run without external dependencies.
This framework provides a different approach to multi-agent collaboration compared toClaude Code's sub-agents feature.
- Tasks are well-defined and repetitive (code review, debugging, testing)
- Consistent, predictable behavior is required
- Working independently on specific problems
- Need to preserve main conversation context
- Real-time collaboration between multiple agents is needed
- Tasks require discussion, negotiation, or consensus
- Problem-solving benefits from diverse perspectives
- Building distributed workflows with agent coordination
Both systems can be complementary: MCP agents can collaborate to design and refine sub-agent configurations, while sub-agents can handle routine tasks identified by MCP agent discussions.
The MCP Agentic Framework can be deployed on Kubernetes for production use with high availability and easy management.
- Kubernetes cluster with MetalLB LoadBalancer (or similar)
- Docker Hub account (or other container registry)
- justcommand runner installed (cargo install just)
cd /home/decoder/dev/mcp-agentic-framework
# First time: Update the docker_user in Justfile vim Justfile # Change docker_user to your Docker Hub username # Deploy (builds, pushes, and deploys to Kubernetes) just update
just status # Or manually: kubectl get svc mcp-agentic-framework-lb
- Update Claude configuration (~/.claude.json):
"agentic-framework": { "type": "http", "url": "http://YOUR_LOADBALANCER_IP:3113/mcp" }
# View all available commands just # Deploy updates (bumps version, builds, pushes, deploys) just update # Patch version bump (1.0.0 -> 1.0.1) just update-minor # Minor version bump (1.0.0 -> 1.1.0) just update-major # Major version bump (1.0.0 -> 2.0.0) # Monitor deployment just status # Check deployment status just logs # Stream logs just test-health # Test health endpoint # Operations just restart # Restart the deployment just rollback # Rollback to previous version
- Zero-downtime deploymentswith rolling updates
- Automatic version managementwith semantic versioning
- Health checkswith automatic restarts
- Persistent LoadBalancer IPvia MetalLB
- Web UIfor monitoring agent communications (auto-opens on first agent)
- Deployment: Single replica with health/readiness probes
- LoadBalancer Service: Stable external IP for Claude access
- ClusterIP Service: Internal cluster communication
- deployment.yaml- Main application deployment
- loadbalancer-service.yaml- External access via MetalLB
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐ │ Developer Agent │ │ Tester Agent │ │ Architect Agent │ └────────┬────────┘ └────────┬────────┘ └────────┬────────┘ │ │ │ └───────────────────────┴───────────────────────┘ │ ┌──────────┴──────────┐ │ MCP Server │ │ ┌──────────────┐ │ │ │Agent Registry│ │ │ └──────────────┘ │ │ ┌──────────────┐ │ │ │ Message Store│ │ │ └──────────────┘ │ └─────────────────────┘ │ ┌──────────┴──────────┐ │ File Storage │ │/tmp/mcp-agentic- │ │ framework/ │ └─────────────────────┘
git clone https://github.com/Piotr1215/mcp-agentic-framework.git cd mcp-agentic-framework
Usage with Claude Desktop or Claude Code
{ "mcpServers": { "agentic-framework": { "type": "http", "url": "http://127.0.0.1:3113/mcp" } } }
- Start the HTTP server:npm run start:http
- Add the above configuration to your~/.claude.json
- Restart Claude Desktop
Note: The HTTP transport supports Server-Sent Events (SSE)
When running withnpm run start:http, the following endpoints are available:
- /mcp- Main MCP endpoint for agent communication
- /health- Health check endpoint that returns:
{ "status": "ok", "name": "mcp-agentic-framework", "version": "1.0.0" }
- name(string, required): Agent's display name
- description(string, required): Agent's role and capabilities
- instanceId(string, optional): Instance identifier for automatic deregistration
{ "name": "DeveloperAgent", "description": "Responsible for writing code and implementing features" }
- id(string, required): Agent's unique identifier
[ { "id": "agent_abc123", "name": "DeveloperAgent", "description": "Responsible for writing code", "status": "online", "lastActivityAt": "2024-01-20T10:30:00.000Z" } ]
Send a message from one agent to another.
- to(string, required): Recipient agent's ID
- from(string, required): Sender agent's ID
- message(string, required): Message content
Retrieve unread messages for an agent. Messages are automatically deleted after reading.
- agent_id(string, required): Agent's ID to check messages for
{ "messages": [ { "from": "agent_abc123", "fromName": "DeveloperAgent", "message": "Task completed", "timestamp": "2024-01-20T10:30:00.000Z" } ] }
Update an agent's status (online, offline, busy, away).
- agent_id(string, required): Agent's ID
- status(string, required): New status (one of: online, offline, busy, away)
Send a broadcast message to all registered agents (except the sender).
- from(string, required): Sender agent's ID
- message(string, required): Broadcast message content
- priority(string, optional): Priority level (low, normal, high). Defaults to 'normal'
{ "from": "orchestrator", "message": "System maintenance in 10 minutes", "priority": "high" }
{ "success": true, "recipientCount": 5, "errors": [] // Any delivery failures }
Retrieve pending notifications for an agent.
- agent_id(string, required): Agent's ID
1. Register agents: - "Register an orchestrator agent for coordinating tasks" - "Register worker1 agent for processing" - "Register worker2 agent for analysis" 2. Orchestrator delegates tasks: - "Send message from orchestrator to worker1: Process customer data" - "Send message from orchestrator to worker2: Analyze market trends" 3. Workers communicate: - "Send message from worker1 to worker2: Data ready for analysis" 4. Broadcast updates: - "Send broadcast from orchestrator: All tasks completed"
The improved broadcast feature allows efficient communication with all agents:
// Orchestrator sends high-priority announcement await sendBroadcast( orchestratorId, "Emergency: System overload detected, pause all operations", "high" ); // All other agents receive: "[BROADCAST HIGH] Emergency: System overload..." // Regular status update await sendBroadcast( orchestratorId, "Daily standup meeting in 5 minutes", "normal" ); // All agents receive: "[BROADCAST NORMAL] Daily standup meeting..."
# Run all tests npm test # Run tests in watch mode npm run test:watch # Run tests with coverage npm run test:coverage
The framework stores data in/tmp/mcp-agentic-framework/:
- agents.json: Registered agents with status and activity tracking
- messages/*.json: Individual message files (one per message)
- Input validation on all tool parameters
- File-based locking prevents race conditions
- No path traversal vulnerabilities
- Messages are stored locally only
- No external network calls
interface Agent { id: string; // Unique identifier name: string; // Display name description: string; // Role description status: string; // online|offline|busy|away registeredAt: string; // ISO timestamp lastActivityAt: string; // ISO timestamp }
interface Message { id: string; // Message ID from: string; // Sender agent ID to: string; // Recipient agent ID message: string; // Content timestamp: string; // ISO timestamp read: boolean; // Read status }
Orchestrator → assigns tasks → Worker agents Worker agents → process in parallel → report back Orchestrator → broadcasts completion → all agents notified
Developer → sends code → multiple Reviewers Reviewers → work independently → send feedback Developer → broadcasts updates → all reviewers see changes
Monitor agent → detects issue → broadcasts alert All agents → receive alert → adjust behavior Coordinator → broadcasts all-clear → normal operations resume
- Ensure sender agent is registered
- Check recipient agents are registered
- Remember sender doesn't receive own broadcasts
- Verify agent registration
- Usediscover-agentsto list all agents
- Check agent IDs are correct
- Messages are deleted after reading
- Each message can only be read once
- Check correct agent ID
This is a web browser that enables your coding agent, such as Claude Code, to visit websites on your behalf and assist you in identifying bugs or creating UI test cases.
AgentChatBus is a persistent AI communication bus that lets multiple independent AI Agents chat, collaborate, and delegate tasks — across terminals, across IDEs, and across frameworks.
What Shopify did for ecommerce, Chipp does for AI agents. Build, deploy, and monetize AI agents for your business — no engineering team required.
CodeVF MCP lets AI hand off problems to real engineers instantly, so your workflows don’t stall when models hit their limits.
Client implementation for Mastra, providing seamless integration with MCP-compatible AI models and tools.
Agent-native developer Q&A API with MCP + A2A endpoints for citations, job pickup, and answer submission.
On-demand access to 150+ specialist AI agent templates — search, browse, and spawn agents. 150x reduction in context usage vs loading agents locally.
Remote MCP server (Streamable HTTP) at https://mcp.agenticrail.nz/ — deterministic step-order enforcement for AI agents. evaluate_step returns ALLOW or DENY before a step runs; verify_receipt proves a sequence's Ed25519-signed, hash-chained receipt chain is intact. No auth required: omit the bearer token and calls run on the public demo key. That first clause matters — the form has no "remote/hosted" field, and putting the endpoint in the description is the convention on that list ("Fully REMOTE! Just use…"). The rest mirrors your own server card verbatim, so the listing and the card can't drift.
An AI Agent with optional Human-in-the-Loop Safety and Model Context Protocol (MCP) integration.
Agent Mail Rooms is a paid remote MCP endpoint for OpenAI Codex agent coordination MCP. It exposes structured JSON tools, a public server card, token-based access, usage receipts, and audit-
MCP bridge that lets Claude Code delegate heavy tasks to the Antigravity CLI (agy) — purpose-built tools, model routing with fallback, session continuity, and output truncation to save Claude's context and tokens.
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.


