简介

以下是为新加坡一家房地产集团的法务运营团队,用 ToolJet MCP 构建合同义务审查应用的方法。该应用把每份合同 PDF 与其提取出的义务并排展示,并在一处跟踪条款、行动截止日期、评论和审批记录。一个智能体将其生成为结构化的 ToolJet 应用,数据、查询和界面保持在一起,因此团队运行和编辑的是一个真实的应用,而不是维护一份代码交付物。本文逐一介绍各个界面、表格和构建过程,并给出整合后的提示词,让你能一次性复现。

Build a contract obligations review app with ToolJet MCP, the finished application: Review: the executed lease beside the obligations extracted from it, each with an owner, last day to act and notice window, plus comments and the approval record

审查:已签署的租约与其提取出的义务并排展示,每项义务都有负责人、行动截止日和通知窗口,外加评论和审批记录

Build a contract obligations review app with ToolJet MCP, the finished application: Obligations calendar: open obligations by last day to act, flags for items inside their notice window, a month view and commitments per owner

义务日历:按行动截止日列出未完成的义务,对处于通知窗口内的条目加标记,提供月视图和每位负责人的承诺

Build a contract obligations review app with ToolJet MCP, the finished application: Contract register: every contract with its counterparty, business owner, status, expiry and next act-by date

合同登记册:每份合同及其交易对手、业务负责人、状态、到期日和下一个行动截止日

Build a contract obligations review app with ToolJet MCP, the finished application: Add obligation: clause, PDF page, category, owner, deadline, notice period, recurrence and status for a new obligation

添加义务:为新义务填写条款、PDF 页码、类别、负责人、截止日期、通知期、重复周期和状态

我们要构建什么

审查页面把合同 PDF 放在一侧,义务表格放在另一侧,让条款文本和提取出的职责保持同时可见。点击某一行会让 PDF 跳转到来源条款并高亮该段落。评论面板跟随所选义务,审批时间线位于审查面板下方,因此合同打开期间决策历史始终可见。日历页面按负责人对行动日期分组,登记册页面为更广泛的项目组合提供搜索、类型、状态和物业筛选。

  • PDF 与义务并排,支持条款级跳转和高亮
  • 每项义务的评论,配只追加的审批时间线
  • 按业务负责人分组的日历,带行动截止日
  • 可搜索的合同登记册,带类型、状态和物业筛选
  • 面向法律审查人、负责人和总法律顾问的角色感知审查流程

用 ToolJet MCP 构建合同义务审查应用跟练

想自己动手构建?从ToolJet MCP 仓库开始有关设置说明、支持的智能体以及你跟进所需的一切。

整合后的构建提示词

这次构建经过了好几轮才把页面、数据模型和审核流程定下来。需求被整合成了一条本可以从一开始就使用的提示词,这样你就能一次性复现这个应用。

在 ToolJet 中为一家新加坡商业地产集团的法务运营团队构建一个 3 页的合同义务审查应用,该集团管理着数百份租赁和供应商协议。

在合适的地方使用顶部导航和 ToolJet 原生组件。让界面感觉像瑞士网格风格下安静的机构法务门户,包含浅色和深色模式、浅色背景、深石板色文字、细微边框、深海军蓝点缀、无阴影、无圆角、紧凑的双栏布局、紧凑字体、加粗表头,以及大写的等宽字体条款标签。

将应用存储在 ToolJet DB 中,使用六clr_张表:clr_people,clr_contracts,clr_documents,clr_obligations,clr_obl_comments,以及clr_approval_log。填充一个真实感的新加坡虚构资产组合,包含约 14 份租赁和供应商合同,以及约 80 项义务,其中一些带有 90 天通知期。

使用已登录用户的电子邮件来确定角色。法务审查员可以添加和编辑义务、评论,并将合同提交给总法律顾问。业务负责人只能看到他们拥有的合同和义务。只有总法律顾问可以批准,并且合同只有在批准后才会变为 Active。在服务端将写查询限制给正确的用户,决策查询仅限总法律顾问。

审查页面在义务表格旁显示合同 PDF。点击某项义务会让 PDF 跳转到来源条款并高亮显示。当不存在真实 PDF 时,根据条款文本生成一个。每项义务都有自己的评论线程。在模态框中添加和编辑义务。在义务下方,以时间线形式显示批准历史。历史是仅追加的,记录每次提交、审查备注和决策,并包含姓名、角色和时间戳。总法律顾问可以批准或请求更改。批准会将当前义务冻结为一个带编号的版本。此后任何添加或编辑都会作为针对该版本的修订被记录,并在该行上打上标签。

义务日历显示最后行动日期,即截止日期减去通知天数。展示一个月历和按业务负责人分组的议程,并附每位负责人的摘要。标记逾期事项、处于通知窗口内的事项,以及 30 天内到期的事项。可按负责人、时间范围筛选,以及选择仅显示需要行动的事项或仅显示通知义务。

合同登记册是一个可搜索的可见合同表格,可按类型、状态和属性筛选。显示编号、对方、业务负责人、状态、到期日和下一个行动截止日期,并带有一个按钮,可在 Review 页面打开该合同。

ToolJet MCP 如何构建应用

ToolJet MCP 作用于整个应用,而非单个屏幕:数据模型、查询、组件树以及它们之间的连接,都会作为一个结构化的 ToolJet 应用落地。企业应用构建并不止于界面,数据连接、工作流、权限、部署和持续变更才是剩下的工作,而生成的应运行在运行时之上,在支持的情况下承载这些内容,而不是交给团队一个需要自己运维的代码库。路径始终开放,因此可以先 AI 生成,再可视化编辑,最后在需要条款跳转或冻结版本规则时编写代码。

唯一出问题的地方

Review 页面最初显示“No contract”,尽管合同选择器和义务列表已经加载。PDF 查看器绑定到了一个对象字面量,ToolJet 将其解析为空对象,因此该面板没有文档数据,直到绑定被修正。

创建的数据

该应用最终有六张表。clr_people存储人员和角色,clr_contracts跟踪每份协议及其当前状态,clr_documents保存条款文本和可选的 PDF 链接,clr_obligations记录每项义务,clr_obl_comments存储审阅者评论,以及clr_approval_log保存仅追加的审批历史和冻结的已批准版本。

页面 组件 它们涵盖的内容
Review 38 合同选择器和操作、带条款高亮的 PDF 查看器、义务表格、每项义务的评论、审批时间线、添加/编辑义务和审批步骤的模态框
义务日历 11 负责人、时间范围和显示筛选器、图例、月历、按负责人分组的议程和每位负责人的摘要
合同登记册 6 类型、状态和属性筛选器,以及一个可搜索的合同表格,包含下次行动截止日期和一个 Review 按钮

生成了什么

指标 结果
页面 3
ToolJet DB 表 6
查询 28
组件 55
需要维护的代码文件 0
修复周期 1

适用行业

商业和零售地产集团、REITs 和房东、设施管理公司,以及任何跟踪租赁和供应商义务的法律运营或合同管理团队,例如续约选项、通知期、报告义务和付款里程碑,涉及数百份协议。

谁可以访问构建好的应用

按当前构建,角色来自登录用户在应用自身人员表中的电子邮件。法律审核人员和总法律顾问可以查看所有合同、添加和编辑义务、对其发表评论并提交合同以供审批。只有总法律顾问可以批准或要求修改。业务负责人只能看到自己拥有的合同和义务。写入查询在服务端被限制为指定用户:法律查询仅限总法律顾问和一名法律审核人员,审批决定查询仅限总法律顾问。已创建三个工作区组(Legal Reviewers、General Counsel 和 Business Owners),但尚无成员。在生产环境中,请向这些组添加成员,并将查询权限转移到这些组上。

自托管 ToolJet:开源、本地部署和隔离网络部署

合同义务审查应用通常需要处理不能离开你网络的数据,而 ToolJet 允许你在自己控制的基础设施上运行整个平台,而不是供应商云。社区版和企业版都可以本地部署,并且为无互联网访问的环境提供隔离网络部署。

租赁条款、交易对手详情和审批历史都位于法律运营应用内,因此将运行时保留在公司基础设施上,可以为安全和 IT 审查人员提供更清晰的控制边界。

Two cards: ToolJet self-hosting targets (Docker, Kubernetes, clouds) and isolation options: AGPL, on-premise, air-gapped

自托管 ToolJet:开源、本地部署和隔离网络部署

部署选项:Docker、Kubernetes 和主流云平台

ToolJet 的自托管设置指南涵盖了在你自己的环境中运行它的常见方式:

  • Docker Compose 部署:在单台服务器上运行 ToolJet,可选配 Terraform 脚本,先在 AWS、Azure 或 GCP 上预置一台 VM。
  • Kubernetes 部署:在你自己的集群上运行 ToolJet,提供针对 EKS、GKE、AKS、Helm 和 OpenShift 的专门指南。
  • 你自己的 PostgreSQL:ToolJet 将应用定义、加密的数据源凭据和用户身份验证数据存储在你自行管理的 PostgreSQL 数据库中。

开源核心版与气隙企业版部署

  • GitHub 上的开源社区版:ToolJet 仓库基于 GNU Affero General Public License v3.0(AGPL)发布,因此你的团队可以审查代码并自行托管社区版。
  • 气隙部署:在完全隔离、无外部网络访问的环境中运行 ToolJet,已列于ToolJet Enterprise 方案。
  • ToolJet AI Enterprise:在你自己的环境中部署 AI 服务器镜像,使 AI 请求在你的服务器上处理,适合私有云和气隙环境。

自托管让 Contract Obligations Review 应用、其数据及其凭据都留在你的团队已经治理的网络和安全边界之内,而自托管的社区版可以在你需要企业功能时升级到企业版。

为你的 Contract Obligations Review 应用提供的企业功能

合同审查应用会保存租约条款、交易对手详情和审批历史。ToolJet 在平台层覆盖这种治理,因此你只需配置一次,而无需在每个应用中重建。

  • SSO 和 SCIM:通过以下方式登录SAML、OIDC 或 LDAP,并自动预置用户
  • 基于角色的访问控制:限定权限到应用、数据源和每个查询
  • 审计日志:跟踪每一次登录、编辑和审批决定,用于合规审查
  • 气隙部署:自行托管在Docker或 Kubernetes 上,让你的数据留在你的网络中
  • 多人协作编辑:多名构建者共同处理同一个应用,支持版本控制和Git 同步
  • 在你自己的部署中使用 ToolJet AI:在你的租户内运行 AI 功能,而不是使用共享服务

ToolJet Workflows 增加了通知层。当一个合同提交给 General Counsel 时,一个工作流会触发,在 Slack 中发布审查请求,通过 Gmail 向业务负责人发送邮件,并将决定写回clr_approval_log。

最终要点

这个构建展示了一个法律运营应用,它将合同 PDF、义务清单、评论和审批轨迹保存在同一条记录中,而登记册和日历则处理更广泛的项目组合。这很重要,因为生成的结果是一个真实的 ToolJet 应用,所以团队可以继续编辑同一个应用,而不必接管一个代码库。有用的权衡在于视觉编辑与更深层代码之间的交接,当条款跳转或版本规则需要时。运行时在支持的地方承载数据和工作流部分,这使应用在合同和审查规则变化时保持可编辑。

试用 ToolJet MCP

使用你自己的合同数据,通过 ToolJet MCP 构建一个合同义务审查应用,然后请求一个ToolJet 演示来映射你的审查流程。

常见问题

这个应用中的 ToolJet MCP 是什么?

ToolJet MCP 是一种构建路径,让智能体根据书面规范创建 ToolJet 应用。对于这个应用,结果将 PDF、义务、评论和审批历史与同一条合同记录绑定,因此审查保持在一个工作区内。

是什么让这个应用对法律运营有用?

该应用将 PDF 和提取的义务并排保存,因此审查者可以从条款文本转到评论而不改变上下文。日历和登记册在同一工作区中增加了截止日期跟踪、负责人筛选和项目组合搜索。

我能根据本文中的提示重现这个应用吗?

可以。本文中的提示将完整规范整合为一次运行,因此你可以重新创建应用,而不必逐件重建需求。这为你提供了一个可以在自己的构建会话中复用的单一出发点。

我需要编写代码来更改应用吗?

常见更改不需要。你可以通过视觉方式编辑布局、表格、筛选器和审查流程,然后在条款跳转或审批规则需要时进入代码。这样可以将快速编辑保留在界面中,将更深层逻辑放在正确的位置。

我可以把这个应用连接到现有的合同数据吗?

这个构建使用 ToolJet DB。如果合同、文档、义务、评论和审批记录能够干净地对齐,同样的结构可以映射到现有数据源,因此你可以在不改变应用结构的情况下接入自己的记录。

智能体完成后会发生什么?

你会保留一个真正的 ToolJet 应用,而不是一堆代码。运行时会在支持的地方保留数据连接、工作流组件和角色规则,因此后续的更改会更新应用,而不是从头重新开始构建或重写审查流程。

多个人可以在同一个应用上协作吗?

可以。一个人可以调整审查界面,另一个人可以调整日历或登记册,而共享的应用结构会让合同记录和审批轨迹保持一致。这样不同的人就可以在同一个应用中协作,而不会把记录拆分开。