Skip to content

Mettre en place du rate limiting #2

Description

@hgsmn

Implémenter le Rate Limiting

📋 Contexte

L'application MCP grandit et nécessite une protection contre les abus, les erreurs de configuration ou les pics de charge involontaires. Nous allons implémenter un système de rate limiting en utilisant la librairie limits pour contrôler le débit des requêtes entrantes.

🎯 Objectif

Mettre en place un rate limiting basée sur l'IP du client progressif et évolutif :

🔧 Détails techniques

  • Librairie : limits (ex: limits>=3.5.0)
  • Intégration : Middleware / Decorator adapté au framework MCP actuel (FastAPI/Starlette/Flask/etc.)
  • Configuration : Externalisée via variables d'environnement ou fichier YAML/JSON

✅ Critères d'acceptation

  • La librairie limits est installée et intégrée au pipeline de build
  • Le rate limiting s'applique sur tous les tools MCP (via middleware ou décorateur)
  • Retourne un HTTP 429 Too Many Requests avec les en-têtes standards :
    Retry-After, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset
  • Les logs sont configurés pour tracer les déclenchements (WARNING ou INFO) sans saturer le système
  • Documentation technique mise à jour (architecture, configuration, endpoints ciblés, stratégie d'évolutivité)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions