Skip to main content
Glama

MCP Multi-Agent Server

A multi-domain multi-agent system served over MCP (Model Context Protocol) with FastMCP. An Orchestrator agent analyzes each request, delegates to the right specialists among 6 domain agents (email, CRM, calendar, customer support, helpdesk, reporting), hands data between them, and synthesizes the final answer — with a bilingual Streamlit dashboard for observability.

Part of the SunnyLab build series — the step where the server stops being a flat bag of tools and grows a team. Before this, one agent held 15+ tools and the client chained them itself; here an in-server orchestrator owns the delegation across 6 agents of 3–6 tools each, so any client (Claude Desktop, Cursor, ADK web, LangGraph) gets the same multi-agent behavior. Sanitized public showcase — credentials and infrastructure identifiers removed; configure your own .env.

Stage 3 of the series — four client setups reaching a multi-agent orchestrator that delegates to six domain agents (Email, CRM, Calendar, CS, Helpdesk, Report), backed by an MCP server on GCP and a RAG vector store.

Why two AI layers

The single-agent server put 31 tools in front of one model and asked it to pick. That works until it doesn't: selection accuracy degrades as the tool list grows. Grouping the tools into specialized agents adds a second decision layer — the orchestrator picks the agent, the agent picks the tool.

Single agent versus multi agent — one AI layer selecting from 31 tools, versus an orchestrator AI choosing an agent which then runs its own think/plan/execute loop.

The orchestrator can be any MCP-capable model — Claude, GPT-4o, Llama 3.1 running locally through Ollama, or Gemini via ADK — because the decision boundary is the protocol, not the vendor. Each agent's internal think → plan → execute loop runs on gpt-4o-mini.

Related MCP server: MCP Business AI Transformation

What it demonstrates

  • Orchestrator + specialist pattern — LLM-driven routing, agent-to-agent handoff, result synthesis, all inside the MCP server

  • A shared BaseAgent — each domain agent is the same contract with a different toolset, so adding a seventh is additive

  • RAG-backed agents — CS (product docs) and Helpdesk (internal docs) answer from ChromaDB, not from model memory

  • RBAC with per-user service isolation — identity arrives on the MCP URL and selects that user's own Gmail and Salesforce credentials; admin gets full access, sales is scoped to Gmail/Salesforce, finance to enterprise resources

  • Built-in observability — logging middleware auto-records every tool call to SQLite, exposed through a log API and a bilingual Streamlit dashboard

  • Cloud-native delivery — Docker, docker-compose, Cloud Build, GitHub Actions (project/VM values are placeholders)

Architecture

MCP client (Claude Desktop / Cursor+GPT / Cursor+Llama / ADK / LangGraph)
        │  MCP over Streamable HTTP  (run_*_agent)
        ▼
┌─ cross-cutting ─────────────────────────────────────────────────────┐
│  User Identification    Logging Middleware     Dynamic Permission   │
│  URL param → user_id    auto-record all calls  admin/sales/finance  │
└─────────────────────────────────────────────────────────────────────┘
   Orchestrator  — context analysis → agent selection → data routing
        ├─ Email Agent      (Gmail)                  3–6 tools each,
        ├─ CRM Agent        (Salesforce)             each with its own
        ├─ Calendar Agent   (Google Calendar)        OpenAI think → plan
        ├─ CS Agent         (product docs · RAG)     → execute loop
        ├─ Helpdesk Agent   (internal docs · RAG)
        └─ Report Agent     (log analysis / stats)
                │
        service layer  ──►  Gmail · Salesforce (JWT) · Calendar · OpenAI · ChromaDB · SQLite

  ports:  :9000 MCP core   ·   :9001 log receiver API   ·   :9501 dashboard

See mcp_server/agents/ for the orchestrator and the six specialists, and mcp_server/services/ for the integration layer.

The same architecture with every agent's actual tool list, the RBAC matrix, and the port assignments filled in:

Enterprise Multi-Agent MCP architecture — Claude Desktop as intelligent orchestrator over a cloud-native MCP server hosting 6 specialized agents, with user identification, logging middleware, and dynamic permissions in front of the enterprise resource plane.

Tech stack

Python · MCP / FastMCP · OpenAI (gpt-4o-mini) · Gmail & Google Calendar · Salesforce (JWT) · ChromaDB (RAG) · Streamlit · Docker / docker-compose · Google Cloud Build · GitHub Actions

Project structure

mcp_server/
  server.py             # FastMCP entrypoint — wires orchestrator + agents (:9000, log API :9001)
  config.py             # env config, supported users, agent definitions
  agents/               # orchestrator.py, base_agent.py, 6 domain agents
  tools/                # MCP tool definitions per domain
  services/             # gmail · calendar · salesforce · openai · vectordb clients
  logging_middleware.py, log_receiver.py   # per-call observability
dashboard.py / dashboard_en.py   # Streamlit dashboards (KR / EN)
assets/                 # architecture diagrams
cloudbuild.yaml · docker-compose.yml · Dockerfile
.github/workflows/      # CI/CD (placeholders for project/VM)
.env.example            # required env vars (no real keys)

Setup

cp .env.example .env      # OPENAI_API_KEY, Gmail, Salesforce, ChromaDB paths
pip install -r requirements.txt

# 1) start the MCP server — remote (SSE) mode on port 9000, log API on 9001
MCP_MODE=sse python mcp_server/server.py

# 2) in a separate shell, launch a dashboard
streamlit run dashboard.py        # or dashboard_en.py for English

Set MCP_MODE=stdio instead to run it as a local stdio server for Claude Desktop / Cursor.

Or with Docker:

docker compose up --build         # exposes 9000 (MCP) and 9001 (log API)

The dashboard reads from the log API, so start the server first — it shows no data until the server is up. Gmail, Salesforce, and Calendar all require your own credentials to run end to end.

The SunnyLab build series

#

Repo

What it adds

1

ai_mcp_fastmcp

Local MCP server (stdio), single user — Gmail · OpenAI · Salesforce as tools

2

ai_mcp_fastmcp_remote-public

Remote, HTTP-streamable resumable transport — multi-user, deployed to cloud

3

ai_mcp_multi_agent-publicyou are here

Orchestrator + 6 domain agents over the same tool layer

4

ai_mcp_langgraph-public

Same capabilities, orchestrated by an explicit LangGraph state machine

5

ai_web_orchestrator_adk-public

Google ADK (Gemini) web/mobile front door onto this server

6

ai_mcp_multi_agent_oosdk-public

Flagship — ontology-driven policy engine, order-to-cash end to end

Note

Public portfolio showcase. Credential files, tokens, and infra identifiers (GCP project, VM IP) were removed before publishing; CI/deploy files use placeholders and require your own configuration.

License

MIT — free to use, modify, and distribute with attribution. Provided as is, without warranty. The third-party services it integrates with (OpenAI, Google, Salesforce) are governed by their own terms; the diagrams and screenshots under assets/ are the author's own work.


SunnyLab — building agentic AI in public · Medium @sunnylabtv · YouTube @sunnylabtv

A
license - permissive license
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    -
    quality
    C
    maintenance
    An advanced MCP-based AI agent system with intelligent tool orchestration, multi-LLM support, and enterprise-grade reliability features like semantic routing and circuit breakers.
    MIT
  • F
    license
    -
    quality
    C
    maintenance
    Enterprise-grade MCP server with multi-agent system for business AI transformation across finance, healthcare, retail, and other domains. Provides specialized AI agents for data analysis, API execution, business validation, and report generation with real-time monitoring and observability.
  • F
    license
    -
    quality
    D
    maintenance
    MCP server that lets AI agents execute structured business processes by exposing process steps as tools with a sequenced event bus to prevent skipping steps.
    1

View all related MCP servers

Related MCP Connectors

  • Control plane for autonomous software labor. Agents claim objectives over MCP with audit trail.

  • Workflow diagnostics, capability routing, and x402 settlement for MCP-compatible agents.

  • Hosted MCP with 91 agent tools: X, domains, SEO, Maps, Trends, Search, YouTube, TikTok, and more.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/sunnylabtv-crypto/ai_mcp_multi_agent-public'

If you have feedback or need assistance with the MCP directory API, please join our Discord server