OneDrive Runtime Skill
SkillFiles & storageOperate the user's OneDrive through the OneDrive MCP. Use when the user asks to find, read, upload, organize, share, or delete files/folders in their OneDrive / Microsoft 365 storage, or to manage sharing permissions or version history.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the OneDrive Runtime Skill skill
What this skill tells your AI
The instructions your AI receives, as published by manor-os/manor-ai in packages/core/ai/skills/mcp_onedrive/SKILL.md and read by ahel’s review.
Use this skill to operate the user's connected OneDrive (Microsoft 365 storage) through the OneDrive MCP (mcp__onedrive__*). For Google Drive use mcp_google_drive.
When To Use
Use OneDrive when the user asks to locate, read, upload, organize, share, or clean up files/folders in their OneDrive, or to manage who has access to an item.
Connection
Authenticates via Microsoft OAuth. On an auth/scope error, stop and ask the user to reconnect OneDrive. get_drive_info reports the connected drive (owner, quota, type).
Core Tools
Find / read:
search_files(reqquery),list_files(folder children),get_file(metadata, reqfile_id),get_file_by_path(resolve bypath),read_file(text content, reqfile_id).get_recent_files,get_shared_with_me,list_versions(reqfile_id).
Create / organize:
upload_text_file(reqname,content; small ≤4MB UTF-8 text),create_folder(reqname).move_file(reqfile_id,destination_folder_id),rename_file(reqfile_id,new_name),copy_file(reqfile_id).
Share (high-impact — see Guardrails):
create_share_link(reqfile_id; mint view/edit/embed link),invite(reqfile_id,recipients; per-user access by email — more granular than a link),list_permissions(reqfile_id),delete_permission(reqfile_id,permission_id).
Delete / restore:
delete_file(reqfile_id; → recycle bin, recoverable from web UI),restore_version(reqfile_id,version_id).
Common Recipes
Find and read a document
search_fileswith aquery(orget_file_by_pathif you know the path). 2.get_fileto confirm. 3.read_filefor content.
Organize files
search_files/list_filesto locate. 2.create_folderif needed. 3.move_file/rename_fileto tidy up.
Share with a person
list_permissionsto see current access. 2. Confirm recipient + access level with the user. 3. Preferinvite(per-user by email) over a broadcreate_share_linkunless a link is explicitly wanted.
Guardrails
- Sharing exposes private files — confirm recipients and access level before
create_share_link/invite. Prefer per-userinviteover an open share link; never mint an "anyone with the link" / edit link without explicit instruction. - Deletion:
delete_filegoes to the recycle bin (recoverable from the web UI), but treat it as user-visible data loss — confirm before deleting, and never delete speculatively. - Prefer
copy_filebefore destructive edits to important files. upload_text_fileis for small text only (≤4MB); don't use it for binary/large files.- Privacy: read only the files the task needs; don't enumerate or export the whole drive.
Edge Cases & Errors
- Two lookup styles: by
file_id(most tools) orget_file_by_path— resolve an ID first when a tool needsfile_id. move_fileneedsdestination_folder_id— get it viasearch_files/list_filesfirst.- Sharing a folder cascades to its children — note this when changing folder access.
- Auth/consent errors → stop and ask the user to reconnect.
Signals
- GitHub stars
- 171
- Forks
- 52
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
mcp-onedrive- Source
- github.com/manor-os/manor-ai