SharePoint-Cleyrop MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MCP_PORT | No | Port for the MCP HTTP server (streamable-http). Default is 8000. | 8000 |
| CLEYROP_DOMAIN | Yes | Cleyrop domain (target of the work data API). | |
| ENTRA_CLIENT_ID | Yes | Application (client) ID of the Entra ID app registration (multi-tenant, public client). | |
| ENTRA_TENANT_ID | No | Entra ID tenant ID. Default 'organizations' for multi-tenant; set to a GUID to restrict to a single organization. | organizations |
| CLEYROP_CLIENT_ID | No | Cleyrop client ID for service account authentication (fallback if no user token available). | |
| CLEYROP_CLIENT_SECRET | No | Cleyrop client secret for service account authentication (fallback if no user token available). | |
| SHAREPOINT_REFRESH_TOKEN | No | Personal SharePoint refresh token (per user). Can be used to persist authentication across restarts. | |
| CLEYROP_USER_TOKEN_HEADER | No | Exact name of the HTTP header carrying the Cleyrop user token (if auto-detection fails). |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| logging | {} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| extensions | {
"io.modelcontextprotocol/ui": {}
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| sharepoint_check_authA | Vérifie que le refresh token configuré donne bien accès à SharePoint. À utiliser pour diagnostiquer un problème d'authentification sans lancer un
transfert : lit |
| sharepoint_debug_headersA | Diagnostic : liste les en-têtes de la requête courante (valeurs masquées). Sert à identifier comment Cleyrop transmet la variable utilisateur
|
| sharepoint_login_startA | Démarre la connexion / l'authentification de l'utilisateur à SharePoint. APPELLE CET OUTIL DIRECTEMENT dès que l'utilisateur exprime l'intention de se connecter à SharePoint — par exemple « je veux me connecter à SharePoint », « connecte-moi à SharePoint », « authentifie-moi », « login SharePoint ». Ne te contente pas d'expliquer la marche à suivre et ne demande pas à l'utilisateur d'appeler une fonction : lance directement cet outil. Renvoie une URL et un code à saisir dans le navigateur (connexion avec le
compte de l'organisation de l'utilisateur), ainsi qu'un |
| sharepoint_login_finishA | Finalise la connexion SharePoint et mémorise l'accès de l'utilisateur. APPELLE CET OUTIL SANS AUCUN ARGUMENT dès que l'utilisateur indique qu'il
a terminé l'étape navigateur — par exemple « c'est bon », « j'ai validé »,
« connecté », « go ». Le serveur retrouve automatiquement la connexion en
cours grâce à l'identité de l'utilisateur. Ne demande JAMAIS de En cas de succès, le refresh token est mémorisé côté serveur pour l'utilisateur courant : il n'a en principe rien à copier, il peut enchaîner directement (recherche de sites, transfert...). |
| sharepoint_search_sitesA | Recherche des sites SharePoint par mot-clé. Renvoie pour chaque site son nom et son identifiant (à passer ensuite comme
paramètre |
| sharepoint_list_folderB | Liste le contenu d'un dossier d'une bibliothèque SharePoint. |
| sharepoint_read_fileA | Lit un fichier SharePoint et renvoie son texte, sans l'importer dans Cleyrop. À utiliser quand l'utilisateur veut analyser, résumer, interroger un
document SharePoint directement (sans le transférer au préalable dans les
données de travail). Formats supportés : PDF, Word (.docx), Excel (.xlsx),
et texte (txt, csv, md, json, html, xml...). Pour copier durablement le
fichier dans un projet, utiliser plutôt |
| cleyrop_list_projectsA | Liste les projets Cleyrop accessibles (id, nom, slug). Utile pour récupérer l'id ou le slug à passer comme paramètre |
| transfer_sharepoint_to_cleyropA | Copie un fichier ou un dossier SharePoint vers les données de travail d'un projet Cleyrop. Le contenu est téléchargé depuis SharePoint (Microsoft Graph) puis ré-uploadé via le cleyrop-sdk. Les fichiers transitent par des fichiers temporaires (supporte les gros fichiers, pas de limite mémoire). |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 9 tools
Each tool targets a distinct action: authentication flow (start/finish), diagnostics (check_auth, debug_headers), browsing (list_folder, search_sites, list_projects), reading files, and transferring. No two tools have overlapping purposes.
All tools follow a consistent verb_noun pattern (e.g., sharepoint_list_folder, sharepoint_login_start, cleyrop_list_projects) with snake_case and clear prefixes for SharePoint vs Cleyrop. No mixing of conventions.
With 9 tools covering authentication, browsing, reading, and transfer, the count is well-scoped for the integration domain. Each tool serves a clear need without excess or deficiency.
The surface covers the primary workflow (authenticate, browse, search, read, and transfer from SharePoint to Cleyrop). Minor gaps exist, such as no write operations to SharePoint (e.g., upload or delete), but these are outside the core purpose.