Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, email [email protected] and we’ll put it right.

io.github.DrBaher/contract-ops-mcp

NPM · CONTRACT-OPS-MCP · SCANNED AUG 3

One MCP server for the contract-ops suite: all nine local-first CLIs as agent tools.

Available components

+32 this week 78 Trust /100
Trust breakdown (6 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score →

Supply Chain Security86
  • No malware found by supply-chain analysis.Pass
  • Only part of the dependency tree could be resolved (94 of 98), so this covers what we could see, not the whole tree.Partial
  • No install/post-install scripts declared.Pass
  • Only part of the dependency tree could be resolved (94 of 98), so this covers what we could see, not the whole tree. View diagnostics → Partial
Provenance & Transparency97
  • Source repository is publicly reachable at the declared URL. View diagnostics → Pass
  • Cryptographically verified build provenance (signed, bound to DrBaher/contract-ops-mcp). View diagnostics → Pass
  • Clear OSI-approved license (MIT).Pass
  • Actively maintained (last published 18 days ago).Pass
  • Disclosure check failed: no security disclosure policy was found in the source repository. See how to fix → Fail
Schema Quality & AI Usability71
  • AI-judged instruction clarity (good).Pass
  • Tool/resource definitions use about 3122 tokens (~62/item across 50 items; 50 tools + 0 resources), lean.Pass
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management27
  • Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 99% of tool parameters carry a description.Partial
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Install

Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.

npm · contract-ops-mcp

# add to Claude Code
claude mcp add drbaher-contract-ops-mcp -- npx -y contract-ops-mcp
# add to Codex CLI
codex mcp add drbaher-contract-ops-mcp -- npx -y contract-ops-mcp
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "drbaher-contract-ops-mcp": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "contract-ops-mcp"
      ],
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add drbaher-contract-ops-mcp --command npx --arg -y --arg contract-ops-mcp
# ~/.hermes/config.yaml
mcp_servers:
  drbaher-contract-ops-mcp:
    command: "npx"
    args: ["-y", "contract-ops-mcp"]
// mcp.json
{
  "mcpServers": {
    "drbaher-contract-ops-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "contract-ops-mcp"
      ]
    }
  }
}
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 2 Aug 26 +57
    • Known CVEs: unverified → partial security
    • Install scripts: unverified → pass security
    • Provenance: unverified → pass security
    • Malware scan: unverified → pass security
    • The attested source repository moved: DrBaher/contract-ops-mcp security
    • License: unverified → pass functional
    • Dependency health: unverified → partial functional
    • Maintenance: unverified → pass functional
    • MCP protocol: unverified → pass functional
    • Stability: unverified → 0.23 functional
    • Schema quality: unverified → good functional
    • Licence: MIT functional
  • 1 Aug 26 +16
    • Tool coverage: unverified → 100 functional
  • 31 Jul 26 −19
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 30 Jul 26 −22
    • Tool coverage: 100 → unverified functional
    • First check of Schema quality: unverified functional
  • 27 Jul 26 46

    First indexed and scored.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 3 Aug 2026 · Analysed npm/[email protected]

Provenance verified

Ecosystem: npm · Outcome: verified

Reason: verified

Source repo:
DrBaher/contract-ops-mcp
Certificate issuer:
https://token.actions.githubusercontent.com
Certificate SAN:
https://github.com/DrBaher/contract-ops-mcp/.github/workflows/publish.yml@refs/tags/v0.3.0
Rekor log index:
2173983859
Predicate type:
https://slsa.dev/provenance/v1
Subject digest:
sha512:9287e33d0d9751f6b8a02a4e9d9208f43ce729f53991d2d6a08e3a987faf6c4cbf4facf1979c76a63be18d6beb5c19bdacb5eea33515b70146a1a57db
Discovery method:
attestation_endpoint
Dependencies 94 packages

94 packages in the resolved dependency tree · 94 deprecated · 29 stale.

The dependency tree was only partially resolved, so these counts may be incomplete.

MCP tools — 50 exposed · ~3,122 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.

Tool Tokens
audit_show ~35

Show the hash-chained audit log for a sign request. Read-only.

NameTypeReqDescription
request_idstringyesThe sign request id.

No output schema declared.

No examples provided.

catalog ~48

Return a CLI's full machine-readable command/flag catalog (`<cli> --catalog json`). Use this to discover the long tail beyond the curated tools.

NameTypeReqDescription
clistringyesWhich suite CLI.

No output schema declared.

No examples provided.

compare_versions ~70

Clause-aware drift detection between two contract versions. exitCode: 0 clean · 2 substantive drift · 3 cosmetic · 4 clauses moved · 1 I/O error.

NameTypeReqDescription
basestringyesPath to the agreed/base version.
candidatestringyesPath to the version to check.

No output schema declared.

No examples provided.

contract_vault_accept ~74

Mark register field(s) as manually verified (single, or bulk via a file). Writes to the register.

NameTypeReqDescription
dealstringDeal id.
fieldstringField name.
from_filestringPath to a bulk-accept file.
valuestringVerified value.

No output schema declared.

No examples provided.

contract_vault_at_risk ~57

Renewal exposure: missed / imminent auto-renewal notice deadlines and expirations. Read-only.

NameTypeReqDescription
as_ofstringAs-of date.
withinstringWindow, e.g. 30d.

No output schema declared.

No examples provided.

contract_vault_due ~48

Project upcoming renewal / notice / payment deadlines from the signed-contract register.

NameTypeReqDescription
withinstringWindow, e.g. 30d / 90d (default 30d).

No output schema declared.

No examples provided.

contract_vault_export ~73

Export the register as csv | md | json (for spreadsheets / reports). Returns the export; writes no file. Read-only.

NameTypeReqDescription
expiring_beforestringOnly rows expiring before this date.
formatstringExport format.
needs_reviewbooleanOnly rows needing review.

No output schema declared.

No examples provided.

contract_vault_ingest ~63

Register a contract into the vault from an extract_contract JSON file. Writes to the register.

NameTypeReqDescription
counterpartystringCounterparty name.
filestringyesPath to an extract_contract JSON file.
namestringDeal name.

No output schema declared.

No examples provided.

contract_vault_obligation ~94

Track one obligation's lifecycle (status / owner / recurrence / reminder days). Writes to the register.

NameTypeReqDescription
dealstringyesDeal id.
idstringyesObligation id.
ownerstringAssign an owner.
recurrencestringRecurrence.
remindersstringReminder lead days, e.g. 30.
statusstringNew status.

No output schema declared.

No examples provided.

contract_vault_obligations ~87

Project upcoming date/obligation actions from the register. Read-only.

NameTypeReqDescription
as_ofstringAs-of date (YYYY-MM-DD).
ownerstringFilter by owner.
statusstringFilter by status.
typestringFilter by obligation type.
withinstringWindow, e.g. 90d.

No output schema declared.

No examples provided.

contract_vault_query ~60

Query the register of signed contracts (read-only): list | find | get | show | stats | history.

NameTypeReqDescription
actionstringyesRead-only action.
argstringArgument for find/get/show/history (query or deal id).

No output schema declared.

No examples provided.

contract_vault_remind ~76

Obligations whose reminder window is open right now — a digest for agents/cron. Read-only.

NameTypeReqDescription
as_ofstringAs-of date (YYYY-MM-DD).
ownerstringFilter by owner.
statusstringFilter by status.
typestringFilter by type.

No output schema declared.

No examples provided.

contract_vault_review ~42

List register fields needing review (unidentified / LLM-derived / low-confidence). Read-only.

NameTypeReqDescription
thresholdstringConfidence threshold (0-1).

No output schema declared.

No examples provided.

contract_vault_risk ~50

Renewal-exposure analysis: missed/imminent auto-renewal notice deadlines and expirations.

NameTypeReqDescription
withinstringWindow, e.g. 30d (default 30d).

No output schema declared.

No examples provided.

contract_vault_verify ~26

Integrity check of the register (source sha256 + git state). Read-only.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

convert_to_pdf ~54

Convert a Word document to PDF (needs a PDF backend such as LibreOffice on the host).

NameTypeReqDescription
inputstringyesPath to the .docx.
outputstringOutput .pdf path (optional).

No output schema declared.

No examples provided.

draft_nda ~211

Draft a new NDA from a built-in template into `out` (markdown; optional .docx). Deterministic. If placeholders are missing the result lists them — fill and retry. Needs nda_setup first.

NameTypeReqDescription
disclosing_partystringDisclosing party (one-way).
effective_datestringEffective date.
governing_lawstringGoverning law.
outstringyesOutput markdown path.
out_docxstringOptional Word .docx output path.
party_astringParty A name (mutual).
party_a_addressstringParty A address (mutual).
party_bstringParty B name (mutual).
party_b_addressstringParty B address (mutual).
purposestringyesPurpose / deal description.
receiving_partystringReceiving party (one-way).
templatestringWhich built-in template (default mutual).

No output schema declared.

No examples provided.

extract_contract ~75

Ingest any contract (.md/.txt/.html/.docx/.pdf) into structured JSON — parties, dates, term, governing law, a clause map, defined terms — each with a confidence + source. Deterministic, no network.

NameTypeReqDescription
pathstringyesPath to the contract file (within the base dir).

No output schema declared.

No examples provided.

fill_template ~64

Fill placeholders in a markdown/.docx template with parameter values (deterministic; no LLM). Returns the filled document on stdout.

NameTypeReqDescription
paramsobjectParameter values (snake_case keys), passed as JSON.
templatestringyesPath to the template.

No output schema declared.

No examples provided.

generate_redlines ~85

Generate a clause-ready redline draft from a review_nda JSON report. Writes redline markdown to `out`. Deterministic; no org policy needed.

NameTypeReqDescription
modestringRedline format (default classic).
outstringyesOutput path for the redline markdown.
review_jsonstringyesPath to a saved review_nda JSON report.

No output schema declared.

No examples provided.

lint_contract ~78

Lint one contract for internal-consistency defects — leftover placeholders, broken cross-references, undefined/unused defined terms, numbering gaps, party/date inconsistencies. Returns findings (rule, severity, line).

NameTypeReqDescription
fail_onstringSeverity threshold for the exit code (default: error).
pathstringyesPath to the document.

No output schema declared.

No examples provided.

nda_setup ~43

One-time: generate the org NDA policy + default playbook in the workspace (needed before draft_nda / negotiate_*). Idempotent; writes config into the workspace.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

negotiate_accept ~58

Accept the current negotiated text, SIGNING convergence on your side. Signs a binding acceptance.

NameTypeReqDescription
asstringWhich side.
outstringOptional output path.
statestringyesPath to the negotiation state file.

No output schema declared.

No examples provided.

negotiate_analyze ~43

Post-hoc negotiation dashboard: trajectory, per-clause winners, source breakdown, outcome. Read-only.

NameTypeReqDescription
statestringyesPath to the negotiation state file.

No output schema declared.

No examples provided.

negotiate_counter ~127

Sign a counter-round with amendments — either from a JSON amendments file you provide, or deterministic --auto with a stance. Signs a negotiating commitment.

NameTypeReqDescription
amendments_filestringPath to a JSON amendments file (drafted by you).
asstringWhich side you're countering as.
autobooleanUse the deterministic auto-amender instead of an amendments file.
outstringOptional output path for the round.
stancestringDeterministic stance when using auto.
statestringyesPath to the negotiation state file.

No output schema declared.

No examples provided.

negotiate_diff ~62

Clause-by-clause changes between two negotiation rounds (defaults to the last two). Read-only.

NameTypeReqDescription
from_roundstringFrom round number.
statestringyesPath to the negotiation state file.
to_roundstringTo round number.

No output schema declared.

No examples provided.

negotiate_finalize ~88

Finalize a converged negotiation: emit the final .md and .docx. The legal SIGNATURE stays with the human — no e-signature is applied here; hand off to sign-cli.

NameTypeReqDescription
out_docxstringyesFinal .docx output path.
out_mdstringyesFinal markdown output path.
statestringyesPath to the negotiation state file.

No output schema declared.

No examples provided.

negotiate_init ~149

Start a negotiation: draft from a template + parties, SIGN as Party A, and write the state file. Signs a negotiating commitment. Needs nda_setup first.

NameTypeReqDescription
effective_datestringEffective date.
governing_lawstringGoverning law.
outstringyesOutput path for the negotiation state file.
party_a_addressstringParty A address.
party_a_namestringParty A name.
party_b_addressstringParty B address.
party_b_namestringParty B name.
purposestringyesPurpose / deal description.
templatestringWhich built-in template (default mutual).

No output schema declared.

No examples provided.

negotiate_review ~45

Review the latest negotiation round against your policy. Read-only.

NameTypeReqDescription
asstringWhich side's policy view.
statestringyesPath to the negotiation state file.

No output schema declared.

No examples provided.

negotiate_status ~38

Show a negotiation's rounds, per-clause status, and signatures. Read-only.

NameTypeReqDescription
statestringyesPath to the negotiation state file.

No output schema declared.

No examples provided.

negotiate_validate ~41

Integrity check on a negotiation state file: schema + hash-chain + per-round shape. Read-only.

NameTypeReqDescription
statestringyesPath to the negotiation state file.

No output schema declared.

No examples provided.

review_nda ~68

Review an NDA against a house playbook — deterministic scoring with evidence per finding. Returns the structured review report (decision, risk_score, findings with evidence).

NameTypeReqDescription
filestringyesPath to the NDA.
playbookstringPath to the house playbook JSON (optional).

No output schema declared.

No examples provided.

run ~106

Escape hatch: run any suite CLI with raw arguments (no shell). For commands the curated tools don't cover. Call `catalog` first to learn the flags. Note: signing stays human-gated — only sign-cli's read/verify subcommands are reachable here; request-create/send/sign/approve are rejected and must go through sign-cli's own MCP with its per-signer approval tokens.

NameTypeReqDescription
argsarrayyesArguments passed verbatim to the CLI.
clistringyes

No output schema declared.

No examples provided.

suite_status ~40

Report which suite CLIs are installed (with versions) and how to install any that are missing. Call this first if a tool reports a CLI isn't installed.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

template_vault_clause_library ~41

Find clauses that repeat across the vault (a reusable clause library). Read-only.

NameTypeReqDescription
thresholdstringSimilarity threshold (0-1).

No output schema declared.

No examples provided.

template_vault_clauses ~32

List the clauses detected in a template. Read-only.

NameTypeReqDescription
refstringyesTemplate reference.

No output schema declared.

No examples provided.

template_vault_compare_clauses ~60

Compare clauses between two templates (optionally one named clause). Read-only.

NameTypeReqDescription
astringyesFirst template reference.
bstringyesSecond template reference.
clausestringOptional clause name to compare.

No output schema declared.

No examples provided.

template_vault_compose ~56

Fork a template into a new derived template in the vault. Writes a new versioned template.

NameTypeReqDescription
as_refstringyesNew template reference to create.
basestringyesBase template reference to fork from.

No output schema declared.

No examples provided.

template_vault_diff ~51

Unified diff between two versions of one template. Read-only.

NameTypeReqDescription
refstringyesTemplate reference.
version_astringyesFirst version.
version_bstringyesSecond version.

No output schema declared.

No examples provided.

template_vault_export ~62

Export a template to another format (e.g. .docx) at a workspace path.

NameTypeReqDescription
asstringFormat, e.g. docx.
outputstringOutput file path.
refstringyesTemplate reference.

No output schema declared.

No examples provided.

template_vault_find ~36

Search the template vault by category, tag, jurisdiction, or keyword. Read-only.

NameTypeReqDescription
querystringyesSearch query.

No output schema declared.

No examples provided.

template_vault_get ~48

Resolve and return a versioned template's text by reference (e.g. nda/house-mutual). Read-only.

NameTypeReqDescription
refstringyesTemplate reference: category/name[@version].

No output schema declared.

No examples provided.

template_vault_history ~36

Chronological timeline for a template: versions, swaps, and amendments. Read-only.

NameTypeReqDescription
refstringyesTemplate reference.

No output schema declared.

No examples provided.

template_vault_info ~36

Show metadata for a template (category, tags, jurisdiction, versions). Read-only.

NameTypeReqDescription
refstringyesTemplate reference.

No output schema declared.

No examples provided.

template_vault_list ~58

List templates in the vault, optionally filtered by category / tag / jurisdiction. Read-only.

NameTypeReqDescription
categorystringFilter by category.
jurisdictionstringFilter by jurisdiction.
tagstringFilter by tag.

No output schema declared.

No examples provided.

template_vault_stats ~25

Vault dashboard: template counts, coverage, and last activity. Read-only.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

template_vault_swap ~66

Replace one clause in a template with the same clause from another template. Writes a new version.

NameTypeReqDescription
clausestringyesClause name to replace.
from_refstringyesTemplate reference to take the clause from.
targetstringyesTemplate reference to modify.

No output schema declared.

No examples provided.

template_vault_verify ~39

Content-level sha256 integrity check of the vault. Read-only (never rewrites hashes).

NameTypeReqDescription
strictbooleanFail on any mismatch.

No output schema declared.

No examples provided.

verify_receipt ~37

Re-verify a portable signing receipt bundle, fully offline. Read-only.

NameTypeReqDescription
bundlestringyesPath to the receipt bundle directory.

No output schema declared.

No examples provided.

verify_signature ~61

Verify a signed PDF matches what was recorded for its request. (Read-only; signing itself stays human-gated behind sign-cli's own MCP.)

NameTypeReqDescription
pathstringyesPath to the signed PDF.
request_idstringyesThe sign request id.

No output schema declared.

No examples provided.