OneDrive Read-Only MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| DOWNLOAD_DIR | No | Local dir for downloaded files | ./downloads |
| AZURE_CLIENT_ID | Yes | Application (client) ID from Azure | |
| AZURE_TENANT_ID | No | Leave as consumers for personal MSA | consumers |
| TOKEN_CACHE_PATH | No | Where MSAL persists tokens (chmod 600) | ./token_cache.bin |
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": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| search_onedriveA | Search OneDrive for files/folders by name or content match. Args: query: Search text (Graph full-text search over file/folder names and content). top: Page size, between 1 and 200 (default 20). next_link: Continuation returned by this tool; keep query and top unchanged. Returns {query, count, items, next_link, has_more}. Repeat with next_link until has_more is false; count is the number of items in this page only. |
| list_folderA | List the contents of a OneDrive folder. Args: path: Folder path (e.g. '/Documents') or 'root'/'/' for the drive root. A Graph item id is also accepted. top: Page size, between 1 and 200 (default 50). next_link: Continuation returned by this tool; keep path and top unchanged. Returns {items: [...], next_link, has_more}. Repeat with next_link until has_more is false. Opaque continuations are bound to this folder and page size, and expire after one hour or a server restart. |
| get_item_metadataA | Get full metadata for a single OneDrive file or folder. Args: path_or_id: Either a human path (e.g. '/Documents/foo.pdf') or a raw Graph drive item id. Returns {name, id, path, size, last_modified, is_folder, web_url, created, mime_type, child_count}. The pre-authenticated Graph downloadUrl is intentionally NOT returned (see SECURITY_REVIEW N-M2) — use download_file() to fetch content. |
| download_fileA | Download a OneDrive file's content to local disk (read-only — the source file in OneDrive is never modified). Args: path_or_id: Human path (e.g. '/Documents/foo.pdf') or Graph item id of the FILE to download. dest_filename: Optional bare local filename to save as (defaults to the OneDrive file's own name). Saved under DOWNLOAD_DIR. Must be a plain file name (no path separators) and must not already exist — an existing destination raises an error instead of being silently overwritten. Returns {local_path, size_bytes, mime_type, source_name}. The file is always saved to disk (owner-only permissions); base64 content is not returned to keep responses small and to safely handle large files. |
| get_drive_infoA | Get basic OneDrive info (quota, owner, drive id) — useful as a smoke test that authentication is working. Returns {drive_id, drive_type, owner_name, quota_used, quota_total, quota_remaining, web_url}. |
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 5 tools
Each tool maps to a distinct resource+action pair: search by text, enumerate a folder, fetch metadata for one item, download file content, and retrieve drive-level info. The only near-overlap (search_onedrive vs list_folder) is clearly separated by text-query versus path-scoped semantics, and descriptions reinforce the boundary.
All five tools follow a strict snake_case verb_noun pattern (search_, list_, get_, download_, get_). The verb choice matches the operation type, and there are no camelCase or vague-verb outliers.
Five tools is well-scoped for a read-only OneDrive surface: discovery, enumeration, inspection, retrieval, and a health check. Every tool earns its place and nothing feels redundant or missing at this granularity.
Read-only coverage is solid: search, folder listing, metadata, content download, and auth smoke test cover the core lifecycle without dead ends. Minor gaps remain — no tool for shared/remote drives, recent or shared-with-me items, or permission/version metadata that Graph exposes.