glossary-terms-definitions-library

A personal glossary of terms and definitions, assembled into a real Word docx, variables filled.

Should I use this

Quality & Safety

A
Description quality
98%
Schema completeness
89%
Naming quality
80%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~2,333Tokens (tool definitions)
~1.4 KBTypical response size
Moderate attention impact (1.82% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "glossary-terms-definitions-library": {
      "command": "uvx",
      "args": [
        "https://github.com/theluckystrike/mcp-servers/releases/download/v0.22.0/clauses.mcpb"
      ]
    }
  }
}

Runnable packages

mcpbhttps://github.com/theluckystrike/mcp-servers/releases/download/v0.22.0/clauses.mcpb0.22.0stdio

Remote endpoints

https://mcp.zovo.one/mcp/glossary-terms-definitions-librarystreamable-http

What it can do

Tool inventory

Tools (12)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟡clause_add(title, body, category, tags, variables, ...)

Save a reusable contract or proposal clause to the library. Returns the stored clause id, title, category, tags and the variables detected in its body, plus how many clauses of your own the library now holds.

Input Schema

{
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "minLength": 1,
      "description": "Clause heading, for example 'Late Payment'"
    },
    "body": {
      "type": "string",
      "minLength": 1,
      "description": "The clause text. Use {{variable}} placeholders for the facts that change per client, for example {{client}}, {{fee}} or {{late_fee_percent}}; contract_assemble fills them at assembly time. Free tier: 10 clauses of your own on top of the 25 starters"
    },
    "category": {
      "type": "string",
      "description": "Grouping. The known ones, in assembly order, are parties, scope, payment, expenses, ip, confidentiality, data, term, liability, warranty, disputes, general -- reuse one of these; any other name is accepted but sorts last in a category-based assembly"
    },
    "tags": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "variables": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Declared variable names. Anything {{...}} in the body is detected anyway"
    },
    "jurisdiction": {
      "type": "string",
      "description": "Where the clause is meant to apply, for example 'PL' or 'England and Wales'"
    },
    "language": {
      "type": "string",
      "description": "ISO language code, default en"
    }
  },
  "required": [
    "title",
    "body",
    "category"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢clause_get(id, title)

Return one clause in full by id or title: body, category, tags, jurisdiction, variables and the revision count, which stays 0 on free. A partial title matching several is refused with the candidates.

Input Schema

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "Clause id, for example late-fees"
    },
    "title": {
      "type": "string",
      "description": "Clause title; a partial title matches too"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡clause_update(id, title, body, category, tags, ...)

Change the text, category, tags, variables or jurisdiction of a clause. In Pro the previous text is kept as a version; in the free tier the change is applied without history.

Input Schema

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "Clause id or exact title"
    },
    "title": {
      "type": "string"
    },
    "body": {
      "type": "string"
    },
    "category": {
      "type": "string"
    },
    "tags": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "variables": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "jurisdiction": {
      "type": "string"
    },
    "language": {
      "type": "string"
    }
  },
  "required": [
    "id"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🔴clause_delete(id)

Delete one clause by id or exact title and report how many are left. There is no undo, and a deleted starter clause is not re-seeded. Use clause_update to change one you want to keep.

Input Schema

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "Clause id or exact title"
    }
  },
  "required": [
    "id"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢clause_list(category)

List the library as id, title, category, tags and variables, in contract order by category then title, which is the order contract_assemble uses. Narrow with category; use clause_search for words.

Input Schema

{
  "type": "object",
  "properties": {
    "category": {
      "type": "string"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢clause_search(query, category, tags, jurisdiction)

Ranked search over clause titles, tags, categories and bodies. Title and tag matches outrank body matches. Jurisdiction filtering is free; the tag filter is Pro and is skipped rather than refusing the search.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Words to look for, for example 'late payment interest'"
    },
    "category": {
      "type": "string"
    },
    "tags": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Pro: every tag listed must be present. On free the search still runs, without this filter"
    },
    "jurisdiction": {
      "type": "string",
      "description": "Exact jurisdiction match. Free"
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
clause_import(path, overwrite)

Call this tool to load clauses from a .md or .json file, reporting added, replaced, skipped and capped counts. A duplicate title is skipped unless overwrite. json is Pro. Free: 10 of your own.

Input Schema

{
  "type": "object",
  "properties": {
    "path": {
      "type": "string",
      "description": "Path to a .md or .json file. Markdown form: '## Title', then optional 'category:' / 'tags:' / 'variables:' lines, a blank line, then the body. JSON form: an array of clauses. JSON import is a Pro feature; markdown import works in the free tier, within the free clause cap"
    },
    "overwrite": {
      "type": "boolean",
      "description": "Replace clauses whose title already exists instead of skipping them"
    }
  },
  "required": [
    "path"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢clause_export(path, format, overwrite)

Call this tool to write the whole library to one file and return the path, format and count. It is written in contract order, so it re-imports the same way. markdown is free; json is Pro.

Input Schema

{
  "type": "object",
  "properties": {
    "path": {
      "type": "string",
      "description": "Destination file path. The clauses are written in assembly order, categories first"
    },
    "format": {
      "type": "string",
      "enum": [
        "json",
        "markdown"
      ],
      "description": "json (a Pro feature) or markdown (works in the free tier)"
    },
    "overwrite": {
      "type": "boolean",
      "description": "Replace the destination if a file is already there. Without it an existing file is never touched"
    }
  },
  "required": [
    "path",
    "format"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
contract_assemble(title, clause_ids, categories, values, client, ...)

Call this tool to build a contract from library clauses as .docx or markdown. A variable you omit stays as a bracketed prompt, never invented. clause_ids order is document order. Free: 8 clauses.

Input Schema

{
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "Document title, for example 'Service Agreement - Beta Corp'"
    },
    "clause_ids": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Clause ids in the order they should appear; this is the document order. Free tier: up to 8 clauses per document"
    },
    "categories": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Instead of ids: every clause in these categories, ordered by category. Free tier: up to 8 clauses per document"
    },
    "values": {
      "type": "object",
      "additionalProperties": {
        "type": "string"
      },
      "description": "Values for the {{variables}} in the chosen clauses, for example {\"fee\":\"4500\",\"late_fee_percent\":\"2\"}. Any variable you leave out stays in the document as a bracketed prompt such as [late fee percent], never as an invented value"
    },
    "client": {
      "type": "string",
      "description": "Client name; also fills the {{client}} variable"
    },
    "out_path": {
      "type": "string",
      "description": "Where to write the file. Default: the server data directory, under a name built from the client and the title"
    },
    "format": {
      "type": "string",
      "enum": [
        "docx",
        "markdown"
      ],
      "description": "docx (default) or markdown; the document opens with the not-legal-advice line either way"
    },
    "overwrite": {
      "type": "boolean",
      "description": "Replace out_path if a file is already there. Without it an existing file is never touched"
    }
  },
  "required": [
    "title"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢variables_list(clause_ids)

List every {{variable}} the clauses you name use, and which clause uses each, so the facts are gathered before contract_assemble leaves bracketed prompts. Reads only; a title matching several is refused.

Input Schema

{
  "type": "object",
  "properties": {
    "clause_ids": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "minItems": 1,
      "description": "Clause ids or titles"
    }
  },
  "required": [
    "clause_ids"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢license_status

Report this endpoint's licence state for your token as JSON: the product, the tier free or pro, why it is not Pro, and the checkout URL. Call it to explain a free-tier refusal. No arguments, nothing changes.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
license_activate(key)

Turn Pro on for this connection with key, an MCPL1.<payload>.<signature> issued at checkout for this server or the bundle. Data under your token stays; a wrong or expired key changes nothing. license_status confirms it.

Input Schema

{
  "type": "object",
  "properties": {
    "key": {
      "type": "string",
      "description": "License key from checkout, MCPL1.<payload>.<signature>"
    }
  },
  "required": [
    "key"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded12 tools