Open Agreements
Server Details
Fill standard legal agreement templates (NDAs, SAFEs, NVCA docs, employment) as DOCX files.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
- Repository
- open-agreements/open-agreements
- GitHub Stars
- 36
- Server Listing
- open-agreements
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Average 4.3/5 across 6 of 6 tools scored.
Each tool has a clear and distinct purpose: template browsing (list_templates, search_templates, get_template), template filling (fill_template), signature workflow (send_for_signature, check_signature_status). No overlap or ambiguity.
All tool names follow a consistent verb_noun pattern in snake_case (e.g., list_templates, check_signature_status). Verbs and nouns are clearly chosen, making the pattern predictable.
With 6 tools covering the core workflow of template discovery, filling, and e-signature, the count is well-scoped and appropriate for the server's purpose. No unnecessary tools and no critical missing functionality.
The tool set covers the full lifecycle of working with legal agreement templates: discover (list, search, get), create filled document (fill_template), send for signature (send_for_signature), and retrieve signed PDF (check_signature_status). No obvious gaps for the intended use case.
Available Tools
6 toolscheck_signature_statusARead-onlyInspect
Check the status of a signing envelope. When status is "completed", includes a download URL for the signed PDF.
| Name | Required | Description | Default |
|---|---|---|---|
| envelope_id | Yes | The envelope ID returned by send_for_signature. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only and non-destructive. The description adds value by specifying that on completion a download URL is included, which is beyond what annotations provide. No contradictions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no filler, front-loaded with the action and key information. Every sentence contributes value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter tool with annotations, the description covers the core purpose and a special behavior. It could mention other possible statuses or response format, but is largely adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the tool description does not add additional meaning to the parameter beyond what is in the schema description. Baseline 3 is appropriate as the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the verb 'check' and the resource 'signing envelope', and adds specific detail about the completed status including a download URL. It distinguishes from siblings like 'send_for_signature' by focusing on status retrieval.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description implicitly indicates usage after sending for signature, and the parameter description in the schema states the envelope_id comes from send_for_signature. No explicit exclusions or alternative tool mentions, but context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fill_templateAInspect
Fill a legal agreement template with field values and return a document via URL or MCP resource preview metadata. For recipe templates (e.g. NVCA), also generates a redline (track-changes) document comparing the filled output against the standard form.
| Name | Required | Description | Default |
|---|---|---|---|
| values | No | Field values to fill in the template. | |
| template | Yes | Template ID, e.g. "common-paper-mutual-nda". | |
| return_mode | No | Artifact return mode. Defaults to "url". | |
| redline_base | No | Base document for redline comparison. "source" = raw standard form (default), "clean" = cleaned intermediate. | |
| include_redline | No | Generate a redline (track-changes) document. Defaults to true for recipes. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations establish readOnlyHint=false (creates content) and destructiveHint=false. Description adds valuable behavioral context: dual return modes (URL vs MCP resource), and specific redline generation behavior for recipes comparing against 'standard form'—context not present in annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with zero waste. First sentence front-loads core purpose and return mechanism; second efficiently covers the conditional redline behavior for recipe templates. Every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Comprehensive for a document-generation tool: explains output artifacts (filled document + conditional redline) despite missing output schema, clarifies enum behavior (recipe templates trigger redlines), and addresses nested object purpose ('field values').
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Despite 100% schema coverage (baseline 3), description adds semantic value: explains return_mode practically ('via URL or MCP resource'), and clarifies redline_base purpose ('comparing the filled output against the standard form'), enriching the raw schema definitions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb 'Fill' + resource 'legal agreement template' clearly identifies the operation. The description distinguishes from siblings like get_template/list_templates by emphasizing document generation and field population, versus mere metadata retrieval.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides implied usage context through mention of 'recipe templates (e.g. NVCA)' indicating when redline generation occurs. However, lacks explicit guidance contrasting with sibling tools (e.g., 'use this to generate documents vs get_template to retrieve metadata') or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_templateARead-onlyInspect
Fetch a single template definition with full field metadata.
| Name | Required | Description | Default |
|---|---|---|---|
| template_id | Yes | Template ID, e.g. "common-paper-mutual-nda". |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true; description adds valuable behavioral context that it returns 'full field metadata' (indicating richness of response) without contradicting safety hints.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single efficient sentence with zero waste. Front-loaded action verb with precise qualifiers ('single', 'full field metadata') that convey scope and response content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Adequate for a simple read-only retrieval tool with one required parameter. Mentions field metadata to compensate for missing output schema. No critical gaps given tool complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 100% description coverage with example value; description does not add parameter-specific semantics but meets baseline expectation when schema documentation is complete.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Excellent specificity: verb 'Fetch', resource 'template definition', scope 'single' distinguishes from sibling list_templates/search_templates, and 'definition' distinguishes from fill_template which likely populates data.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implies usage through 'single' (suggests use when you have a specific ID) but lacks explicit when-to-use guidance contrasting with list_templates or search_templates siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_templatesARead-onlyInspect
List all available legal agreement templates as a paginated compact catalog. Returns lightweight metadata for discovery — call get_template for full per-field detail. Templates are returned in stable lexicographic order by template_id. For finding templates by topic, jurisdiction, or source, use search_templates instead.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Page size (default 25, max 100). | |
| cursor | No | Opaque pagination cursor returned by a prior call. Omit on the first page. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false. The description adds concrete behaviors: paginated results, compact catalog, stable lexicographic order by template_id, and clarifies that it returns lightweight metadata.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences are concise and front-loaded: first sentence states purpose, second gives alternative for detail, third mentions ordering and alternative search. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers pagination, ordering, and sibling differentiation. Lacks specification of what fields the lightweight metadata includes, but given the tool's role as a catalog for discovery, the information provided is sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for both parameters (limit and cursor). The description does not add extra meaning beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists all available legal agreement templates as a paginated compact catalog. It distinguishes from siblings by directing users to get_template for full detail and search_templates for topic/jurisdiction/source filtering.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly provides when-to-use guidance and names alternatives: 'call get_template for full per-field detail' and 'use search_templates instead' for specific searches.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_templatesARead-onlyInspect
Search for legal agreement templates by keyword. Uses BM25 ranking to find the most relevant templates matching your query. Searches across template names, descriptions, categories, sources, and field definitions. Use this instead of list_templates when you know what kind of agreement you need.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search query. Examples: "NDA", "employment offer letter", "NVCA stock purchase", "data processing GDPR", "non-compete Wyoming". | |
| source | No | Optional source filter (exact, case-insensitive). Values: "Common Paper", "Bonterms", "Y Combinator", "NVCA", "OpenAgreements". | |
| category | No | Optional category filter (exact, case-insensitive). Values: confidentiality, employment, sales-licensing, data-compliance, deals-partnerships, professional-services, venture-financing, other. | |
| max_results | No | Maximum results to return (1-50, default 10). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true. Description adds valuable behavioral context: BM25 ranking algorithm and specific fields searched across. Does not mention return structure or rate limits, but safety profile is covered by annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, zero waste. Front-loaded with core purpose, followed by mechanism (BM25), search scope, and sibling differentiation. Every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 100% schema coverage, readOnly annotations, and the tool's straightforward search purpose, the description is functionally complete. Minor gap: no hint at return value structure, though this is partially mitigated by the tool name and sibling get_template.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with detailed descriptions and examples for all 4 parameters. Description mentions 'by keyword' (aligning with query param) and implies filtering via the search scope, but does not add semantic detail beyond what the comprehensive schema already provides. Baseline 3 appropriate for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States specific verb (search), resource (legal agreement templates), ranking method (BM25), and exact search scope (names, descriptions, categories, sources, field definitions). Clearly distinguishes from list_templates sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states when to use this tool vs the sibling alternative: 'Use this instead of list_templates when you know what kind of agreement you need.' Provides clear selection criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
send_for_signatureAInspect
Upload a DOCX file and create a draft signing envelope via DocuSign. Returns a review URL — the user must review and send from DocuSign. Never auto-sends. Authentication is handled automatically via OAuth — no API key needed.
| Name | Required | Description | Default |
|---|---|---|---|
| signers | Yes | Signers and CC recipients. First signer maps to party_1, second to party_2. | |
| download_url | No | URL to download the DOCX file. Use the download_url from fill_template. | |
| document_name | No | Filename for the document (e.g. 'Bonterms Mutual NDA.docx'). Auto-detected from download URL if not provided. | |
| email_subject | No | Subject line for the signing invitation email. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses behavioral traits beyond annotations: the tool returns a review URL, requires user review, never auto-sends, and handles authentication via OAuth. No contradiction with annotations (readOnlyHint=false, destructiveHint=false).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences long with front-loaded purpose. Each sentence adds distinct value: action, return/user action, and authentication. No redundant or irrelevant text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the main purpose, return value, behavior, and auth. It could mention signer mapping or DOCX requirement explicitly, but these are in the schema. Overall complete for this complexity level.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with all parameters already documented. The tool description does not add new semantic information about parameters beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Upload a DOCX file and create a draft signing envelope') and the resource ('DocuSign'). It is distinct from sibling tools, which are about checking status, filling templates, and listing templates.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use (to start signing process) and notes that auto-send is not performed, but does not explicitly state when not to use or list alternatives. The context is clear enough for effective selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!
Your Connectors
Sign in to create a connector for this server.