本项目是一个模型上下文协议 (MCP) 服务器的实现,可在微软 365 环境中提供高级文件搜索功能。它能高效地进行文件发现、元数据分析,并与业务流程集成,通过提供来自 SharePoint/OneDrive 的内容达成上述目标。
文档中未提及安装步骤,暂不提供相关内容。
该服务器提供两个核心工具,以下是它们的使用说明:
search_m365_files
在微软 365 环境中执行文件搜索。
# 输入:
# query (字符串):搜索词或条件。
# 返回值:文件元数据对象数组。元数据包括文件内容摘要、*驱动器 ID* 和 *文件 ID*,以及其他详细信息。
get_file_content
检索特定文件的内容。
# 输入:
# driveid (字符串):父驱动器的唯一标识符。
# fileid (字符串):文件的唯一标识符。
# 返回值:作为二进制流的文件内容。
# 注意:使用本地缓存来加快重复访问的速度。
暂无高级用法相关内容。
该服务器提供两个核心工具:
search_m365_files
在微软 365 环境中执行文件搜索。
输入:
query
(字符串):搜索词或条件。get_file_content
检索特定文件的内容。
输入:
driveid
(字符串):父驱动器的唯一标识符。fileid
(字符串):文件的唯一标识符。为了提高性能并减少冗余 API 调用,服务器在本地缓存下载的文件。这对于处理大型文档或频繁访问的文件特别有用。
./src/mcp_m365_filesearch/.local/downloads
目录中(相对于项目根目录)。get_file_content
请求文件时,服务器首先检查缓存。此功能确保了更快的响应时间和更高效地使用 API 速率限制。
要将服务器与 Claude Desktop 集成,请更新你的 claude_desktop_config.json
:
"mcpServers": {
"M365 File Search (SharePoint/OneDrive)": {
"command": "uv",
"args": [
"--directory",
"full_path_to_parent_directory",
"run",
".\\src\\mcp_m365_filesearch\\server.py"
],
"env": {
"CLIENT_ID": "MSGraph 客户端 ID",
"CLIENT_SECRET": "MS 图秘密客户",
"TENANT_ID": "租户 ID",
"REGION": "搜索区域"
}
}
}
要使用此服务器,您需要在 Azure Portal 中注册一个应用程序:
Sites.Read.All
Files.Read.All
确保这些值在 MCP 服务器的环境配置中正确设置。
该项目根据 MIT License 发布。您可以自由使用、修改和分发该软件,只要注明出处即可。