使用说明
SharePoint MCP服务器
模型上下文协议(MCP)服务器,使Claude等AI助手能够与SharePoint交互,提供OAuth身份验证、文件搜索和文件夹结构探索功能。
特性
- 🔐 OAuth 2.0身份验证:使用Microsoft进行基于浏览器的安全登录
- 🔍 文件搜索:按名称、内容或两者搜索文件
- 📁 文件夹结构:浏览SharePoint文件夹层次结构
- 📄 文件内容:检索文件内容
- ⏰ 最近的文件:列出最近修改的文件
- 🛡️ 基于权限的:仅访问用户授予权限的网站
先决条件
- Node.js 18或更高版本
- 具有SharePoint访问权限的Microsoft 365帐户
- Azure AD应用程序注册(请参阅下面的设置)
快速开始
🚀 新增:本地测试(无Azure安装!)
想要在没有Azure AD设置的情况下立即进行测试吗?看 LOCAL_SETUP.md
TL;DR用于本地测试:
npm install- 配置Claude Desktop配置文件
- 在Claude中:“使用SharePoint进行身份验证”(不需要客户端ID!)
- 设置您的网站URL并开始搜索
📚 完整生产设置
看 START_HERE.md 有关使用您自己的Azure AD应用程序的完整设置说明。
TL;DR用于生产:
- 注册Azure AD应用程序并获取客户端ID+租户ID
npm install- 配置Claude Desktop配置文件
- 重新启动克劳德
- 使用您的凭据通过Claude进行身份验证
完整说明见 START_HERE.md
Azure AD应用程序设置
第一步:注册申请
- 首选 Azure门户
- 导航至 Azure Active Directory > 应用程序注册 > 新注册
- 填写详细信息:
- 名字:SharePoint MCP
- 重定向URI:Web→
http://localhost:3000/callback
- 点击 注册
步骤2:配置API权限
- 在您的应用程序注册中,转到 API权限
- 点击 添加权限 > Microsoft Graph > 委托权限
- 添加:
Sites.Read.All,Files.Read.All,offline_access - 点击 授予管理员同意
步骤3:获取您的凭据
在您的应用程序注册概述页面中,请注意:
- 应用程序(客户端)ID
- 目录(租户)ID
安装
cd sharepoint-mcp
npm install
Claude桌面配置
编辑您的Claude Desktop配置文件:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
视窗: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"sharepoint": {
"command": "node",
"args": ["/absolute/path/to/sharepoint-mcp/index.js"]
}
}
}
重要:使用完整绝对路径!
用法
1.身份验证
In Claude: "Authenticate with SharePoint using:
- Client ID: [your-client-id]
- Tenant ID: [your-tenant-id]"
2.设置网站URL
In Claude: "Set my SharePoint site to: https://yourtenant.sharepoint.com/sites/yoursite"
3.搜索和探索
"Search for files containing 'quarterly report'"
"Show me the folder structure"
"What are the 10 most recently modified files?"
可用工具
authenticate_sharepoint
使用OAuth 2.0通过SharePoint进行身份验证。
参数:
clientId(必需):Azure AD应用程序(客户端)IDtenantId(必需):Azure AD租户ID
set_site_url
设置SharePoint网站URL。
参数:
siteUrl(必需):完整的SharePoint网站URL
search_files
按文件名或内容搜索文件。
参数:
query(必填):搜索查询字符串searchType(可选):“文件名”、“内容”或“两者都有”maxResults(可选):最大结果(默认值:20)
get_folder_structure
检索文件夹结构。
参数:
folderPath(可选):相对文件夹路径depth(可选):横向深度1-5(默认值:2)
get_file_content
检索文件内容。
参数:
fileId(必填):搜索结果中的文件ID
list_recent_files
列出最近修改的文件。
参数:
limit(可选):文件数(默认值:10)
故障排除
看 故障排除.md 详细的解决方案。
常见问题:
- “找不到MCP服务器”→ 检查配置路径是否为绝对路径
- “身份验证失败”→ 验证客户端ID和租户ID
- “权限被拒绝”→ 在Azure中授予管理员同意
安全
- 仅存储在内存中的访问令牌(1小时后过期)
- 只读权限
- 用户必须明确授予访问权限
- 尊重SharePoint权限
看 安全.md 获取完整的安全信息。
局限性
- 令牌在1小时后过期(尚未自动刷新)
- 只读(无写操作)
- 受Microsoft Graph API限制
- 检索大文件可能很慢
许可证
麻省理工学院
文档
- START_HERE.md -入口点和导航
- QUICKSTART.md -5分钟设置指南
- 故障排除.md -常见问题
- 安全.md -安全考虑
- 建筑.md -系统设计
贡献
欢迎投稿!请提交问题或拉取请求。