Aller au contenu principal

Hébergez votre propre serveur MCP

Hébergez des serveurs MCP personnalisés ou tiers en tant qu’ applications Databricks. Les serveurs MCP personnalisés sont utiles si vous avez déjà un serveur MCP que vous souhaitez déployer ou si vous souhaitez exécuter un serveur MCP tiers en tant que source d’outils.

L'accès aux serveurs MCP personnalisés est contrôlé via les autorisations Databricks Apps. Pour surveiller l'activité MCP personnalisée, parallèlement à vos autres serveurs MCP et endpoints LLM, utilisez Unity AI Gateway.

Pour utiliser un serveur MCP personnalisé hébergé dans le code de l'agent, consultez Utiliser les serveurs MCP dans les agents.

Exigences

  • Un serveur MCP hébergé en tant qu'application Databricks doit implémenter un transport compatible HTTP, tel que le transport HTTP streamable.

Créer ou déployer un serveur MCP personnalisé

Sélectionnez l'option qui correspond à votre point de départ :

Créer une nouvelle icône. Start from a Template : créez un nouveau serveur MCP à partir du modèle intégré Hello World

Créez un serveur MCP personnalisé à partir du Template Applications

Utilisez le Template intégré Hello World MCP Server pour créer et déployer un serveur MCP avec des outils d'exemple déjà inclus :

  1. Dans la barre latérale, cliquez sur compute.

  2. Cliquez sur l'onglet tab .

  3. Cliquez sur Créer une application .

  4. Sous la catégorie Agents , sélectionnez le template MCP Server - Hello World .

  5. Saisissez un nom d'application commençant par mcp- (par exemple, mcp-hello-world).

remarque

Le nom de l'application doit start par mcp- pour être reconnu comme un serveur MCP dans l'AI Playground.

  1. Cliquez sur Créer une application .

Databricks déploie l'application avec un exemple de code que vous pouvez personnaliser.

The Template comprend deux outils exemples pour vous aider à start :

  • health() : un outil de diagnostic qui confirme que le serveur est opérationnel et renvoie des informations sur son état.
  • get_current_user() : un outil qui récupère les informations de l'utilisateur actuel à l'aide du Databricks SDK, illustrant comment intégrer l'authentification du Workspace.

Ajouter un outil personnalisé

Pour ajouter votre propre outil, ouvrez le code source de l'application et définissez une nouvelle fonction à l'aide du décorateur @mcp.tool(). Par exemple, l'outil suivant convertit une chaîne en majuscules :

Python
@mcp.tool()
def uppercase(text: str) -> str:
"""Convert a string to uppercase."""
return text.upper()

Chaque outil doit inclure une docstring. Les agents d'IA utilisent la docstring pour comprendre quand appeler l'outil. Après avoir ajouté un outil, redéployez l'application pour la rendre disponible.

Pour plus de détails sur l'utilisation des Template d'applications, consultez Créer une application à partir d'un Template, ou le code source du Template sur GitHub.

Icône d'upload dans le cloud. Déployer un serveur existant : héberger un serveur MCP que vous avez déjà en tant qu'application Databricks

Héberger un serveur MCP existant en tant qu’application Databricks

Pour héberger un serveur MCP Python existant en tant qu'application Databricks, suivez les étapes suivantes :

Configurez votre environnement

Avant de déployer votre serveur MCP, authentifiez-vous auprès de votre Workspace en utilisant OAuth.

  1. Exécutez ce qui suit dans un terminal local :

    Bash
    databricks auth login --host https://<your-workspace-hostname>

Configurer le serveur MCP

Utilisez uv pour la gestion des dépendances et l'outillage unifié lors du déploiement de votre serveur MCP.

  1. Ajoutez un requirements.txt au répertoire racine du serveur MCP et incluez uv comme dépendance.

    uv gère l'installation des dépendances supplémentaires définies dans la configuration de votre projet.

    Txt
    uv

  2. Créer un fichier pyproject.toml qui définit un point d'entrée de script pour votre serveur.

    Exemple pyproject.toml:

    Toml
    [project.scripts]
    custom-server = "server.main:main"

    Dans cet exemple :

    • custom-server est le nom du script que vous utilisez avec uv run
    • server.main:main spécifie le chemin du module (server/main.py) et la fonction (main) à exécuter
  3. Ajoutez un fichier app.yaml spécifiant la commande CLI pour exécuter le serveur MCP en utilisant uv run.

    Par default, les applications Databricks écoutent sur le port 8000. Si le serveur écoute sur un port différent, définissez-le à l'aide d'une substitution de variable d'environnement dans le fichier app.yaml.

    Exemple app.yaml:

    YAML
    command: [
    'uv',
    'run',
    'custom-server', # This must match a script defined in pyproject.toml
    ]

Lorsque vous exécutez uv run custom-server, uv recherche la définition du script, trouve le chemin du module et appelle la fonction main().

Déployez le serveur MCP en tant qu'application Databricks

  1. Créez une application Databricks pour héberger le serveur MCP :

    Bash
    databricks apps create mcp-my-server
remarque

Préfixez le nom de votre application avec mcp- pour l'identifier clairement comme un serveur MCP. Cette convention de nommage facilite la découverte et l'organisation dans votre Workspace.

  1. Upload le code source vers Databricks et déployez l'application en exécutant les commandes suivantes depuis le répertoire contenant votre fichier app.yaml :

    Bash
    DATABRICKS_USERNAME=$(databricks current-user me | jq -r .userName)
    databricks sync . "/Users/$DATABRICKS_USERNAME/mcp-my-server"
    databricks apps deploy mcp-my-server --source-code-path "/Workspace/Users/$DATABRICKS_USERNAME/mcp-my-server"

Trouver l’URL de votre application déployée

Après le déploiement, vous pouvez trouver l'URL de votre application dans l'interface utilisateur de Databricks. L'endpoint du serveur MCP est disponible à l'adresse https://<app-url>/mcp.

Ressources supplémentaires