Token导航 LogoToken导航TokenDH.com
Agent365-Bridge logo
开发工具未说明官方级别未说明来源级核验

Agent365-Bridge

MCP Server

一个连接Claude代码与Microsoft Agent365 MCP服务器的代理桥接工具,提供对Outlook邮件、日历、Word、Excel、PowerPoint、Teams、SharePoint、OneDrive等服务的直接访问能力。

工具数

14

提示词数

0

GitHub Stars

9

资源数

0
开发工具TypeScriptClaudeClaude DesktopClaude

安装说明

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

作者 / 组织

ITSpecialist111

提供方

ITSpecialist111

最后核验

2026/5/17 20:20

快速接入

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

详细介绍

Claude Code的365 Bridge代理

连接 克劳德代码Microsoft代理365 MCP服务器 --允许Claude通过企业级MCP工具网关直接访问Outlook邮件、日历、Word、Excel、PowerPoint、团队、SharePoint、OneDrive、副驾驶搜索、知识和用户配置文件数据。

建筑

┌─────────────┐      stdio       ┌──────────────────┐     HTTPS + Auth     ┌─────────────────────────┐
│ Claude Code  │ ◄──────────────► │  MCP Proxy Bridge │ ◄──────────────────► │  Agent 365 MCP Servers  │
│ (CLI / IDE)  │   MCP protocol   │  (this project)   │   StreamableHTTP    │  (Mail, Calendar, Word, │
└─────────────┘                  └──────────────────┘                      │   Teams, SharePoint...) │
                                                                           └─────────────────────────┘

这座桥像一座 本地stdio MCP服务器 Claude Code连接到的。当Claude调用工具时(例如。 createMessage, getEvents),网桥使用Azure Entra ID进行身份验证 委托权限 并将呼叫转发到代表登录用户的适当代理365 MCP服务器。

两层磁盘缓存

Claude Desktop强制执行 5秒超时tools/list 请求:由于发现14台Agent 365服务器需要大约20秒,因此网桥使用两层缓存策略立即为工具提供服务:

sequenceDiagram
    participant User
    participant Login as npm run login
    participant Disk as ~/.agent365-bridge/
    participant Bridge as Bridge Process
    participant Claude as Claude Desktop

    Note over User,Login: One-time setup
    User->>Login: npm run login
    Login->>Login: Device code auth
    Login->>Disk: auth-record.json
    Login->>Login: Discover 14 servers (56 tools)
    Login->>Disk: tools-cache.json

    Note over Bridge,Claude: Every subsequent launch
    Claude->>Bridge: initialize
    Bridge->>Disk: Load tools-cache.json
    Bridge-->>Claude: initialize response
    Claude->>Bridge: tools/list
    Bridge-->>Claude: 56 tools (instant, >Bridge: tools/call SearchMessages
    Note over Bridge: Waits for live discovery if needed
    Bridge-->>Claude: Email results

相容层

网桥会自动修复常见的MCP兼容性问题:

  1. 架构净化:条纹 oneOf, allOf,以及 anyOf 从工具模式(Anthropic API拒绝),尽可能合并属性。
  2. 名称重复数据删除:检测不同服务器上具有相同名称的工具(例如。 GetDocumentContent 在Word和Excel中)并自动为它们命名(例如。 GetDocumentContent_Word)以防止碰撞。

为什么这个项目存在?

虽然微软提供了一套丰富的工具来构建和管理人工智能代理,但目前第三方编码代理(如Claude Code)存在“协议差距”:

  1. 协议转换:Claude Code和大多数本地IDE都说 标准 模型上下文协议(MCP)的方言。然而 代理365工具网关 (企业云后端)发言 流式HTTP该项目充当必要的协议转换器。
  2. 进入“综合劳动力”代理365被设计为新一代自主代理的控制平面。这座桥允许Claude利用相同的基础设施,为第三方LLM提供与微软第一方代理使用的企业治理工具相同的工具。
  3. 行动胜于搜索:与纯语义搜索工具(如WorkIQ)不同,此桥侧重于 确定性行为。它公开了用于邮件、Excel、Word和团队的细粒度工具服务器,允许Claude操纵数据,而不仅仅是查找数据。
  4. 开发者优先认证:它将复杂的“Frontier Preview”和“StreamableHTTP”身份验证握手简化为一个正常工作的标准MCP登录流。

状态

生产测试和工作 --已成功验证并发现来自Microsoft Agent 365 MCP服务器的20多个工具(邮件、Excel、知识等已确认)。

先决条件

要求目的
Node.js≥18运行时间
Claude 代码命令行界面MCP客户端
前沿预览需要代理365访问权限(在这里注册)
Azure AD应用程序注册身份验证(请参阅下面的设置指南)
A365气候 (可选)代理注册和模拟服务器--需要 .NET 8+

______________________________________________________________________

安装指南

步骤1:安装和构建

git clone https://github.com/ITSpecialist111/Agent365-Bridge.git
cd Agent365-Bridge
npm install
npm run build

______________________________________________________________________

步骤2:创建Azure AD应用程序注册

您需要Azure AD应用程序注册才能在Agent 365平台上进行身份验证。按照以下步骤操作 Azure 门户:

2a。注册应用程序

  1. 导航至 微软Entra ID应用程序注册新注册
  2. 填写详细信息:

- 名字: Agent365-Claude-Bridge (或您喜欢的任何名称) - 支持的帐户类型: _“仅此组织目录中的帐户”_ (单租户) - 重定向URI:留空

  1. 点击 注册

2b。收集所需的详细信息

从应用程序注册 概述 第页,复制这两个值:

字段在哪里可以找到它.env 变量
目录(租户)ID概述页面,顶部AZURE_TENANT_ID
应用程序(客户端)ID概述页面,顶部AZURE_CLIENT_ID

2c。创建客户端密钥 _(可选--仅服务器部署)_

注: 如果您仅使用默认的Claude Code/Claude Desktop 设备代码 登录流程,您可以 完全跳过此步骤设备代码流是公共客户端流,不需要客户端密钥。 只有在以下情况下才需要客户机密: - 将网桥部署为 HTTP服务器 代表(OBO)授权(AUTH_MODE=obo) - 使用 应用程序权限 具有客户端凭据(AUTH_MODE=client_credentials)
  1. 首选 证书和秘密 (左侧边栏)
  2. 点击 新客户机密
  3. 输入描述(例如。 Agent365 Bridge)并选择一个有效期
  4. 点击 添加
  5. 立即复制“值” --这是你的 AZURE_CLIENT_SECRET
⚠️ 秘密值只显示一次。如果你丢失了它,你需要创建一个新的。

2d。添加API权限

  1. 首选 API权限 (左侧边栏)
  2. 点击 添加权限我的组织使用的API
  3. 搜索 代理365工具 (或应用程序ID ea9ffc3e-8a23-4a7d-836d-234d7c7565c1)
  4. 选择 委托权限 并添加所需的范围:
权限描述
McpServers.Calendar.All日历MCP服务器
McpServers.CopilotMCP.All副驾驶MCP服务器
McpServers.DASearch.AllM365副驾驶代理目录
McpServers.Dataverse.AllBLOCKMCP服务器
McpServers.Excel.AllExcel MCP服务器
McpServers.Files.AllODSP文件工具MCP服务器
McpServers.Knowledge.All知识MCP服务器
McpServers.Mail.All邮件MCP服务器
McpServers.Me.AllMe MCP服务器(用户配置文件)
McpServers.OneDriveSharePoint.AllOneDrive和SharePoint MCP服务器
McpServers.PowerPoint.AllPowerPoint MCP服务器
McpServers.SharepointLists.AllSharePoint列出MCP服务器
McpServers.Teams.All团队MCP服务器
McpServers.Word.AllWord MCP服务器
  1. 点击 授予\[您的组织\]管理员同意 (顶部蓝色按钮)
  2. 验证每个权限是否显示绿色✅ 选中下面的复选标记 状态

2e。启用公共客户端流

这是 必需的 对于设备代码登录流程:

  1. 首选 认证 (左侧边栏)
  2. 滚动到 高级设置 在底部
  3. “允许公共客户端流”
  4. 点击 保存

______________________________________________________________________

步骤3:配置 .env 文件

创建一个 .env 使用您的凭据在项目根目录中创建文件:

# Azure Entra ID Authentication
AZURE_TENANT_ID=your-directory-tenant-id
AZURE_CLIENT_ID=your-application-client-id

# Client secret — only needed for OBO (server) or client_credentials mode.
# For the default Device Code flow (Claude Code / Claude Desktop), leave this blank or omit it.
# AZURE_CLIENT_SECRET=your-client-secret-value

# Agent 365 Configuration
MCP_PLATFORM_ENDPOINT=https://agent365.svc.cloud.microsoft
MCP_PLATFORM_AUTHENTICATION_SCOPE=ea9ffc3e-8a23-4a7d-836d-234d7c7565c1/.default

# Runtime
NODE_ENV=development

______________________________________________________________________

步骤4:登录(一次)

登录Microsoft 365并缓存您的凭据:

npm run login

系统将提示您访问一个URL,然后将发现并缓存工具:

Agent 365 Bridge — Sign In & Setup

Step 1: Sign in to Microsoft 365
[agent365-bridge] SIGN IN REQUIRED
[agent365-bridge] Go to: https://microsoft.com/devicelogin
[agent365-bridge] Enter code: XXXXXXXX

✅ Authentication successful!
   Credentials cached at: ~/.agent365-bridge/auth-record.json

Step 2: Discovering Agent 365 MCP servers...

✅ Discovered 56 tools across 14 servers

🎉 Setup complete!
   Claude Desktop will now load all tools instantly.

要完成登录,请执行以下操作:

  1. 打开 https://microsoft.com/devicelogin 在浏览器中
  2. 输入终端显示的代码
  3. 使用您的账号登录 Microsoft 365帐户
  4. 等待工具发现完成(约20秒)
注: 这只需要做一次。凭据和工具列表都缓存到磁盘上。令牌在后续启动时自动刷新。跑 npm run logout 清除缓存的凭据。

______________________________________________________________________

步骤5:在Claude Code/Claude Desktop注册

对于 克劳德代码 (CLI):

npm run register

这将在Claude Code中将网桥注册为全局MCP服务器。在此之后,Agent 365工具可用于 任何 克劳德代码会话。

对于 克劳德桌面版,将网桥添加到配置文件中(%APPDATA%\Claude\claude_desktop_config.json):

{
  "mcpServers": {
    "agent365-bridge": {
      "command": "node",
      "args": ["C:/path/to/your/Agent365/dist/index.js"]
    }
  }
}

______________________________________________________________________

步骤6:使用克劳德代码

打开克劳德代码——代理365工具将自动出现。尝试:

> Search my Outlook inbox for emails about the Q4 report
> Create a new Word document summarizing the project status
> List my upcoming calendar events for this week
> Post a message in the Engineering team channel
> Find files in SharePoint related to the budget
> Create an Excel workbook with monthly revenue data

______________________________________________________________________

______________________________________________________________________

通用MCP支持(克劳德桌面和其他)

这座桥符合 模型上下文协议(MCP) 规范,意味着它可以与 任何 MCP兼容客户端,而不仅仅是Claude Code CLI。

添加到克劳德桌面(Windows/Mac)

要在Claude Desktop应用程序中使用Agent 365工具,请执行以下操作:

  1. 打开配置文件:

- 视窗: %APPDATA%\Claude\claude_desktop_config.json - 苹果电脑: ~/Library/Application Support/Claude/claude_desktop_config.json

  1. 添加网桥配置:
{
  "mcpServers": {
    "agent365-bridge": {
      "command": "node",
      "args": [
        "C:/path/to/your/Agent365/dist/index.js"
      ]
    }
  }
}
备注:更新路径以匹配您克隆此存储库的位置。
  1. 重新启动克劳德桌面。工具将出现在🔌 菜单。

______________________________________________________________________

可用的MCP服务器

网桥连接到所有13个Agent 365 MCP服务器:

服务器作用域描述
Outlook邮件McpServers.Mail.All阅读、撰写、发送、搜索和管理电子邮件
Outlook日历McpServers.Calendar.All创建、查看、更新和管理日历事件
McpServers.Word.All创建和阅读Word文档,添加评论
ExcelMcpServers.Excel.All创建工作簿,管理电子表格
幻灯片McpServers.PowerPoint.All创建和修改演示文稿
团队McpServers.Teams.All聊天、频道和消息操作
OneDrive和SharePointMcpServers.OneDriveSharePoint.All文件上传、搜索和元数据
SharePoint列表McpServers.SharepointLists.All列表和项目CRUD操作
复制品搜索McpServers.CopilotMCP.All基于人工智能的M365数据搜索
知识McpServers.Knowledge.All联合知识检索
用户档案McpServers.Me.All个人资料、经理、直接下属、用户搜索
文件McpServers.Files.AllODSP文件工具操作
代理目录McpServers.DASearch.All复制代理目录搜索
数据宇宙McpServers.Dataverse.All用于Dataverse的CRUD操作、FetchXML和Web API
文件McpServers.Files.AllODSP文件工具操作

______________________________________________________________________

Agent 365 Bridge与Microsoft WorkIQ

虽然此桥将Claude连接到核心Agent 365基础设施 动作和编排,微软还提供 工作智商,M365的“智能层”。

功能代理365网桥(此项目)Microsoft WorkIQ
首要目标行动与自动化:发送邮件、创建文档、更新日历。背景与情报:“总结我关于X的会议”,“Sarah说了什么?”
数据范围13+粒度M365服务(Word、Excel、Teams等)跨邮件、Teams和SharePoint的联合搜索。
认证自定义应用程序注册(默认情况下为设备代码,不需要客户端密码)。Microsoft管理的应用程序(需要一次性租户管理员同意)。
设置模式远程HTTP网关的本地代理。本地stdio服务器。

两者结合使用

为了获得最佳体验,我们建议在Claude中并排运行两台服务器。这给了克劳德“手”(桥)和“大脑”(WorkIQ)。

Claude桌面配置(%APPDATA%/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "agent365-bridge": {
      "command": "node",
      "args": ["C:/Path/To/Agent365-Bridge/dist/index.js"]
    },
    "workiq": {
      "command": "npx",
      "args": ["-y", "@microsoft/workiq", "mcp"]
    }
  }
}
\[!注意\] WorkIQ目前处于公开预览阶段。有关设置说明和管理员同意的详细信息,请访问 官方WorkIQ存储库.

身份验证模式

模式何时使用配置客户端密码?
设备代码 (默认)克劳德代码/具有委托权限的桌面设置 AZURE_TENANT_ID + AZURE_CLIENT_ID --公共客户端流
客户端凭证应用程序类型权限(无头)添加 AUTH_MODE=client_credentials + AZURE_CLIENT_SECRET
海外建筑运营管理局(代表)HTTP服务器部署(Copilot Studio)添加 AUTH_MODE=obo + AZURE_CLIENT_SECRET
持有者令牌使用预先获取的令牌进行测试设置 BEARER_TOKEN.env没有
模拟不使用Azure的本地开发端点设置为 localhost没有

项目结构

├── src/
│   ├── index.ts                    # Entry point
│   ├── auth/
│   │   ├── token-provider.ts       # Device Code / Client Secret / Bearer auth
│   │   └── token-cache.ts          # JWT token caching with auto-refresh
│   ├── config/
│   │   ├── configuration.ts        # Loads .env + ToolingManifest.json
│   │   └── types.ts                # TypeScript interfaces
│   ├── discovery/
│   │   └── server-discovery.ts     # Discovers MCP servers (manifest or gateway)
│   └── proxy/
│       ├── mcp-proxy-server.ts     # stdio MCP server for Claude Code
│       └── tool-forwarder.ts       # Forwards tool calls to remote servers
├── scripts/
│   ├── setup.ts                    # Interactive setup wizard
│   ├── register-claude.ts          # Registers bridge with Claude Code CLI
│   └── start-mock.ts              # Starts mock server for development
├── ToolingManifest.json            # Declares 13 available MCP servers
├── .mcp.json                       # Claude Code project-level MCP config
├── .env.example                    # Environment variable template
├── package.json
└── tsconfig.json

npm脚本

脚本描述
npm run build将TypeScript编译为 dist/
npm run dev使用ts节点运行(开发)
npm run start运行编译后的输出
npm run setup交互式设置向导
npm run login登录M365并缓存凭据(一次性)
npm run logout清除缓存的凭据
npm run register使用Claude Code CLI注册网桥
npm run mock启动模拟服务器+注册
npm run clean删除 dist/ 目录

故障排除

错误原因修复
Access denied by Frontier access control租户未注册Frontier预览在此处注册
Scope 'McpServers.X.All' is not present未添加或未同意API权限在Azure门户中添加权限→ 授予管理员同意
Application not found in directory应用程序注册的租户ID错误请检查应用程序概述页面上的目录(租户)ID
AADSTS7000218: request body must contain client_assertion未启用公共客户端流在身份验证设置中将“允许公共客户端流”设置为“是”
Scope doesn't exist on the resource清单作用域名称与Azure API更新不匹配 ToolingManifest.json 作用域名称或用途 /.default
No authentication configured中缺少凭据 .env添加 AZURE_TENANT_IDAZURE_CLIENT_ID.env
工具未出现在Claude Desktop中令牌未缓存/超时运行 npm run login 首先,然后重新启动Claude Desktop
Request timed out 在MCP日志中设备代码登录时间过长运行 npm run login 先在终端中进行一次性设置

参考文献

免责声明

认证与责任:这个项目是一个开源桥梁,不是微软的官方产品。它使用您自己的Azure AD应用程序注册,并在登录用户的上下文中运行。您负责管理客户机密和令牌的安全性。此存储库的维护人员对使用此软件而导致的任何数据丢失、安全漏洞或意外费用不承担任何责任。使用风险自负。

目录标签

目录标签

开发工具TypeScriptClaude企业级自动化本地部署微软365集成协议转换企业办公

支持客户端

Claude DesktopClaude

接入字段

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

未说明

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

token

工具数量(toolCount,工具数)

14

资源数量(resourceCount,资源数)

0

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

0

权限和风险

未说明token部署方式未说明

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

安装前确认

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

仍需确认:installCommand

来源信息

继续浏览同类 MCP