# Gapup Legal Clause Extractor

> Gapup Legal Clause Extractor is a paid API for AI agents from mcp.gapup.io, paid per call via x402, $0.05/call, status unknown (last checked 2026-09-15).

Extracts and categorizes specific legal clauses (termination, liability, IP, confidentiality, etc.) from full-text legal documents across multiple languages and document types

## Facts

- Endpoint: POST https://mcp.gapup.io/api/v1/call/legal_clause_extractor
- Price: $0.05/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/gapup-legal-clause-extractor-840aa8aa
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_0YWrWl87YOADUqmq7gPws

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability gapup-legal-clause-extractor-840aa8aa -d '<json body>'
```

Example prompt: Extract all termination, liability, indemnification, and governing law clauses from this SaaS contract text I'm pasting — it's in English and about 40,000 characters long.

## When to prefer this

Use this endpoint when you need to programmatically extract and categorize specific legal clauses from contract documents at scale, especially when you need to filter for particular clause types (e.g. only termination and IP clauses) or process documents in French, German, Spanish, or Portuguese in addition to English. Prefer this over general document summarization when structured, clause-level extraction is needed for legal review workflows.

## Known failure modes

- Document text too short (under 100 chars) — validation error
- Document text exceeds 500,000 character limit — payload too large error
- Unsupported language not in EN/FR/DE/ES/PT — may return empty or partial results
- Invalid document_type enum value — validation error
- Payment not provided or invalid API key — 402/401 error
- Async job polling required if async=true — result not immediately available, must poll with job_id
- No matching clauses found for specified target_clauses filter — empty result set

## How this service works

REST gateway for the Gapup MCP catalogue — 271 AI tools accessible via standard HTTP. Authentication via Authorization: Bearer <api_key>. Native MCP transport available at /mcp.

## Output

A structured JSON object containing the extracted legal clauses organized by clause type, with the relevant text spans identified from the source document, returned under the 'result' key alongside tool name and source metadata.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "lang": {
   "type": "string",
   "description": "Optional. Language hint (e.g. 'en', 'fr', 'de'). Defaults to auto-detection."
  },
  "async": {
   "type": "boolean",
   "description": "If true, returns a job_id immediately (<200ms) instead of waiting for the result. Poll the result with job_result(job_id). Use for slow tools to avoid client timeouts."
  },
  "document_text": {
   "type": "string",
   "maxLength": 500000,
   "minLength": 100,
   "description": "Full text of the legal document (10k–100k chars typical). Plain text or lightly HTML-formatted. EN/FR/DE/ES/PT supported."
  },
  "document_type": {
   "enum": [
    "saas_contract",
    "employment",
    "nda",
    "loan_agreement",
    "lease",
    "merger_agreement",
    "licence_ip",
    "other",
    "auto"
   ],
   "type": "string",
   "description": "Optional. Document type hint. Defaults to auto-detection. Use \"auto\" or omit to let the tool detect from content."
  },
  "target_clauses": {
   "type": "array",
   "items": {
    "type": "string"
   },
   "description": "Optional. Filter extraction to specific clause types. E.g. [\"term\", \"termination\", \"liability\", \"ip\", \"confidentiality\", \"governing_law\", \"indemnification\"]. If omitted or empty, all clauses are extracted."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "tool": "legal_clause_extractor",
  "result": {},
  "source": "rest-api"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/gapup-legal-clause-extractor-840aa8aa/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from mcp.gapup.io](https://www.zero.xyz/host/mcp.gapup.io/llms.txt)
