UStackUStack
Hyperterse icon

Hyperterse

Hyperterse est un framework open source pour créer des serveurs MCP à partir de définitions déclaratives. Auth, cache et OpenTelemetry inclus.

Hyperterse

Qu'est-ce que Hyperterse ?

Hyperterse est un framework open source pour créer des serveurs d'outils MCP (Model Context Protocol) à partir d'une configuration déclarative. Au lieu d'exposer de nombreux points de terminaison d'outils MCP individuels, il compile vos définitions d'outils en un serveur MCP conforme aux standards que les agents utilisent via une interface cohérente.

L'objectif principal du framework est de vous permettre de « définir les outils une seule fois » (y compris les connexions à la base de données et les règles d'authentification) et de laisser Hyperterse gérer les aspects d'exécution — tels que l'application de l'authentification, le cache des résultats et l'observabilité — sans que vous ayez à écrire et maintenir du code de liaison pour chaque point de terminaison d'outil.

Fonctionnalités principales

  • Définitions d'outils déclaratives à partir de répertoires et fichiers de déclaration : Chaque répertoire sous app/tools/ devient un outil automatiquement, sans écrire de code d'enregistrement pour chaque outil.
  • Interface MCP à deux outils (search + execute) : Les agents interagissent avec un serveur qui expose exactement deux outils MCP — search et execute — tandis que Hyperterse découvre et route dynamiquement vers l'implémentation d'outil sous-jacente correcte.
  • Authentification intégrée via le plugin api_key : Associez l'authentification aux outils avec le plugin api_key intégré (ou implémentez le vôtre), l'authentification étant appliquée automatiquement avant chaque appel execute.
  • Cache avec TTL global ou par outil : Activez le cache des résultats pour que les appels execute identiques renvoient des résultats en cache au lieu d'interroger la base de données ; les règles de cache peuvent être définies globalement ou par outil.
  • Support multi-base de données avec pooling et cycle de vie gérés : Connectez PostgreSQL, MySQL, MongoDB et Redis via des adaptateurs ; Hyperterse gère le pooling de connexions, les vérifications de santé et l'arrêt gracieux.
  • Observabilité avec OpenTelemetry : Hyperterse inclut le tracing OpenTelemetry, les métriques et la journalisation structurée pour déboguer les appels search et execute de bout en bout.
  • Scripts TypeScript pour handlers et transformations : Lorsque les fichiers de déclaration ne suffisent pas, ajoutez des handlers/transformations sous forme de scripts exécutés dans un runtime sandboxé avec fetch et console.
  • Compilation et déploiement en un seul artefact : Hyperterse compile les fichiers de déclaration et scripts en un seul artefact déployable sur Docker, Kubernetes, bare metal ou tout environnement cloud.

Comment utiliser Hyperterse

  1. Installez Hyperterse avec l'une des commandes fournies (cURL, NPM, Bun ou Homebrew).
  2. Créez vos définitions d'outils et d'adaptateurs :
    • Placez les adaptateurs de base de données sous app/adapters/.
    • Placez les déclarations d'outils sous app/tools/, chaque outil étant représenté par son nom de répertoire et incluant un fichier de déclaration avec une instruction SQL, des entrées typées et des règles d'authentification et de cache optionnelles.
  3. (Optionnel) Ajoutez des handlers/transformations TypeScript lorsque vous avez besoin de logique au-delà de ce que supportent les fichiers de déclaration.
  4. Compilez votre artefact serveur pour regrouper vos outils, scripts et configuration.
  5. Servez le serveur MCP compilé dans votre environnement cible ; les agents utilisent alors search pour trouver les outils et execute pour exécuter l'outil sélectionné avec des entrées structurées.

Cas d'usage

  • Outils de recherche ou d'analyse basés sur base de données : Définissez de nombreux outils basés sur SQL dans app/tools/ et laissez un agent utiliser search pour trouver l'outil de requête approprié et execute pour l'exécuter avec des entrées typées.
  • Exécution d'outils multi-tenant ou contrôlée par accès : Associez des règles d'authentification par clé API à des outils spécifiques pour que l'authentification s'exécute automatiquement avant chaque appel execute.
  • Flux de requêtes sensibles aux coûts ou à la latence : Activez le cache global ou par outil avec un TTL pour que les appels execute répétés renvoient des résultats en cache plutôt que de réinterroger la base de données.
  • Équipes standardisant le comportement des serveurs MCP : Utilisez l'authentification, le cache et le tracing OpenTelemetry intégrés de Hyperterse pour maintenir une cohérence entre différents serveurs d'outils sans maintenir de code boilerplate séparé pour chaque point de terminaison.
  • Déploiements en production sur divers types d'infrastructure : Compilez en un seul artefact et déployez-le sur Docker, Kubernetes, bare metal ou environnements cloud sans modifier l'approche de définition des outils.

FAQ

  • À quoi sert Hyperterse ? Hyperterse sert à créer des serveurs d’outils MCP à partir de fichiers de déclaration, en les compilant et les servant avec un support intégré pour l’authentification, le cache et l’observabilité.

  • Hyperterse est-il gratuit ? Oui. Il est gratuit et open source sous licence Apache 2.0, et peut être auto-hébergé.

  • Comment les fichiers de déclaration se mappent-ils aux outils ? Les outils sont définis sous app/tools/ ; chaque répertoire d’outil correspond à un nom d’outil, et le fichier de déclaration du répertoire spécifie une instruction SQL, des entrées typées, et des règles optionnelles d’auth/caching.

  • Quelles bases de données sont prises en charge ? Hyperterse prend en charge PostgreSQL, MySQL, MongoDB et Redis nativement, via des adaptateurs dédiés.

  • Quelle interface MCP Hyperterse expose-t-il aux agents ? Hyperterse expose exactement deux outils MCP — search et execute — indépendamment du nombre de définitions d’outils incluses.

Alternatives

  • Serveurs d’outils MCP personnalisés avec endpoints explicites : Créez un serveur MCP qui expose un endpoint par capacité. Cela offre un contrôle fin, mais nécessite généralement d’écrire et maintenir plus de code pour l’enregistrement, la validation, l’auth, le cache et l’observabilité.
  • Frameworks axés sur le routage/découverte plutôt que la compilation : Utilisez une approche où un agent ou routeur mappe les requêtes vers des fonctions/outils backend. Par rapport à Hyperterse, vous devrez peut-être implémenter validation, auth, cache et traçage de manière cohérente.
  • Bibliothèques d’outils basées uniquement sur base de données avec middleware géré par l’application : Utilisez des bibliothèques d’accès typé à la base de données et implémentez un middleware pour l’auth, le cache et le traçage dans la couche applicative. Cela déplace les responsabilités hors d’un framework MCP et peut augmenter l’effort d’intégration par outil.
  • Moteurs de workflow généralistes pour l’exécution d’outils : Orchestrateurs qui exécutent des tâches basées sur des configurations. Ces alternatives peuvent supporter la chaîne d’outils, mais Hyperterse est spécifiquement orienté autour du comportement de serveur MCP et de la compilation déclarative d’outils vers une interface conforme aux standards.
Hyperterse | UStack