Smart-MCP

Smart-MCP

Generates complex draw.io diagrams (tables, kanbans, GANTT) using a local 9B LLM with RAG, featuring a real-time dashboard and CI/CD pipeline.

Category
Visit Server

README

Smart MCP Pipeline

🎯 Le défi

Utiliser un petit modèle local (9B) sur un GPU grand public (RTX 3060 12Go) pour générer automatiquement des diagrammes draw.io complexes — tableaux, kanbans, GANTT, formes — une tâche où même de gros modèles cloud échouent.

🧠 L'approche

  • RAG (ChromaDB) : 26+ patterns de diagrammes stockés et réinjectés dans le prompt
  • Classification macro : FORME/TABLEAU/KANBAN/GANTT/AGENDA/TEXTE → spécialisation du prompt
  • Modèle local : qwen3.5:9b-hermes (65536 tokens contexte, entièrement sur GPU)
  • Coût : 0€ (pas d'API cloud)

📊 Dashboard temps réel

🚀 http://192.168.1.100:8050
  • Auto-refresh 3s avec tendances et graphiques
  • Toggle AUTO/MANUEL : mode auto = batchs de tests, mode manuel = exécution live du pipeline
  • Filtres : source, macro, status, modèle — tous les résultats historiques visibles
  • Diagrammes persistants : liens cliquables → ouvrir direct dans draw.io (GitHub)
  • Vue ChromaDB : patterns, types, stats en haut du dashboard

📐 Diagramme persistant F1-F17

Le diagramme complet de l'architecture Smart MCP est versionné dans le repo :

  • 13 pages : Vue Macro, Pipeline, Infrastructure, Workflows, Benchmarks, Carte Systémique, Architecture LLM, Optimisation, Kanban, Test, Banc de Test (F16), Amélioration Continue (F17)
  • Liens permanents (après push GitHub) :

🧪 Résultats

Métrique Smart MCP (9B local)
Coût 0€ / mois
Tests CI 214 ✅ local / 208 ✅ CI
Tableaux ✅ 100%
Kanbans ✅ 90%
Formes ✅ 100%
Temps moyen 5-15s
Contexte 65536 tokens
VRAM 6.6 GB

🏗 Architecture

User Prompt → Classifier (LLM) → RAG ChromaDB (26 patterns)
                                    ↓
                              LLM local (9B) → XML draw.io → Dashboard
                                    ↓
                              Test Runner (214 tests) → CI/CD GitHub Actions

🚀 Démarrage rapide

# 1. Installer les dépendances
pip install -r requirements.txt

# 2. Seeder ChromaDB
python -c "from brain.seed_patterns import seed; from brain.shape_templates import seed_shapes; seed(); seed_shapes()"

# 3. Lancer le dashboard
python dashboard/app.py     # → http://0.0.0.0:8050

# 4. Lancer les tests (214)
python ci_tests.py          # → ci_results.json

# 5. Mode CI (sans ChromaDB réelle)
CI=true CI_CHROMA_PATH=/tmp/chroma python ci_tests.py  # → 208 tests

🔬 CI/CD (GitHub Actions)

  • Workflow : .github/workflows/ci.yml
  • Jobs : lint (ruff) → test (208 tests sans LLM, seed ChromaDB dynamique)
  • Déclenché : push/PR vers main

📁 Structure

Smart-MCP/
├── brain/                  # RAG, seed patterns, templates XML
│   ├── rag.py             # ChromaDB RAGBrain
│   ├── seed_patterns.py   # Seed 26 patterns
│   └── shape_templates.py # SHAPE_PATTERNS (15 formes + 5 architectures)
├── dashboard/              # Dash dashboard + test runner
│   ├── app.py             # App Dash (956 lignes)
│   └── test_runner.py     # Runner pipelines
├── diagrams/               # Diagrammes .drawio persistants (13 pages)
├── models/                 # LLM client
│   └── llm_client.py      # LLMClient avec classify_intent
├── mcp_client/             # MCP draw.io client
│   └── drawio.py
├── skills/                 # Skills Hermes pour agents
│   ├── smart-mcp-pipeline.md
│   └── drawio-mcp-integration.md
├── .github/workflows/      # CI/CD
│   └── ci.yml             # Lint + 208 tests
├── tests/                  # Tests unitaires
├── smart_mcp.py            # Pipeline principal
├── smart_mcp_server.py     # Serveur MCP
├── ci_tests.py             # Suite >200 tests (8 sections A-H)
├── SOUL.md                 # Macro-règles de classification
└── README.md               # Ce fichier

🧠 ChromaDB Visualisation

  • 2 collections : diagram_patterns (patterns XML) + feedback_history
  • 26 patterns : 5 architectures + 15 formes + 4 couleurs + 1 test + 1 généré
  • Chemin : ~/.hermes/profiles/default2/home/.smart-mcp/brain/chroma.sqlite3

🔑 Points clés

  • [x] Classification automatique via LLM local
  • [x] RAG avec ChromaDB (26+ patterns)
  • [x] Dashboard temps réel avec mode auto/manuel
  • [x] CI/CD GitHub Actions (208 tests sans LLM)
  • [x] 214 tests local / 208 CI — 100% verts
  • [x] Diagramme persistant F1-F17 lié au dashboard
  • [x] Mode manuel avec exécution live du pipeline
  • [ ] Visualisation ChromaDB (Neo4J / graphe)
  • [ ] Mode auto-apprentissage

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured