Skip to main content
Glama

MCP Server

Multi-LLM Gateway para mcp.observabilidadebrasil.org

Um servidor MCP (Model Context Protocol) que atua como gateway inteligente para mΓΊltiplos backends LLM, com suporte a streaming, rate limiting, e monitoramento.

πŸ—οΈ Arquitetura

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                    nginx (SSL + Rate Limit)                  β”‚
β”‚                  mcp.observabilidadebrasil.org               β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                          β”‚
                          β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                     MCP Server (FastAPI)                     β”‚
β”‚                        Port 9200                             β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”        β”‚
β”‚  β”‚ OpenAI  β”‚  β”‚ Claude  β”‚  β”‚ Ollama  β”‚  β”‚ Custom  β”‚        β”‚
β”‚  β”‚ Providerβ”‚  β”‚ Providerβ”‚  β”‚ Providerβ”‚  β”‚ Providerβ”‚        β”‚
β”‚  β””β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”˜  β””β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”˜  β””β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”˜  β””β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”˜        β”‚
β”‚       β”‚            β”‚            β”‚            β”‚              β”‚
β”‚       β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜              β”‚
β”‚                         β”‚                                    β”‚
β”‚              β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”                        β”‚
β”‚              β”‚   LLM Router        β”‚                        β”‚
β”‚              β”‚ (load balance,      β”‚                        β”‚
β”‚              β”‚  fallback, routing) β”‚                        β”‚
β”‚              β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜                        β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

πŸš€ Features

  • Multi-LLM Backend: Suporte a OpenAI, Anthropic Claude, Ollama (local), e providers customizados

  • Streaming SSE: Respostas em tempo real via Server-Sent Events

  • Rate Limiting: ProteΓ§Γ£o contra abuso (nginx + aplicaΓ§Γ£o)

  • Fallback AutomΓ‘tico: Se um provider falhar, tenta o prΓ³ximo

  • Monitoramento: Dashboard separado de requests, mΓ©todos, e abuse

  • Health Checks: Endpoints de saΓΊde para cada provider

  • Docker Ready: Deploy simplificado com Docker Compose

πŸ“¦ InstalaΓ§Γ£o

Requisitos

  • Python 3.11+

  • nginx (para produΓ§Γ£o)

  • Docker (opcional)

Desenvolvimento Local

# Clonar repositΓ³rio
git clone https://github.com/tgosoul2019/mcp.git
cd mcp

# Criar virtual environment
python3 -m venv .venv
source .venv/bin/activate

# Instalar dependΓͺncias
pip install -e ".[dev]"

# Configurar variΓ‘veis de ambiente
cp .env.example .env
# Editar .env com suas API keys

# Rodar servidor
python -m mcp_server

ProduΓ§Γ£o (VPS)

# No servidor
cd /dados
git clone https://github.com/tgosoul2019/mcp.git
cd mcp

# Setup
./scripts/setup.sh

# Iniciar serviΓ§o
sudo systemctl start mcp-server

βš™οΈ ConfiguraΓ§Γ£o

VariΓ‘veis de Ambiente

# Server
MCP_HOST=127.0.0.1
MCP_PORT=9200
MCP_DEBUG=false

# LLM Providers (configure apenas os que usar)
OPENAI_API_KEY=sk-...
ANTHROPIC_API_KEY=sk-ant-...
OLLAMA_BASE_URL=http://localhost:11434

# Default Provider
MCP_DEFAULT_PROVIDER=openai

# Rate Limiting (aplicaΓ§Γ£o)
MCP_RATE_LIMIT_REQUESTS=100
MCP_RATE_LIMIT_WINDOW=60

# Logging
MCP_LOG_LEVEL=INFO
MCP_LOG_FILE=/var/log/mcp/mcp.log

πŸ”Œ API Endpoints

Chat Completion

POST /v1/chat/completions
Content-Type: application/json

{
  "model": "gpt-4",
  "messages": [
    {"role": "user", "content": "Hello!"}
  ],
  "stream": true,
  "provider": "openai"  # opcional, usa default se omitido
}

Health Check

GET /health
GET /health/providers

Metrics

GET /metrics

πŸ“Š Monitoramento

O MCP tem seu prΓ³prio dashboard de monitoramento separado do KCP:

  • URL: https://mcp.observabilidadebrasil.org/admin/monitor

  • Requests por provider

  • LatΓͺncia mΓ©dia

  • Taxa de erros

  • IPs mais ativos

  • Abuse detection

🐳 Docker

# Build
docker build -t mcp-server .

# Run
docker run -d \
  --name mcp-server \
  -p 9200:9200 \
  -e OPENAI_API_KEY=sk-... \
  mcp-server

πŸ“ Estrutura do Projeto

mcp/
β”œβ”€β”€ mcp_server/
β”‚   β”œβ”€β”€ __init__.py
β”‚   β”œβ”€β”€ __main__.py
β”‚   β”œβ”€β”€ app.py              # FastAPI app
β”‚   β”œβ”€β”€ config.py           # ConfiguraΓ§Γ΅es
β”‚   β”œβ”€β”€ router.py           # LLM Router
β”‚   β”œβ”€β”€ providers/
β”‚   β”‚   β”œβ”€β”€ __init__.py
β”‚   β”‚   β”œβ”€β”€ base.py         # Abstract Provider
β”‚   β”‚   β”œβ”€β”€ openai.py
β”‚   β”‚   β”œβ”€β”€ anthropic.py
β”‚   β”‚   └── ollama.py
β”‚   β”œβ”€β”€ middleware/
β”‚   β”‚   β”œβ”€β”€ __init__.py
β”‚   β”‚   β”œβ”€β”€ rate_limit.py
β”‚   β”‚   └── logging.py
β”‚   └── monitor/
β”‚       β”œβ”€β”€ __init__.py
β”‚       β”œβ”€β”€ collector.py    # MΓ©tricas
β”‚       └── dashboard.py    # UI
β”œβ”€β”€ infra/
β”‚   β”œβ”€β”€ nginx/
β”‚   β”‚   └── mcp.conf
β”‚   β”œβ”€β”€ systemd/
β”‚   β”‚   └── mcp-server.service
β”‚   └── docker/
β”‚       β”œβ”€β”€ Dockerfile
β”‚       └── docker-compose.yml
β”œβ”€β”€ scripts/
β”‚   β”œβ”€β”€ setup.sh
β”‚   └── deploy.sh
β”œβ”€β”€ tests/
β”œβ”€β”€ pyproject.toml
β”œβ”€β”€ .env.example
└── README.md

πŸ“„ LicenΓ§a

MIT

  • ProduΓ§Γ£o: https://mcp.observabilidadebrasil.org

  • RepositΓ³rio: https://github.com/tgosoul2019/mcp

-
security - not tested
F
license - not found
-
quality - not tested

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

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

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/tgosoul2019/mcp'

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