OpenClaw skill for Microsoft SharePoint — secure file operations and Office document intelligence via Microsoft Graph API with certificate-based authentication (Sites.Selected).
By Abdelkrim BOUJRAF / ALT-F1 SRL, Brussels 🇧🇪 🇲🇦
- Features
- Quick Start
- Setup
- Commands
- Supported File Formats
- Security
- ClawHub
- License
- Author
- Contributing
- list — browse files and folders in a SharePoint library
- read — download and extract text from Office documents (
.docx,.xlsx,.pptx,.pdf,.txt,.md) - upload — upload files to SharePoint
- search — find files by name
- mkdir — create folders
- delete — remove files (requires explicit
--confirmflag)
- Meeting notes — clean up raw notes into professional Word documents
- Summarize — business or technical summaries of any document
- Action items — extract action items into Excel trackers
- Presentations — generate PowerPoint slides from notes or reports
# 1. Clone
git clone https://github.com/ALT-F1-OpenClaw/openclaw-skill-sharepoint.git
cd openclaw-skill-sharepoint
# 2. Install
npm install
# 3. Configure
cp .env.example .env
# Edit .env with your tenant ID, app client ID, cert path, site ID
# 4. Use
node scripts/sharepoint.mjs list
node scripts/sharepoint.mjs read --path "Report.docx"
node scripts/sharepoint.mjs upload --local ./report.docx --remote "Reports/Q1-2026.docx"- Node.js 18+
- Microsoft Entra app registration with:
Sites.Selectedapplication permission (admin-consented)- Certificate-based authentication (no client secret)
- Site-level grant (
readorwrite) on target SharePoint site
- Certificate (
.pfxor.key+.crt) accessible to OpenClaw
See references/setup-guide.md for the full step-by-step secure setup guide.
See SKILL.md for full command reference.
Once installed as a skill, you can use natural language:
"List files in SharePoint"
"Read the meeting notes from today"
"Upload this report to SharePoint"
"Summarize the quarterly review from a business perspective"
| Format | Read | Write | Library |
|---|---|---|---|
.docx (Word) |
✅ | ✅ | mammoth / docx |
.xlsx (Excel) |
✅ | ✅ | exceljs |
.pptx (PowerPoint) |
✅ | ✅ | pptxgenjs |
.pdf |
✅ | — | pdf-parse |
.txt / .md |
✅ | ✅ | native |
This skill follows an extreme security approach:
- Certificate-based auth only — no client secrets, no passwords
Sites.Selected— app can only access one specific SharePoint site- Dedicated app registration — single-tenant, single-purpose
- Isolated site — target library is in a dedicated SharePoint site
- Code-level controls — path validation, size limits, operation allowlists
- No tokens in logs — all sensitive data is redacted
- Delete requires explicit
--confirmflag
Published as: sharepoint-by-altf1be
clawhub install sharepoint-by-altf1beMIT — see LICENSE
Abdelkrim BOUJRAF — ALT-F1 SRL, Brussels 🇧🇪 🇲🇦
- GitHub: @abdelkrim
- X: @altf1be
Contributions welcome! Please open an issue or PR.