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