Navan 官方 Cursor 插件解析:基于远程 MCP 服务器集成费用、差旅与卡片数据
2026/9/17 20:25:36 网站建设 项目流程

Navan 官方 Cursor 插件解析:基于远程 MCP 服务器集成费用、差旅与卡片数据

【免费下载链接】pluginsCursor plugin specification and official plugins项目地址: https://gitcode.com/GitHub_Trending/plugins125/plugins

本文以 third_party/navan/CHANGELOG.md 的 1.0.0 版本发布记录为核心骨架,结合同插件目录下的 README.md 与 mcp.json,完整讲解 Navan 插件如何通过官方远程 MCP 服务器,让 Cursor 智能体在用户授权范围内查询费用、差旅预订、政策与卡片信息。读完本文,你将掌握该插件的安装方式、MCP 端点配置、OAuth 2.0 认证机制、权限边界与安全模型,以及一套可立即上手的验证与使用策略。

插件定位:为 Agent 接上 Navan 的企业支出数据

Navan 是面向企业的支出管理平台,覆盖费用报销、差旅预订(航班、酒店、地面交通)、政策审批流与企业卡片等场景。Navan 插件把这一整套数据通过官方远程 Model Context Protocol 服务器开放给 Cursor 智能体,使 Agent 能够:

  • 查询费用记录与支出趋势;
  • 分析航班、酒店、地面交通等差旅预订;
  • 询问公司政策、审批流程以及标记/拒绝原因;
  • 查询当前登录 Navan 用户的卡片详情。

从仓库的插件市场索引看,该插件在 .cursor-plugin/marketplace.json 中被登记为navan,源目录为third_party/navan,类别为 Integrations,市场描述为 "Query expenses, travel bookings, policies, and cards.",与插件 README.md 的表述完全一致。

1.0.0 版本发布:从 CHANGELOG 看插件的第一版构成

CHANGELOG.md 记录了插件首个正式版本1.0.0(initial release)的两项核心变更:

  1. Logo:使用 Navan 品牌标识(紫色方块上的白色 "n"),对应仓库中的 assets/logo.png(240×240 的品牌图标),用于插件在市场中的品牌展示。
  2. MCP 服务器:新增navanMCP server,指向官方远程端点https://mcp.navan.com/mcp

第二项是本插件的技术核心——它不内置任何本地数据或解析逻辑,而是以远程 HTTP MCP 服务器的形式,把 Navan 的支出与差旅数据能力直接注入 Agent 的工具集。这一点从插件目录结构也可以印证:整个third_party/navan/目录只包含 mcp.json、README.md、CHANGELOG.md、LICENSE 与 assets 目录,没有技能(skills)、规则(rules)或本地脚本,属于典型的"纯 MCP 接入型"集成插件。

前置条件:管理员必须先在 Navan 侧开启 MCP

在安装并连接插件之前,有一个关键的组织级前置条件:Navan 管理员必须先在组织中启用 MCP。操作路径为:

Navan → Configuration → Integrations → MCP,然后打开开关。

在管理员启用之前,任何 MCP 客户端的连接都会失败。这意味着该插件能否工作不仅取决于本地配置,还取决于组织在 Navan 侧的授权状态——这与后续 OAuth 授权、策略边界构成了完整的三层授权链路。

安装:插件市场搜索与 /add-plugin 两种方式

插件的安装入口在 Cursor 客户端内,与仓库中其他插件的安装方式一致,两种路径任选其一:

  1. 插件市场安装:打开 Cursor Settings → Plugins,搜索Navan,点击Install,随后完成 Navan SSO 登录提示即可。
  2. 命令安装:在聊天框直接运行/add-plugin navan

从仓库视角看,该插件通过 .cursor-plugin/marketplace.json 登记在市场索引中,插件清单本身遵循 schemas/plugin.schema.json 定义的 manifest 规范;scripts/validate-plugins.mjs 会在 CI 校验市场索引中的每个插件目录存在且plugin.json合法。第三方(third_party)插件在仓库中被统一组织在third_party/目录下,navan即其中之一。

MCP 配置:唯一的端点声明

插件的 MCP 配置完整保存在 mcp.json 中,内容如下:

{ "mcpServers": { "navan": { "type": "http", "url": "https://mcp.navan.com/mcp" } } }

要点说明:

  • server 名称navan,作为客户端侧引用该服务器的标识;
  • type 为http,表示这是一个远程 HTTP MCP 服务器,而非本地进程(stdio)类型,客户端需要网络可达该端点;
  • url指向 Navan 官方托管的 MCP 端点https://mcp.navan.com/mcp。注意:该端点由 Navan 官方运营,与插件本身是两套独立部署,插件的职责只是把客户端指向它。

这段配置与 README 中的内联示例完全一致,说明 README.md 与 mcp.json 是同一份配置事实的两处载体:前者面向用户阅读,后者是插件随附的实际配置文件。对于需要手动配置的客户端,可以直接复制上述 JSON 写入客户端侧的mcpServers配置。

认证机制:OAuth 2.0 + SSO,无需任何密钥

Navan MCP 的认证是本文最值得关注的设计之一——它完全不需要 API Key 或 Client ID

  • 认证协议为 OAuth 2.0,对接 Navan 标准的 SSO 登录体系;
  • 第一次发起工具调用时,客户端会打开浏览器窗口,引导用户完成登录并批准所需 scope(范围授权);
  • 会话在使用期间自动续期;
  • 若距离上次认证超过100 天无活跃使用,或距认证时间超过365 天,需要重新登录。

这种"零配置密钥"的认证模型极大降低了插件的接入成本:用户不需要在 Cursor 或插件侧保存任何凭据,凭据的获取、刷新与失效管理全部由 OAuth 流程与 Navan 服务端处理。安装插件时看到的 SSO 登录提示(README 第 3 步)正是该流程的入口。

权限边界与安全模型

Navan MCP 的安全设计以"用户上下文"为边界,README 明确说明了以下行为约束:

  1. 工具调用运行在已登录用户的上下文与角色之下(Employee、Manager、Approver、Finance Admin 等),任何调用都不能超出该用户在 Navan 中的权限范围;
  2. 越权查询返回空结果:当用户无权查看某些数据时,返回空结果并附带403_BY_POLICY注解,而不是泄露数据——这保证了"查询失败"与"数据不存在"在响应中可区分,且不产生数据泄露面;
  3. 不可绕过治理:服务器不能绕过审批流程、政策规则或重复检测(duplicate detection),也无法提升权限;
  4. 全程审计:每一次工具调用都会记录在 Navan 的审计日志中,包含用户身份、客户端名称/版本、工具参数与响应状态。

这套模型意味着:Agent 的能力上限 = 登录用户的 Navan 权限上限。对财务管理员(Finance Admin)类角色,Agent 可覆盖更广的数据面;对普通员工,则仅能触达其自身授权范围内的数据,并且这一边界由服务端强制,而非依赖客户端自律。

使用建议与负载约束

README 对如何高效、合规地使用该插件给出了明确指引,值得作为实操准则:

  • 控制载荷:调用时传具体的日期范围,只筛选自己需要的字段,避免全量拉取;
  • 优先聚合工具:在钻取原始明细行之前,优先使用汇总类工具(例如summarize_spend)获取概览;
  • 负载定位:Navan MCP 并非为高并发或定时(scheduled)批量任务设计,这类场景应改用 Navan 的 REST API。

这提示我们在提示词工程上做配合:例如让 Agent"先给我上个月的支出汇总",比"把所有费用记录逐条列出来"更符合该 MCP 的设计意图,也能显著降低响应延迟与审计噪音。

验证:一条提示词确认连接成功

插件连接是否正确,可以用一个最小化的实测来验证。连接完成后,向 Agent 提问:

"Use Navan to list my five most recent expenses."

如果连接正常,客户端会在几秒内返回结构化表格。如果出现权限提示(permission prompt),直接批准即可——这正是 Navan 的 scope 授权(scoped-consent)流程,属于预期行为而非故障。这个验证用例同时覆盖了"端点可达 + OAuth 完成 + 工具调用 + 数据返回"整条链路。

仓库中的工程化佐证

除了插件自身文档,仓库还提供了若干支撑该插件规范化的工程事实:

  • .cursor-plugin/marketplace.json:以source: "third_party/navan"登记插件,使市场可发现、可安装;
  • schemas/plugin.schema.json:定义了插件 manifest 的 JSON Schema,其中mcpServers字段允许以字符串、内联对象或数组形式声明 MCP 服务器——mcp.json 正是"内联对象"形态的直接落地;
  • scripts/validate-plugins.mjs:批量校验市场索引与各插件 manifest,保证third_party/navan这类目录在发布时满足 schema 约束;
  • LICENSE:该插件以 MIT 协议开源发布。

从源码结构看,可以推断:仓库对third_party/目录下的插件采用与一级插件相同的市场登记与校验流程,Navan 插件因此在可发现性、可安装性与格式合法性上都处于受管状态。

结语

Navan 插件 1.0.0 的发布本质上是"一行端点声明 + 一套 OAuth 认证 + 一份权限契约"的组合:它以远程 HTTP MCP 服务器(https://mcp.navan.com/mcp)为数据通道,以 SSO/OAuth 2.0 为身份层,以用户角色与策略注解为安全边界,让 Cursor 智能体在企业授权范围内完成费用、差旅、政策与卡片的查询分析。对使用者而言,记住三条即可:管理员先开 MCP、首次调用走 SSO 授权、优先用汇总工具控制载荷。

【免费下载链接】pluginsCursor plugin specification and official plugins项目地址: https://gitcode.com/GitHub_Trending/plugins125/plugins

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询