JSON Contracts vs PDFGate MCP Server

A side-by-side look at the JSON Contracts and PDFGate MCP Server MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.

JSON Contracts logoJSON ContractsLegal · Local subprocess (stdio)JSON contract registry and validator for structured LLM and agent outputs.57GoodAuth: not declaredPDFGate MCP Server logoPDFGate MCP ServerLegal · Local subprocess (stdio)MCP server for the PDFGate API. Generate PDFs, manage documents and handle e-signatures.61GoodAuth: api key required

Verdict: choose JSON Contracts for legal work as a local process; choose PDFGate MCP Server for legal as a local process. You can also run both side by side in one mcpServers block.

Which MCP server should you choose?

JSON Contracts logoChoose JSON Contracts when

  • You need dedicated capabilities in the Legal domain.
  • You prefer a local stdio subprocess transport.
  • You have the keys it needs: JSON_CONTRACTS_DIR.
  • You want tools like list_contracts, read_contract, get_json_contract.
Explore JSON Contracts

PDFGate MCP Server logoChoose PDFGate MCP Server when

  • You need dedicated capabilities in the Legal domain.
  • You prefer a local stdio subprocess transport.
  • Its auth model fits you: API key required.
  • You have the keys it needs: PDFGATE_API_KEY.
  • You want tools like generate_pdf, upload_file, get_document.
Explore PDFGate MCP Server

Feature & specification comparison

Rows where the two servers differ are marked.

SpecJSON Contracts logoJSON ContractsPDFGate MCP Server logoPDFGate MCP Server
CategoryLegalLegal
Quality signal57/100 · Good61/100 · Good
Install commandConfirmedConfirmed
TransportLocal subprocess (stdio)Local subprocess (stdio)
AuthNot declaredAPI key required
PricingNot declaredBYOK (pay the provider)
Required env varsJSON_CONTRACTS_DIRPDFGATE_API_KEY
Verified ownerCommunity listingCommunity listing
GitHub stars10
Directory activity 3 views 0 installs 0 upvotes 5 views 0 installs 0 upvotes
Tools824

Tools & capabilities

JSON Contracts tools 8

  • list_contractsList currently loaded JSON contracts.
  • read_contractRead a loaded JSON contract.
  • get_json_contractReturn schema, rules, examples, instructions, and input so the agent/model can produce JSON.
  • get_edit_contractReturn schema, rules, current JSON, edit instructions, and input so the agent/model can edit existing JSON.
  • validate_jsonValidate agent-produced JSON against a contract schema.
  • get_repair_contractReturn schema, rules, previous invalid JSON, validation errors, and repair instructions.
  • statusReturn json-contracts MCP server status and loaded contract metadata.
  • reload_contractsRescan the JSON contracts directory and reload valid contracts.

PDFGate MCP Server tools 24

  • generate_pdfGenerate a PDF from a URL or raw HTML. Provide either 'url' or 'html', not both.
  • upload_fileUpload a PDF to PDFGate so it can be referenced by other operations. Provide either 'filePath' (local path) or 'url'.
  • get_documentRetrieve metadata for a stored PDFGate document by its ID.
  • delete_documentDelete a PDFGate document.
  • flatten_pdfFlatten an interactive PDF into a static, non-editable PDF. Creates a new document; does not overwrite the original.
  • extract_form_dataExtract form field values from a fillable PDF. Returns a JSON object mapping field names to their values.
  • add_form_fieldsAdd interactive form fields to a stored PDF — from placeholder tags (refined via fieldOverrides) and/or explicitly positioned fields.
  • compress_pdfCompress/optimise a PDF to reduce file size without changing visual content.
  • protect_pdfEncrypt a PDF with a password and optional permission restrictions. Produces a new document; the original is unchanged.
  • watermark_pdfApply a text or image watermark to a PDF. For type='text' provide 'text'; for type='image' provide 'watermarkImagePath'.
  • download_fileDownload the raw PDF bytes of a stored document, returned as an embedded resource. For a shareable link instead, use get_document.
  • create_envelopeCreate a signing envelope from one or more existing PDFGate documents. Each recipient is given either as email and name or as the recipientId of a stored recipient. Recipients marked embedded sign inside your application via create_embed_link and receive no emails. Use signingOrder to make recipients sign in sequence. Returns an envelope in 'created' status; call send_envelope to dispatch signing emails.
  • +12 more on the listing page

Ready-to-paste client configs

Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.

JSON Contracts

mcpServers (Claude Desktop / Cursor)
{
  "mcpServers": {
    "json-contracts": {
      "command": "npx",
      "args": [
        "-y",
        "json-contracts@latest"
      ],
      "env": {
        "JSON_CONTRACTS_DIR": "YOUR_JSON_CONTRACTS_DIR_HERE"
      }
    }
  }
}

PDFGate MCP Server

mcpServers (Claude Desktop / Cursor)
{
  "mcpServers": {
    "mcp-server-37": {
      "command": "npx",
      "args": [
        "-y",
        "@pdfgate/mcp-server"
      ],
      "env": {
        "PDFGATE_API_KEY": "YOUR_PDFGATE_API_KEY_HERE"
      }
    }
  }
}

Frequently asked questions

JSON Contracts is categorized under Legal and uses a local stdio subprocess. PDFGate MCP Server belongs to Legal and uses a local stdio subprocess. Pick JSON Contracts for legal work and PDFGate MCP Server for legal.

Copy the mcpServers block from the config section on this page into your client's config (for example claude_desktop_config.json or ~/.cursor/mcp.json), then fully restart the client.

JSON Contracts has no declared pricing — check the project's own site. PDFGate MCP Server is bring-your-own-key: usage is billed by the API provider you supply a key for. Auth: api key required. If a server needs environment variables such as API keys, define them under the env key in your client's MCP config.

Yes. MCP clients support multiple servers: add json-contracts and mcp-server-37 as separate keys in the same mcpServers object, and your assistant will call tools from either one.

On AllMCPs, JSON Contracts has a quality signal of 57/100 (Good) with 3 views, 0 installs and 1 GitHub stars. PDFGate MCP Server has 61/100 (Good) with 5 views, 0 installs and 0 GitHub stars.