[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6Q2SFTV8FWW7YBXDXRWDV64":3,"skill-same:01M6Q2SFTV8FWW7YBXDXRWDV64":75},{"skillNo":4,"name":5,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":6,"repositoryNo":11,"starsCount":12,"licenseSpdxId":13,"licenseFileUrl":6,"sourceHtmlUrl":14,"categories":15,"keywords":21,"publishedAt":25,"linkOnly":26,"markdownContent":27,"markdownBody":27,"frontMatter":28,"refName":29,"commitSha":30,"skillDirectory":31,"forksCount":32,"repositoryHtmlUrl":33,"repositoryHomepageUrl":6,"ownerHtmlUrl":34,"ownerBlogUrl":6,"ownerDescription":35,"updatedAt":36,"install":37,"resources":50},"01M6Q2SFTV8FWW7YBXDXRWDV64","mcp-microsoft365",null,"Kernel8901\u002Fai-agent-skills-classification","Kernel8901","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F72647553?v=4","01M6KV388J2H5PNC8D8P940BJD","01M6KV38CS5B3AY63RKZB410YM",7,"MIT","https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002F电子邮件\u002Fmcp-microsoft365\u002FSKILL.md",[16],{"categoryNo":17,"categoryName":18,"taxonomyType":19,"taxonomyTypeDesc":20},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[22,23,24],"MCP","microsoft365","mcp microsoft365","2026-11-10 10:12:30",false,"# Microsoft 365 MCP Server\n\nFull Microsoft 365 integration via Model Context Protocol (MCP).\n\n## Features\n\n### ? Mail (Outlook)\n- List, read, send, and search emails\n- Filter by folder (inbox, sent, drafts)\n- HTML email support\n\n### ? Calendar\n- List and create events\n- Teams meeting integration\n- Check availability\u002Ffree-busy\n\n### ? OneDrive\n- Browse files and folders\n- Search files\n- Read file content\n\n### ✅ Tasks (Microsoft To-Do)\n- List task lists\n- Create and manage tasks\n- Set importance and due dates\n\n### ? Teams\n- List chats\n- Read and send messages\n\n### ? Users\n- List organization users\n- Get user profiles\n\n## Requirements\n\n- Node.js 18+\n- Azure Entra ID App with Microsoft Graph permissions\n\n## Setup\n\n### 1. Create Azure Entra ID App\n\n1. Go to [Azure Portal](https:\u002F\u002Fportal.azure.com)\n2. Navigate to **Microsoft Entra ID** → **App registrations** → **New registration**\n3. Configure:\n   - Name: `MCP-Microsoft365`\n   - Supported account types: Single tenant (recommended)\n   - Redirect URI: `http:\u002F\u002Flocalhost:3000\u002Fcallback`\n\n### 2. Add API Permissions\n\nAdd these **Application permissions** for Microsoft Graph:\n\n```\nMail.Read, Mail.Send, Mail.ReadWrite\nCalendars.Read, Calendars.ReadWrite\nFiles.Read.All, Files.ReadWrite.All\nTasks.Read.All, Tasks.ReadWrite.All\nChat.Read.All, Chat.ReadWrite.All\nUser.Read.All\n```\n\n**Important:** Click \"Grant admin consent\"\n\n### 3. Get Credentials\n\nSave these values:\n- Application (client) ID\n- Directory (tenant) ID\n- Client Secret (create under Certificates & secrets)\n\n### 4. Install\n\n```bash\n# Clone\u002Fdownload the skill\ncd mcp-microsoft365\n\n# Install dependencies\nnpm install\n\n# Build\nnpm run build\n```\n\n### 5. Configure mcporter\n\n```bash\nmcporter config add m365 --stdio \"node \u002Fpath\u002Fto\u002Fmcp-microsoft365\u002Fdist\u002Findex.js\"\n```\n\nEdit `config\u002Fmcporter.json` to add environment variables:\n\n```json\n{\n  \"mcpServers\": {\n    \"m365\": {\n      \"command\": \"node \u002Fpath\u002Fto\u002Fdist\u002Findex.js\",\n      \"env\": {\n        \"TENANT_ID\": \"your-tenant-id\",\n        \"CLIENT_ID\": \"your-client-id\",\n        \"CLIENT_SECRET\": \"your-client-secret\",\n        \"DEFAULT_USER\": \"user@yourdomain.com\"\n      }\n    }\n  }\n}\n```\n\n## Usage\n\n### Email\n```bash\n# List recent emails\nmcporter call m365.m365_mail_list top:5\n\n# Send email\nmcporter call m365.m365_mail_send to:\"recipient@email.com\" subject:\"Hello\" body:\"\u003Cp>Hi!\u003C\u002Fp>\"\n\n# Search\nmcporter call m365.m365_mail_search query:\"important\"\n```\n\n### Calendar\n```bash\n# List events\nmcporter call m365.m365_calendar_list top:10\n\n# Create event with Teams meeting\nmcporter call m365.m365_calendar_create subject:\"Team Sync\" start:\"2026-01-27T10:00:00\" end:\"2026-01-27T11:00:00\" isOnline:true\n```\n\n### Files\n```bash\n# List OneDrive root\nmcporter call m365.m365_files_list\n\n# Search files\nmcporter call m365.m365_files_search query:\"report\"\n```\n\n### Tasks\n```bash\n# List task lists\nmcporter call m365.m365_tasks_lists\n```\n\n### Teams\n```bash\n# List chats\nmcporter call m365.m365_teams_chats top:10\n```\n\n## 19 Available Tools\n\n| Tool | Description |\n|------|-------------|\n| `m365_mail_list` | List emails |\n| `m365_mail_read` | Read email by ID |\n| `m365_mail_send` | Send email |\n| `m365_mail_search` | Search emails |\n| `m365_calendar_list` | List events |\n| `m365_calendar_create` | Create event |\n| `m365_calendar_availability` | Check free\u002Fbusy |\n| `m365_files_list` | List files |\n| `m365_files_search` | Search files |\n| `m365_files_read` | Read file content |\n| `m365_files_info` | Get file metadata |\n| `m365_tasks_lists` | List task lists |\n| `m365_tasks_list` | List tasks |\n| `m365_tasks_create` | Create task |\n| `m365_teams_chats` | List chats |\n| `m365_teams_messages` | Read messages |\n| `m365_teams_send` | Send message |\n| `m365_users_list` | List users |\n| `m365_user_info` | Get user profile |\n\n## Author\n\n**Mahmoud Alkhatib**\n- Website: [malkhatib.com](https:\u002F\u002Fmalkhatib.com)\n- YouTube: [@malkhatib](https:\u002F\u002Fyoutube.com\u002F@malkhatib)\n- Twitter: [@malkhateeb](https:\u002F\u002Ftwitter.com\u002Fmalkhateeb)\n\n## License\n\nMIT\n",{},"main","f4cb2d49f7667e79ef7804f50396d5aaffdf1f56","电子邮件\u002Fmcp-microsoft365",1,"https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification","https:\u002F\u002Fgithub.com\u002FKernel8901","a little little little dobe in life but science geek","2026-04-05 16:43:56",{"source":7,"skillName":5,"commands":38,"prompt":48,"zipAvailable":49},[39,42,45],{"tool":40,"command":41},"npx","npx skills add Kernel8901\u002Fai-agent-skills-classification --skill mcp-microsoft365",{"tool":43,"command":44},"bunx","bunx skills add Kernel8901\u002Fai-agent-skills-classification --skill mcp-microsoft365",{"tool":46,"command":47},"pnpm","pnpm dlx skills add Kernel8901\u002Fai-agent-skills-classification --skill mcp-microsoft365","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002F电子邮件\u002Fmcp-microsoft365\u002FSKILL.md",true,[51,57,61,65,71],{"path":52,"resourceType":53,"resourceTypeDesc":54,"sizeBytes":55,"sourceHtmlUrl":56},"_meta.json","REFERENCE","参考文档",294,"https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002F电子邮件\u002Fmcp-microsoft365\u002F_meta.json",{"path":58,"resourceType":53,"resourceTypeDesc":54,"sizeBytes":59,"sourceHtmlUrl":60},"package.json",622,"https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002F电子邮件\u002Fmcp-microsoft365\u002Fpackage.json",{"path":62,"resourceType":53,"resourceTypeDesc":54,"sizeBytes":63,"sourceHtmlUrl":64},"README.md",2631,"https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002F电子邮件\u002Fmcp-microsoft365\u002FREADME.md",{"path":66,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":69,"sourceHtmlUrl":70},"src\u002Findex.ts","SCRIPT","脚本",19987,"https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002F电子邮件\u002Fmcp-microsoft365\u002Fsrc\u002Findex.ts",{"path":72,"resourceType":53,"resourceTypeDesc":54,"sizeBytes":73,"sourceHtmlUrl":74},"tsconfig.json",407,"https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002F电子邮件\u002Fmcp-microsoft365\u002Ftsconfig.json",[76,100,131,142,152,182],{"skillNo":77,"name":78,"nameZh":6,"description":79,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":6,"repositoryNo":11,"starsCount":12,"licenseSpdxId":13,"licenseFileUrl":6,"sourceHtmlUrl":80,"categories":81,"keywords":82,"publishedAt":25},"01M6Q5R6WZ06RRB9RQTW54B34B","zyfai","Earn yield on any Ethereum wallet on Base, Arbitrum, and Plasma. Use when a user wants passive DeFi yield on their funds. Deploys a non-custodial subaccount (Safe) linked to their EOA, enables automated yield optimization, and lets them deposit\u002Fwithdraw anytime.","https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002F金融\u002Fzyfai-sdk\u002FSKILL.md",[],[78,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99],"safe","ethereum","defi","Optimization","user","use","Wallet","base","deposit","withdraw","yield","arbitrum","non-custodial","passive","defi yield","earn","yield optimization",{"skillNo":101,"name":102,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":6,"repositoryNo":11,"starsCount":12,"licenseSpdxId":13,"licenseFileUrl":6,"sourceHtmlUrl":103,"categories":104,"keywords":114,"publishedAt":25},"01M6Q5R337B5JSNER4P4YS03TN","zerion-api","https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002F金融\u002Fzerion-api\u002FSKILL.md",[105,108,109],{"categoryNo":106,"categoryName":107,"taxonomyType":19,"taxonomyTypeDesc":20},"01JBSEEDCAT000000000000010","后端与接口",{"categoryNo":17,"categoryName":18,"taxonomyType":19,"taxonomyTypeDesc":20},{"categoryNo":110,"categoryName":111,"taxonomyType":112,"taxonomyTypeDesc":113},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",[115,116,117,22,118,119,120,85,121,89,122,123,124,125,126,127,128,129,130],"api","zerion api","zerion","mcp server","server","blockchain","transactions","crypto wallet","crypto","evm","solana","query","across","positions","token","prices",{"skillNo":132,"name":133,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":6,"repositoryNo":11,"starsCount":12,"licenseSpdxId":13,"licenseFileUrl":6,"sourceHtmlUrl":134,"categories":135,"keywords":139,"publishedAt":25},"01M6Q5QZFYTDAZMZ27BN5VZXAR","zerion-api-skill","https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002F金融\u002Fzerion-api-skill\u002FSKILL.md",[136,137,138],{"categoryNo":106,"categoryName":107,"taxonomyType":19,"taxonomyTypeDesc":20},{"categoryNo":17,"categoryName":18,"taxonomyType":19,"taxonomyTypeDesc":20},{"categoryNo":110,"categoryName":111,"taxonomyType":112,"taxonomyTypeDesc":113},[115,140,141,116,117,22,118,119,120,85,121,89,123,124,125,126,127,128,129,130],"api skill","zerion api skill",{"skillNo":143,"name":144,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":6,"repositoryNo":11,"starsCount":12,"licenseSpdxId":13,"licenseFileUrl":6,"sourceHtmlUrl":145,"categories":146,"keywords":150,"publishedAt":25},"01M6Q5QW17QW98RA3FE45E4RD8","zerion-api-mcp","https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002F金融\u002Fzerion-api-mcp\u002FSKILL.md",[147,148,149],{"categoryNo":106,"categoryName":107,"taxonomyType":19,"taxonomyTypeDesc":20},{"categoryNo":17,"categoryName":18,"taxonomyType":19,"taxonomyTypeDesc":20},{"categoryNo":110,"categoryName":111,"taxonomyType":112,"taxonomyTypeDesc":113},[22,115,151,116,117,118,119,85,121,89,122,123,124,125,126,127,128,129,130],"zerion api mcp",{"skillNo":153,"name":154,"nameZh":6,"description":155,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":6,"repositoryNo":11,"starsCount":12,"licenseSpdxId":13,"licenseFileUrl":6,"sourceHtmlUrl":156,"categories":157,"keywords":161,"publishedAt":25},"01M6Q5QQYZB7A501BDEQWKGSJT","yahoo-finance-forex","Fetches real-time FOREX news and market data from Yahoo Finance for major currency pairs (EUR\u002FUSD, GBP\u002FUSD, USD\u002FJPY, etc.). Analyzes sentiment and provides trading context.","https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002F金融\u002Fyahoo-finance-forex\u002FSKILL.md",[158],{"categoryNo":159,"categoryName":160,"taxonomyType":112,"taxonomyTypeDesc":113},"01JBSEEDCAT000000000000040","财务",[162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181],"finance","yahoo finance","forex","yahoo","yahoo finance forex","github","https","sentiment","real-time","python3","install","Market","usd","news","time","currency","gbp","pip","market data","for",{"skillNo":183,"name":184,"nameZh":6,"description":185,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":6,"repositoryNo":11,"starsCount":12,"licenseSpdxId":13,"licenseFileUrl":6,"sourceHtmlUrl":186,"categories":187,"keywords":189,"publishedAt":25},"01M6Q5QM6VS84WZVM7BKXXPF32","yahoo-finance","This skill should be used when the user asks to \"get stock prices\", \"check stock quotes\", \"look up earnings\", \"get financial data\", \"find trending stocks\", or needs stock market data from Yahoo Finance.","https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002F金融\u002Fyahoo-finance-cli\u002FSKILL.md",[188],{"categoryNo":159,"categoryName":160,"taxonomyType":112,"taxonomyTypeDesc":113},[162,163,165,190,191,192,193,194,195,173,196,197,198,199,200,201,202,203,130,180],"cli","homebrew","find","check","brew","up","local","get","stock","link","trending","sf","quotes","ln"]