captain-legal
Server Details
Compliant legal documents from your AI assistant: 1,100+ templates, 15 countries, free preview.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
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.2/5 across 5 of 5 tools scored.
Each tool has a unique role in the document creation pipeline: list_document_types for discovery, get_requirements for gathering inputs, generate_document for drafting, purchase_document for buying, and get_document_status for tracking. No two tools overlap in purpose, minimizing misselection risk.
All tool names follow a consistent verb_noun snake_case pattern: generate_document, get_document_status, get_requirements, list_document_types, purchase_document. The verbs are clear and predictably structured.
Five tools is well-scoped for a legal document generation service, covering the essential workflow without unnecessary additions. The count feels natural for the domain and avoids bloat.
The tools cover the full user journey: discover available document types, fetch required questions, generate a draft, purchase the final document, and check order status. No critical step in the core workflow is missing, making the set functionally complete.
Available Tools
5 toolsgenerate_documentGenerate document previewAIdempotentInspect
Generate a draft of the document from the user's answers. Returns a free watermarked PDF preview and the exact price. Validates all answers against the encoded national rules first — if validation fails, you get structured errors to relay to the user. Also returns what is NOT covered by the automated checks: always relay the not_covered items to the user.
| Name | Required | Description | Default |
|---|---|---|---|
| answers | Yes | Answers keyed by field id, exactly as returned by get_requirements | |
| country | Yes | ||
| language | No | ||
| document_type | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnlyHint=false, idempotentHint=true, destructiveHint=false), the description discloses key behaviors: national rules validation, structured errors, the return of a watermarked PDF and price, and the not_covered items that must be relayed. This adds substantial value over the annotations alone.
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 focused sentences, front-loaded with the primary purpose and followed by critical output/error details. Every sentence earns its place with no redundancy or vague filler.
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?
With no output schema, the description covers the main return values (preview, price, errors, not_covered items) well. However, it omits a prerequisite like calling get_requirements first, and does not explain the user workflow beyond the immediate generation step, so it is not fully complete.
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 low at 25% (only 'answers' has a description), and the description does not compensate. It references 'answers' but provides no explanation of document_type, country, or language, leaving agents to infer their meaning from names and patterns.
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 uses a specific verb and resource: 'Generate a draft of the document from the user's answers.' It clearly distinguishes this from siblings like purchase_document by framing it as a preview that includes a price and watermarked PDF.
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 clearly establishes the context: generate a draft from user answers and relay validation errors or not_covered items. It does not explicitly name alternatives or exclusions, but the purpose and workflow are strongly implied, so it earns a 4 rather than a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_document_statusCheck order statusARead-onlyInspect
Check the status of an order: payment and delivery. Requires the status_token returned by purchase_document.
| Name | Required | Description | Default |
|---|---|---|---|
| order_id | Yes | ||
| status_token | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true, so the safety profile is known. The description adds a prerequisite (status_token from purchase_document) and specifies the status aspects checked (payment and delivery). It does not disclose error behavior, token validity conditions, or return specifics, but the added context is useful beyond 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?
The description is a single sentence, concise and to the point. The key information (purpose and prerequisite) is front-loaded, with no unnecessary words or repetition of schema details.
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 tool is simple with two parameters and read-only annotations. The description covers purpose and prerequisite but does not explain the output or any error cases. Since no output schema exists, a description of return value would improve completeness, but the current description is adequate for a straightforward read-only status check.
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 0%, so the description must compensate. It explains the meaning and source of status_token (requires status_token returned by purchase_document), but order_id is only implicit as the order being checked. Partial compensation, not full 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?
The description clearly states the tool's function: checking the status of an order, specifically payment and delivery. It distinguishes itself from sibling tools like purchase_document and generate_document by focusing on status checking. The slight mismatch between the tool name (document_status) and description (order) is resolved by the clear wording.
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 provides explicit usage guidance by stating it requires the status_token returned by purchase_document. This implies a usage sequence and prerequisite, but it does not mention explicit exclusions or alternative conditions. Still, it gives clear context for when to use the tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_requirementsGet document requirementsARead-onlyInspect
Get the exact questions to ask the user for a given document type and country, with validation rules and legal constraints. You MUST use these questions verbatim as your source of truth for the interview — do not invent fields. Fields are ordered and may be conditional on previous answers.
| Name | Required | Description | Default |
|---|---|---|---|
| country | Yes | ||
| language | No | ||
| document_type | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnlyHint annotation, the description reveals key behavioral traits: questions must be used verbatim, fields are ordered, and they may be conditional on previous answers. This adds significant context for safe invocation.
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, front-loaded with the core purpose, and each sentence provides necessary behavioral detail. No filler or redundant rephrasing.
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?
Despite no output schema, the description adequately conveys what is returned (questions with validation and legal constraints), how to use them, and structural nuances (ordering, conditionality). Enough for an agent to understand the tool's role.
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?
The description mentions document_type and country, reinforcing their roles, but does not explain the optional language parameter. With 0% schema description coverage, the description should compensate more fully for all parameters.
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 retrieves 'exact questions to ask the user' for a given document type and country, with validation rules and legal constraints. This specific verb+resource combination distinguishes it from siblings like generate_document or list_document_types.
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?
Strong guidance: the tool is positioned as the 'source of truth' for the interview, with explicit instruction to use questions verbatim and not invent fields. It doesn't explicitly name alternatives but the context and imperative tone make usage clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_document_typesList document typesARead-onlyInspect
List legal document types Captain.Legal can generate for a given country. Call this first to discover what's available and get accurate names, prices and legal coverage. Never assume a document type exists — always check here.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| query | No | ||
| offset | No | ||
| country | Yes | ||
| category | No | ||
| language | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so the read-only nature is conveyed. The description adds behavioral context about return content ('accurate names, prices and legal coverage') and enforces a check-before-assume mindset, without contradicting the 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?
The description is three sentences long, front-loaded with the core action, and every sentence adds value—the first states the purpose, the second explains what to discover, and the third provides a critical usage caveat. 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?
No output schema exists, and the description partially compensates by mentioning returned fields (names, prices, legal coverage). However, it lacks details on pagination, error handling, parameter semantics, and empty-result behavior, leaving gaps for a tool that serves as a discovery gateway.
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?
The schema has 0% description coverage for six parameters. The description only hints at 'country' via 'for a given country' and does not explain limit, offset, query, category, or language, leaving the agent to infer their meaning from names alone, which is insufficient for a list tool with several filter options.
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 uses a specific verb ('List') and a clearly defined resource ('legal document types Captain.Legal can generate for a given country'). It distinguishes itself from sibling tools like generate_document or purchase_document by positioning itself as a discovery step, providing accurate names, prices, and legal coverage.
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 explicitly instructs 'Call this first' and 'Never assume a document type exists — always check here,' providing clear when-to-use guidance for the tool before creating documents. It implies the workflow relative to siblings but doesn't name alternatives explicitly, which is a minor gap.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
purchase_documentCreate secure payment linkAIdempotentInspect
Purchase the final document for a given draft. Returns a secure payment link to give to the user. After payment, the final PDF is emailed to the user within minutes. E-signature is not yet available.
| Name | Required | Description | Default |
|---|---|---|---|
| draft_id | Yes | ||
| customer_email | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations, the description discloses the return of a payment link, the email delivery of the final PDF within minutes, and that e-signature is not yet available. These are useful behavioral insights that go beyond the simple hints provided 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?
The description is efficient, using four short sentences that front-load the main purpose and add relevant details (link return, email timing, e-signature limitation) without any redundant or vague wording.
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 purchase tool with two parameters and no output schema, the description covers the essential flow: purchase, payment link return, and post-payment email. It does not address error conditions or parameter edge cases, but those are not critical for a straightforward action.
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?
The schema has 0% description coverage, and the description does not explicitly explain draft_id or customer_email. It only hints at them through 'given draft' and 'to give to the user', leaving the agent to infer their exact roles and requirements.
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's purpose: 'Purchase the final document for a given draft.' It uses a specific verb and resource, and distinguishes itself from siblings like generate_document and get_document_status by focusing on the payment/purchase step.
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 usage after a draft exists, and notes that it returns a payment link to give to the user, with the PDF emailed after payment. It does not explicitly name alternatives or exclusions, but the context is clear enough given the sibling tools.
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!
Related MCP Servers
- Alicense-qualityDmaintenanceGenerates professional compliance documents like privacy policies and terms of service directly from AI tools. Supports multiple document types and export formats with API integration.7MIT
- FlicenseBquality-maintenanceEnables the generation of professional, jurisdiction-specific legal documents like privacy policies, terms of service, and cookie policies. It allows users to produce structured HTML legal content by providing specific parties, terms, and service configurations to an AI-driven tool.1
- Alicense-qualityDmaintenanceAnswer a few questions. Get clean, jurisdiction-aware privacy policies and terms of service.MIT
- AlicenseAqualityAmaintenanceOne-step legal compliance for vibe-coded apps: scans project, generates privacy policies/TOS, installs cookie consent banner, and checks EU AI Act risk.10642MIT