关于 Ebenova Scope Guard - AI Contract Scope Violation Detector
Ebenova Scope Guard 是 Signova 平台中的合同范围分析工具,可检测客户请求是否超出约定范围,并生成变更单相关内容。它面向自由职业者、代理机构和小型企业;平台还提供法律文档生成及其他 MCP 服务。
主要功能
- 01检测合同范围外的请求
- 02生成变更单相关内容
- 03提供法律文档起草 MCP 服务
- 04提供商业分析与合同分析工具
适用场景
- 01评估客户新请求是否超出合同范围
- 02为范围变更准备变更单
- 03从 AI Agent 使用法律文档工具
- 04通过工具分析合同与业务信息
MCP 相关
Signova 提供法律文档、商业与合同分析、范围检测等 MCP 服务,另有 HTTP MCP 端点。Scope Guard 服务向 AI Agent 提供范围检测和变更单生成工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
2收录的工具列表 · 更新于 3 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| inputSchema | object | 是 | |
| inputSchema.contract_text | string | 是 | 完整合同文本(至少 50 个字符) |
| inputSchema.client_message | string | 是 | 要分析是否存在范围违规的客户消息 |
| inputSchema.communication_channel | enum | 否 | 收到消息的渠道email | whatsapp | slack | sms | other |
详细介绍
Signova — AI 驱动的法律文档平台
getsignova.com · ebenova.dev · api.ebenova.dev
Signova 利用 AI 生成专业的法律文档、合同、发票和合规报告,面向需要法律保障、又不想支付律师费的自由职业者、代理机构和小型企业。
概览
Signova 使用单一代码库提供三种服务:
- 面向消费者的 Web 应用,位于
getsignova.com— 按文档付费生成、兑换促销码、收集购买者信息 - 开发者平台,位于
ebenova.dev+api.ebenova.dev— 提供订阅制 API,支持密钥、使用情况跟踪和 Stripe 计费 - MCP 服务 — Model Context Protocol 服务,向 AI Agent(Claude Desktop、Cursor 等)提供相同的法律、洞察和范围工具
该平台可生成 34 种文档(保密协议、合同、录用函、隐私政策、发票、变更单等),并根据司法管辖区进行起草,覆盖加拿大(PIPEDA + 魁北克第 25 号法律)、美国(CCPA/CPRA + 各州隐私法)、英国(UK GDPR)、欧盟(GDPR)、尼日利亚(NDPA 2023)、南非(POPIA)、肯尼亚(DPA 2019)和加纳(DPA 2012),并通过 Anthropic Claude 实现地理位置感知的货币检测和本地化起草。
在线网址
| 服务 | URL |
|---|---|
| 消费者网站 | https://www.getsignova.com |
| 开发者网站 | https://www.ebenova.dev |
| API 基础 URL | https://api.ebenova.dev |
| OpenAPI 规范(文件) | openapi.yaml |
架构
Browser / AI Agent
│
▼
Vercel Edge (vercel.json routing + redirects)
│
├─ Static SPA: Vite build of src/ → React 19 + React Router 7
│
└─ Serverless: api/*.js (Node.js functions)
│
├─ Upstash Redis (API keys, usage, promo state, rate limits)
├─ Anthropic Claude (document generation, scope analysis)
├─ Stripe (consumer checkout + API subscriptions)
├─ Resend (transactional email, waitlist, receipts)
├─ Paystack / OxaPay (Africa + crypto payments)
└─ Groq (fast previews, insight drafts)
部署在 Vercel 上(项目 signova,所有者 ebenovasolu-5755s-projects)。在 vercel.json 中定义的定时任务会调用 /v1/insights/poll(每 15 分钟)和 /api/cron/ots-upgrade(每 2 小时)。
技术栈
| 层级 | 技术 |
|---|---|
| 前端 | React 19、Vite 7、React Router 7、Phosphor Icons |
| 后端 | Vercel Serverless Functions(Node.js、ESM) |
| 验证 | Zod 3 |
| 数据 | Upstash Redis(无服务器 REST) |
| AI | Anthropic Claude(主要)、Groq(预览/草稿) |
| 支付 | Stripe(主要)、Paystack(NGN)、OxaPay(加密货币)、Flutterwave |
| 电子邮件 | Resend |
| 分析 | Vercel Analytics、Vercel Speed Insights |
| MCP | @modelcontextprotocol/sdk |
| 测试 | Vitest、@testing-library/react、jsdom |
功能
文档生成
- 34 种文档类型:保密协议、自由职业/服务/咨询协议、雇佣录用函、隐私政策、服务条款、发票、变更单、范围分析等
- 面向加拿大、美国(考虑州级差异)、英国、欧盟、尼日利亚、南非、肯尼亚和加纳进行司法管辖区感知的起草
- 由 Groq 驱动的免费预览(
api/generate-preview.js),以及在付款验证后由 Claude 生成的高级版内容(api/generate.js、api/v1/documents/generate.js) - 将对话提取为文档(
api/v1/extract/conversation.js)
促销系统
促销码可绕过付款,解锁一份免费文档。状态存储在 Upstash Redis 中(promo_uses:CODE 计数器、promo_ratelimit:IP 按 IP 计算的每小时限流器)。IP 速率限制:每小时 5 次尝试。所有代码均在 api/promo-redeem.js 中定义。
| 代码 | 说明 | 最大使用次数 | 到期日 |
|---|---|---|---|
SIGNOVA10 | 通用折扣 | 500 | 2026-12-31 |
OLUMIDE | 创始人专用(可无限测试) | 9,999 | 2027-12-31 |
AFRICA | Taryl 非洲创始人社区 | 1,200 | 2026-12-31 |
KREDO | Kredo 合作伙伴计划 | 20 | 2026-12-31 |
MEST2026 | MEST 届学员 | 100 | 2026-12-31 |
CCHUBNIG | CcHUB Nigeria | 200 | 2026-12-31 |
BAOBAB26 | Baobab Network 届学员 | 80 | 2026-12-31 |
ACCLAFRICA | Accelerate Africa 届学员 | 50 | 2026-12-31 |
TEF2026 | Tony Elumelu Foundation | 1,000 | 2026-12-31 |
ROSEMARY | 单次使用促销码 | 10 | 2026-12-31 |
账单(Stripe)
- 消费者按文档付费结账(
api/stripe-checkout.js、api/stripe-verify.js、api/stripe-webhook.js) - API 订阅方案:Starter $29、Growth $79、Scale $199(
api/v1/billing/checkout.js) - Insights 附加方案:Starter $49、Growth $99、Scale $249 — 已启用的商业功能
- Stripe 客户门户(
api/v1/billing/portal.js)、Webhook 处理程序(api/v1/billing/webhook.js) - Scope Guard Pro 结账(
api/scope-guard-checkout.js)— 已启用的商业功能
MCP 服务
三个第一方 MCP 服务位于 mcp-servers/ 下:
| 服务 | 用途 |
|---|---|
mcp-servers/legal-docs | 面向 AI Agent 的文档起草工具(NDA、合同、发票、变更单) |
mcp-servers/insights | 商业智能/合同分析工具 |
mcp-servers/scope-guard | 范围蔓延检测和变更单生成 |
每个服务都有自己的 package.json、server.json 和 Dockerfile,并独立发布到 npm/MCP 注册表/Smithery/Glama。
网站本身还通过 api/mcp.js 提供 HTTP MCP 端点。
API 身份验证
/v1/* 下经过身份验证的端点使用两种不同的凭据:
- Bearer API 密钥(
Authorization: Bearer sk_live_...)— 根据 Upstash Redis 验证的终端用户密钥,使用lib/api-auth.js。用于文档生成、提取、范围、vigil、合同、insights、发票。 - 管理员/设置密钥(
EBENOVA_ADMIN_SECRET)— 限制对/v1/keys/create的访问,确保只有运营人员才能创建新的客户密钥。ADMIN_API_TOKEN同样限制对/v1/admin/revenue的访问。BYPASS_ADMIN_SECRET限制对api/create-bypass.js的访问。CRON_SECRET/POLL_CRON_SECRET用于验证 Vercel cron 调用。
Redis 会按密钥执行速率限制和每月文档数量上限。
注意:目前没有可用的
/docsHTML 端点。请直接通过openapi.yaml使用 OpenAPI 规范。
本地开发
先决条件
- Node.js 20+(ESM)
- Upstash Redis 数据库(免费套餐)
- Anthropic API 密钥
- Stripe 账户(仅在测试付费流程时需要)
- Resend API 密钥(可选,用于电子邮件)
设置
git clone <repo-url>
cd signova
npm install
cp .env.example .env
# edit .env with your keys
脚本
npm run dev # Vite dev server
npm run build # Production build
npm run preview # Preview built SPA
npm run lint # ESLint
npm test # Vitest
npm run test:coverage # Vitest with coverage
npm run check:css # Validate CSS design tokens
npm run keygen # Generate API/admin secrets
在本地运行无服务器 api/ 函数需要 Vercel CLI:
npm i -g vercel
vercel dev
环境变量
完整模板请参阅 .env.example。
必需(核心)
| 变量 | 用途 |
|---|---|
ANTHROPIC_API_KEY | 主要 AI 生成 |
UPSTASH_REDIS_REST_URL | Redis REST URL |
UPSTASH_REDIS_REST_TOKEN | Redis 身份验证令牌 |
EBENOVA_ADMIN_SECRET | 保护 /v1/keys/create |
PROMO_SECRET | 用于签名促销令牌的 HMAC 密钥 |
Stripe(付费流程必需)
| 变量 | 用途 |
|---|---|
STRIPE_SECRET_KEY | Stripe API |
STRIPE_WEBHOOK_SECRET | Webhook 签名验证 |
STRIPE_PRICE_STARTER / _GROWTH / _SCALE | 主 API 方案价格 ID |
STRIPE_PRICE_INSIGHTS_STARTER / _GROWTH / _SCALE | Insights 附加方案价格 ID |
可选(电子邮件、替代支付方式、杂项)
| 变量 | 用途 |
|---|---|
RESEND_API_KEY | 事务性电子邮件 |
ALERT_EMAIL | 接收 insight 提醒的地址(默认为 [email protected]) |
GROQ_API_KEY | 快速预览和草稿生成 |
OXAPAY_MERCHANT_KEY | 加密货币结账 |
PAYSTACK_SECRET_KEY / PAYSTACK_PUBLIC_KEY | NGN 银行卡结账 |
FLUTTERWAVE_SECRET_KEY / FLUTTERWAVE_PUBLIC_KEY | 非洲银行卡结账 |
NEXT_PUBLIC_APP_URL | Magic link 基础 URL(默认为 https://www.getsignova.com) |
CORS_ALLOWED_ORIGINS | 以逗号分隔的 CORS 允许列表 |
LOG_LEVEL | DEBUG / INFO / WARN / ERROR |
NODE_ENV | development / production |
管理、定时任务、集成(可选)
| 变量 | 用途 |
|---|---|
ADMIN_API_TOKEN | 控制对 /v1/admin/revenue 的访问 |
ADMIN_SECRET | 控制对 api/admin/index-doc.js 的访问 |
BYPASS_ADMIN_SECRET | 控制对 api/create-bypass.js 的访问 |
CRON_SECRET | 验证 /api/cron/ots-upgrade |
POLL_CRON_SECRET | 验证 /v1/insights/poll |
FIELDOPS_API_URL / FIELDOPS_INTERNAL_KEY | FieldOps 预订桥接 |
VIGIL_API_URL | Vigil 合规后端 |
部署
该项目部署在 Vercel 上:
- 项目:
signova - 所有者:
ebenovasolu-5755s-projects - 通过
vercel.json重定向配置的域名路由:根域名getsignova.com→www.getsignova.com,根域名ebenova.dev→www.ebenova.dev - 定时任务在
vercel.json中配置
vercel # preview deploy
vercel --prod # production deploy
在 Vercel → Project Settings → Environment Variables 中配置环境变量(与上方列表保持一致)。
测试
当前状态——如实说明已交付与计划中的内容:
| 领域 | 状态 |
|---|---|
lib/sanitize.js | 已完成 |
lib/parse-body.js | 已完成 |
lib/cors-middleware.js | 已完成 |
| API 端点集成测试 | 计划中 |
| React 组件测试 | 计划中 |
使用 npm test 运行(Vitest)。npm run test:coverage 会生成 v8 覆盖率报告。
项目结构
signova/
├── api/ # Vercel serverless functions
│ ├── v1/ # Versioned API (auth, billing, documents, insights,
│ │ # vigil, scope, contracts, extract, invoices, keys, admin)
│ ├── admin/ # Admin-only operator endpoints
│ ├── cron/ # Scheduled tasks (ots-upgrade)
│ ├── generate.js # Premium document generation (Claude)
│ ├── generate-preview.js# Free preview generation (Groq)
│ ├── promo-redeem.js # Promo code redemption (10 codes)
│ ├── stripe-*.js # Consumer Stripe flow
│ ├── paystack-*.js # Paystack flow
│ ├── oxapay-*.js # OxaPay crypto flow
│ ├── mcp.js # HTTP MCP endpoint
│ └── ...
├── lib/ # Shared server libraries (auth, CORS, Redis, validators,
│ # sanitize, parse-body, logger, analytics)
├── src/ # React SPA (pages, components, lib, styles)
├── mcp-servers/
│ ├── legal-docs/ # Legal document MCP server (publishable)
│ ├── insights/ # Insights MCP server (publishable)
│ └── scope-guard/ # Scope-guard MCP server
├── tests/ # Vitest test suite
├── scripts/ # Dev utilities (keygen, CSS token check, etc.)
├── openapi.yaml # OpenAPI 3.1.0 specification
└── vercel.json # Vercel routing, redirects, cron
相关仓库
- ebenova-legal-docs-mcp — legal-docs MCP 服务的已发布发行版(npm、MCP Registry、Smithery、Glama、MCPize)
许可证
© 2026 Ebenova Solutions。保留所有权利。商业产品——禁止未经授权的复制、分发或修改。请参阅 LICENSE。
支持
- 电子邮件:[email protected]
- 网站:getsignova.com
法律免责声明
Signova 生成的文档仅供参考,不构成法律建议。在依赖 AI 生成的法律文档之前,请务必咨询合格的律师。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。