Token导航 LogoToken导航TokenDH.com
Onedrive MCP Server Spring logo
运维云端stdio官方级别未说明来源级核验

Onedrive MCP Server Spring

MCP Server

一个基于Spring Boot和Spring AI的OneDrive文件管理服务,支持文件搜索、文件夹导航和AI代理集成。

工具数

3

提示词数

0

GitHub Stars

0

资源数

0
云存储JavaVS CodeSpring BootVS Code

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

karthik20

提供方

karthik20

最后核验

2026/5/17 20:21

运行时

Docker

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

docker run -p 8080:8080 -e ONEDRIVE_ACCESS_TOKEN=your-token karthik20/onedrive-mcp-server:0.0.1

详细介绍

OneDrive MCP服务器

模型上下文协议(MCP)服务器实现,使AI代理能够搜索和导航Microsoft OneDrive中的文件和文件夹。内置Spring Boot和Spring AI。

特性

  • 🔍 使用可选文件夹筛选在OneDrive中搜索文件
  • 📁 搜索和导航文件夹结构
  • 🔗 获取指向文件和文件夹的直接web URL
  • 🤖 用于AI代理集成的MCP兼容接口
  • 🔒 使用Microsoft Graph API进行安全访问

先决条件

  • Java 21或更高版本
  • Maven 3.6+
  • Docker(可选,用于容器化部署)
  • Microsoft OneDrive帐户和访问令牌

获取Microsoft OneDrive访问令牌

您可以通过两种方式获得访问令牌:

选项1:使用Microsoft图形资源管理器(快速方法)

  1. 访问 Microsoft图形资源管理器
  2. 使用您的Microsoft帐户登录
  3. 转到“访问令牌”选项卡
  4. 确保您启用了以下权限:

- 文件夹。阅读 - 文件夹。读。全部

  1. 从令牌字段复制访问令牌

注意:此令牌是临时的,将在几个小时后过期。它适合测试,但不建议用于生产。

选项2:注册自己的应用程序(建议用于生产)

  1. 微软Azure门户:

- 点击“新注册” - 为您的应用程序命名 - 对于“支持的帐户类型”,选择“任何组织目录中的帐户和个人Microsoft帐户” - 对于“重定向URI”,选择“公共客户端/本地(移动和桌面)”,然后输入“https://login.microsoftonline.com/common/oauth2/nativeclient" - 点击“注册”

  1. 从您注册的应用程序中记下这些值:

- 应用程序(客户端)ID - 重定向URI

  1. 配置API权限:

- 转到“API权限” - 点击“添加权限” - 选择“Microsoft Graph” - 选择“委派权限” - 添加以下权限: - 文件夹。阅读 - 文件夹。读。全部

  1. 获取您的访问令牌:

- 在浏览器中访问此URL(替换your_CLIENT_ID):

   https://login.microsoftonline.com/common/oauth2/v2.0/authorize?client_id=YOUR_CLIENT_ID&scope=files.read&response_type=token&redirect_uri=https://login.microsoftonline.com/common/oauth2/nativeclient

- 使用您的Microsoft帐户登录 - 身份验证后,您将被重定向到包含您的访问令牌的URL - 从URL参数复制访问令牌值 access_token=

此令牌的有效期为几个小时,需要定期刷新。对于生产使用,实现适当的OAuth2令牌刷新流。

配置

  1. 设置你的OneDrive访问令牌:

应用程序希望通过以下方式提供访问令牌 MICROSOFT_ONEDRIVE_ACCESS_TOKEN 环境变量,在中引用 application.yaml:

onedrive:
    access-token: ${MICROSOFT_ONEDRIVE_ACCESS_TOKEN}
  1. VS代码MCP配置:

您可以使用本地JAR文件或Docker在VS Code中配置MCP服务器。创建或更新 .vscode/mcp.json 在VS Code工作区中:

选项1:使用本地JAR

{
    "servers": {
        "onedrive-mcpserver": {
            "type": "stdio",
            "command": "java",
            "args": [
                "-jar",
                "~/onedrive-mcp-server/target/onedrive-mcp-server-0.0.1.jar"
            ],
            "env": {
                "MICROSOFT_ONEDRIVE_ACCESS_TOKEN": ""
            }
        }
    }
}

选项2:使用Docker

{
    "servers": {
        "onedrive-mcpserver-docker": {
            "type": "stdio",
            "command": "docker",
            "args": [
                "run",
                "--rm",
                "-i",
                "-e",
                "MICROSOFT_ONEDRIVE_ACCESS_TOKEN",
                "karthik20/onedrive-mcp-server:0.0.1"
            ],
            "env": {
                "MICROSOFT_ONEDRIVE_ACCESS_TOKEN": ""
            }
        }
    }
}

替换 `` 使用您的Microsoft OneDrive访问令牌。对于本地JAR选项,请确保更新JAR路径以匹配您的本地设置。

建立和运行

地方发展

  1. 构建项目:
mvn clean package
  1. 运行服务器:
java -jar target/onedrive-mcp-server-0.0.1.jar

Docker部署

  1. 构建Docker镜像:
mvn spring-boot:build-image

这将创建一个名为的图像: karthik20/onedrive-mcp-server:0.0.1

  1. 运行容器:
docker run -p 8080:8080 -e ONEDRIVE_ACCESS_TOKEN=your-token karthik20/onedrive-mcp-server:0.0.1

使用MCP客户端进行测试

GitHub Copilot

  1. 在VS代码中安装GitHub Copilot
  2. 配置您的AI设置以使用MCP服务器:
{
    "mcp.server.url": "http://localhost:8080"
}

克劳德桌面

  1. 打开克劳德桌面设置
  2. 使用URL添加新的MCP服务器: http://localhost:8080
  3. 使用内置文件浏览器访问OneDrive文件

可用的MCP工具

1.搜索文件

使用可选文件夹筛选在OneDrive中搜索文件:

public String searchFiles(String fileName, String folder)

2.搜索文件夹

导航和搜索文件夹结构:

public String searchFolderPath(String folderName)

3.列出文件夹内容

列出特定文件夹路径下的所有文件和文件夹:

public String listFolderContents(String folderPath)

返回文件和文件夹信息的JSON数组,包括名称、web URL和路径。文件夹路径可以像“文档/账单”一样嵌套。

测试

运行测试套件:

mvn test

构建于

  • 弹簧靴3.4.4
  • 春季AI 1.0.0-M7
  • Microsoft Graph API
  • JUnit5和Mockito

许可证

此项目根据MIT许可证获得许可-有关详细信息,请参阅许可证文件。

目录标签

目录标签

云存储JavaVS CodeSpring Boot文件管理本地部署AI集成MicrosoftGraphAPISpringBoot

支持客户端

VS Code

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

token

运行时(runtime,运行环境)

Docker

工具数量(toolCount,工具数)

3

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiotoken部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP