Skip to main content
Glama

eVerbary MCP server

Order certified translations of official documents (birth and marriage certificates, diplomas, transcripts, court records) from Claude, ChatGPT, Cursor or any MCP client. Translations are done by human translators in the US and come with a signed certificate of accuracy accepted by USCIS, courts and universities.

eVerbary works with 1,250+ law firms and translators in the US. This repository holds:

  • the connection details for the hosted MCP server, https://orders.everbary.com/mcp

  • everbary-mcp, a small npm package that bridges the hosted server to clients that only speak stdio

  • everbary, a Python client for the REST API (python/)

  • a Postman collection for the REST API (postman/)

What the assistant can do

Tool

What it does

list_languages

Languages and per-page prices

list_document_types

Common document types and what each needs

get_quote

Price and delivery time for this account (team discounts included)

upload_document

Send a source document (PDF, image, Word)

create_order

Place the order with the uploaded files

pay_order

Pay with the account's prepaid balance or saved card, within spending limits

order_status

Progress, expected delivery and payment state

list_my_orders

Recent orders

get_payment_link

A link anyone can use to pay an unpaid order

Every tool carries MCP annotations (readOnlyHint / destructiveHint), so clients can ask before anything that places or pays an order. By default an order is capped at $500 and an account at $1,000 a day.

Related MCP server: MotaWord MCP Server

Connect

Claude (claude.ai, Desktop)

Settings → Connectors → Add custom connector → URL https://orders.everbary.com/mcp. Sign in with your eVerbary account when asked.

Claude Code

claude mcp add --transport http everbary https://orders.everbary.com/mcp

ChatGPT

Add https://orders.everbary.com/mcp as a custom connector (developer mode) and sign in with your eVerbary account.

Cursor, VS Code, Windsurf and other stdio clients

{
  "mcpServers": {
    "everbary": {
      "command": "npx",
      "args": ["-y", "everbary-mcp"]
    }
  }
}

The first run opens your browser to sign in to eVerbary. To skip the sign-in, put an API key in the environment:

{
  "mcpServers": {
    "everbary": {
      "command": "npx",
      "args": ["-y", "everbary-mcp"],
      "env": { "EVERBARY_API_KEY": "ev_live_..." }
    }
  }
}

A test key (ev_test_...) in EVERBARY_API_KEY runs every tool against the sandbox described below: uploads, quotes, orders and payments are pretend, and nothing is charged or sent to a translator.

The bridge is a thin wrapper around mcp-remote: nothing runs locally except the connection.

REST API

If you are building your own integration (case management software, intake forms, a firm's internal tools), use the REST API directly:

Test keys (ev_test_...) work on every REST endpoint and on the MCP server against a sandbox: orders are pretend, nothing is charged or sent to a translator, and each order moves new → in-progress → completed on its own with a sample translation, firing your webhook at every step. Ask support@everbary.com for a test key.

Case management software can also open a hosted checkout with the documents already attached (POST /v1/checkout/sessions). Try the demo: https://orders.everbary.com/checkout/demo

Pricing

From $24.95 per page. Rush options and notarization are extra. Current prices: https://www.everbary.com/pricing

License

MIT

Available Tools

9 tools
create_orderPlace a certified translation orderA
Idempotent
Inspect

Place a certified translation order for this account with the uploaded files. Call first with confirm=false and show the preview (price, delivery, files) to the user; then call again with confirm=true and a request_id. The order is placed unpaid and enters the translation queue; pay it with pay_order or share the payment link. Refused when over the key's spending limits.

ParametersJSON Schema
NameRequiredDescriptionDefault
noteNoInstructions for the translators (spelling of names, which pages...).
pagesNoCertified pages. Leave out to use the pages counted in the files.
confirmNofalse: preview only. true: place the order (after showing the preview to the user).
request_idNoRequired with confirm=true: a unique string for this order (e.g. a UUID). Retrying with the same request_id never creates a second order.
turnaroundNostandard; expedited (+20% of the page total, about half the time); expedited_plus (+40%, same day, only some languages and 8 AM-4:59 PM Eastern). Teams may have rush included.standard
upload_idsYesupload_id values returned by upload_document, one per file.
case_numberNoThe client's case or matter number; printed on the invoice.
language_toNoLanguage code from list_languages, e.g. 'spanish', 'portugueseBrazil', 'english'.english
notarizationNoAdd a notarized certificate.
language_fromYesLanguage code from list_languages, e.g. 'spanish', 'portugueseBrazil', 'english'.
client_last_nameNo
client_first_nameNoThe firm's client (whose documents these are), if any.

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Adds substantial context beyond the annotations: the order is placed unpaid and enters the translation queue, payment is handled separately, and the call is refused when the key's spending limits are exceeded. This complements idempotentHint=true (reassured by the request_id note) and destructiveHint=false without contradicting them.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Four sentences, no filler, and the critical confirm=false-first instruction is front-loaded. Every sentence carries either the flow, the state transition, the payment path, or the failure condition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description still tells the agent what the preview contains (price, delivery, files), what state the order lands in (unpaid, queued), and how to complete payment. Nothing an agent needs to invoke or continue the workflow is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 92%, so most parameter meaning is already documented. The description nonetheless adds procedural semantics for confirm and request_id (preview-then-confirm, retry safety) and the preview contents, going beyond the field-level text.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Place a certified translation order') plus scope ('for this account with the uploaded files'). It is clearly distinguishable from siblings like get_quote, pay_order, and order_status, which cover quoting, payment, and tracking rather than order creation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives an explicit two-step protocol: call with confirm=false and show the preview, then call again with confirm=true and a request_id. It also names the follow-up alternatives, pay_order or sharing the payment link, so the agent knows what to do after this tool returns.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_quoteGet a price quoteA
Read-onlyIdempotent
Inspect

Price and delivery time for a certified translation, for this account (its team discount and included rush applied), with the other turnarounds for comparison and whether the key's spending limits allow it. Nothing is ordered.

ParametersJSON Schema
NameRequiredDescriptionDefault
pagesNoCertified pages (up to 250 words each). Leave out when passing upload_ids: the files' pages are counted.
turnaroundNostandard; expedited (+20% of the page total, about half the time); expedited_plus (+40%, same day, only some languages and 8 AM-4:59 PM Eastern). Teams may have rush included.standard
upload_idsNoupload_id values from upload_document, to count pages from the files.
language_toNoLanguage code from list_languages, e.g. 'spanish', 'portugueseBrazil', 'english'.english
notarizationNoAdd a notarized certificate.
language_fromYesLanguage code from list_languages, e.g. 'spanish', 'portugueseBrazil', 'english'.

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish readOnly, idempotent, non-destructive, closed-world, so the safety profile is covered. The description adds genuinely new behavior: account-specific discount and rush are auto-applied, other turnarounds are returned for comparison, and it reports whether the key's spending limits permit the order.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Compact: one dense sentence on the returned content plus a short negating sentence that is well placed. The parenthetical about team discount and rush is slightly crowded, but nothing is wasted.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

There is no output schema, so the description usefully enumerates what comes back (price, delivery time, comparison turnarounds, spending-limit eligibility) for a single-purpose read tool with only one required parameter. Missing only response-format detail, which is a minor gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, including enum semantics for turnaround and the pages-vs-upload_ids interaction, so the description does not need to carry parameter meaning. It adds no syntax or format detail beyond the schema, which is the expected baseline of 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific resource (price + delivery time for a certified translation) and scopes it to this account with team discount and included rush applied. The closing 'Nothing is ordered' implicitly separates it from the mutating siblings (create_order, pay_order, order_status), though no sibling is named directly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

'Nothing is ordered' makes the use context clear: this is a pre-purchase preview to consult before committing. It does not explicitly name the alternative tools (e.g., get_payment_link or create_order) or state when-not to use it, so it stops short of a 5.

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 types and requirementsA
Read-onlyIdempotent
Inspect

Common document types eVerbary translates (birth and marriage certificates, diplomas, transcripts, court records...) with what to upload for each, plus the general requirements: accepted file types and sizes, what a page is, notarization, turnarounds.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare this is read-only, idempotent, non-destructive, and not open-world, so the safety profile is fully covered. The description adds useful content context (that it returns requirement details, not just a name list), but says nothing about caching, freshness, or that results are static reference material.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One dense sentence, front-loaded with the core resource and then elaborating returned content. The parenthetical example list adds scannability without wasting much space, though the trailing requirements clause is slightly run-on.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter reference lookup with full annotation coverage and no output schema, the description adequately conveys what the agent will get back. A brief note on output shape or how it relates to upload_document would make it fully complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool takes zero parameters, so there is nothing to document; baseline is 4. The description correctly implies a parameterless, global reference listing rather than a filtered query.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (List) and resource (document types) plus the scope of what's returned: the types themselves, per-type upload guidance, and general requirements. It is clearly distinguishable from siblings like list_languages or list_my_orders, and no other sibling enumerates document type guidance.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool is a reference lookup to consult before uploading documents, but it never says when to call it versus e.g. upload_document or get_quote, nor states any preconditions. Usage is inferable from the content listed but not explicitly guided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_languagesList languages and per-page pricesA
Read-onlyIdempotent
Inspect

The languages eVerbary translates, with the codes the other tools take, the per-page price beside English and beside another language (surcharge flag), and which ones Expedited Plus (same day) covers.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint/idempotentHint/destructiveHint=false, so the safety profile is covered. The description adds real behavioral context beyond that — it discloses the shape of each returned record (code, two price figures, surcharge flag, expedited coverage) and that prices are quoted relative to English and another language.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence that leads with the resource and then stacks the returned fields. It is dense but every clause carries information about the return payload; no filler or restatement of the title.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema and no parameters, the description carries the full burden of explaining the response, and it does so by naming each returned field. It stops short of stating the exact format of the price values or the surcharge flag type, which is a minor residual gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool takes zero parameters, so there is nothing for the description to disambiguate; the baseline for a parameterless tool applies. No parameter guidance is needed or missing.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource ('The languages eVerbary translates') and enumerates exactly what each entry carries: codes, per-page price, surcharge flag, and Expedited Plus coverage. An agent can distinguish it from the sibling list_document_types purely from the text.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'the codes the other tools take' implies this is the lookup an agent should call before create_order or get_quote, but there is no explicit when-to-use statement, no named alternative, and no exclusion. Usage is inferable rather than stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_my_ordersList my recent ordersA
Read-onlyIdempotent
Inspect

This account's most recent orders with status, price and payment state.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoHow many, newest first.
statusNoOnly these: 'open' (not delivered yet), 'delivered', or a status such as 'new', 'in-progress', 'completed'.

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false and openWorldHint=false, so the safety profile is fully covered. The description adds only the scoping ('this account') and the returned field set; it says nothing about page size behavior, ordering guarantees, or truncation, which is a modest addition given the annotation coverage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with zero filler; every clause earns its place by naming the scope and the surfaced fields.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description usefully enumerates what each order carries (status, price, payment state), and the schema covers both params. It stops short of explaining ordering or the relationship to the order_status sibling, but is otherwise sufficient for a simple two-param list tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% – both limit ('How many, newest first.') and status ('Only these: open/delivered/...') are already documented in the schema. The description adds no parameter syntax or format detail, so baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource ('this account's most recent orders') and enumerates the fields surfaced (status, price, payment state). It implicitly contrasts with siblings like order_status and create_order, though it never names them explicitly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is only implied by the phrase 'most recent orders' – no explicit when-to-use, no note on how it differs from the single-order order_status sibling, and no pagination guidance. Adequate but with clear gaps.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

order_statusOrder statusA
Read-onlyIdempotent
Inspect

Status of one of this account's orders: progress, expected delivery, payment (paid / unpaid / on account, invoice) and, once delivered, links to the certified translation files.

ParametersJSON Schema
NameRequiredDescriptionDefault
order_numberYesThe eVerbary order number, e.g. 43392.

TDQS

A3.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, and non-destructive, so safety is covered. The description adds genuinely useful context beyond that: results are limited to this account's orders, and it discloses the return contents (payment state options including 'on account' with invoice, and links to certified translation files once delivery occurs). It does not cover failure behavior for an unknown or foreign order number.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single dense sentence that front-loads the resource and then the returned fields. Nothing is wasted, though the parenthetical payment enumeration makes it list-heavy rather than crisp.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description usefully describes what the call returns, including payment semantics and delivery-file links, and notes account scoping. It leaves undefined what happens for an invalid or non-owned order number, which is the main remaining gap for a single-parameter lookup.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With one parameter at 100% schema description coverage, the schema already documents order_number fully, including the example '43392' and range bounds. The description adds nothing beyond the schema, so the baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific resource (one of this account's orders) and enumerates what status comprises: progress, expected delivery, payment state, and delivery-file links. It does not explicitly contrast with the sibling list_my_orders, so a reader must infer the singular-vs-list distinction from 'one of this account's orders'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no explicit when-to-use statement, no prerequisites, and no mention of the obvious alternative (list_my_orders) or how to obtain a valid order number. Usage is only implied by the required order_number and the account-scoping phrase.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

pay_orderPay an orderA
DestructiveIdempotent
Inspect

Pay an order with the account's own means: its team's prepaid balance, its saved card (off-session; card numbers are never accepted), or - for teams with billing terms - its periodic invoice. Call with confirm=false first, show the user the amount and method, then confirm=true with the confirmation_id. If the card needs the cardholder's approval (3-D Secure) nothing is charged and a payment link is returned. Limited per order and per day for this key.

ParametersJSON Schema
NameRequiredDescriptionDefault
methodYesprepaid_balance: the team's prepaid balance. card_on_file: the account's primary saved card, charged off-session. on_account: teams with billing terms - the order goes on the team's periodic invoice, nothing is charged now.
confirmNofalse: show what would be charged and get a confirmation_id. true: charge it.
order_numberYesThe eVerbary order number, e.g. 43392.
confirmation_idNoRequired with confirm=true: the confirmation_id from the confirm=false call (valid 15 minutes). Retrying with it never charges twice.

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true, idempotentHint=true and openWorldHint=true, and the description adds substantial context beyond them: card numbers are never accepted, nothing is charged when 3-D Secure approval is needed (a payment link is returned instead), the confirmation_id is valid 15 minutes, retries never double-charge, and there are per-order and per-day limits for the key.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loads the core action and funding methods, then the mandatory confirm-then-charge sequence, then edge cases (3-D Secure) and limits. Four sentences, no filler, and each sentence carries distinct operational information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

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 covers the important return behavior (payment link on 3-D Secure challenge) and the confirmation_id round-trip. It does not describe the general success response shape or where the confirmation_id surfaces from the confirm=false call, but for a mutation tool with rich annotations and full schema coverage this is nearly complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% so the baseline is 3, but the description goes beyond field definitions by framing the parameters as a two-step workflow (confirm=false yields the confirmation_id that confirm=true consumes) and by explaining the off-session nature of card_on_file. The enum values themselves are already fully described in the schema, so this is reinforcement plus flow context rather than new per-parameter detail.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource ('Pay an order') and immediately enumerates the three funding sources the account can use (prepaid balance, saved card off-session, periodic invoice), which distinguishes it from sibling tools like get_payment_link or get_quote. An agent can identify the tool's job without opening the schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives an explicit required sequence: call with confirm=false, show the user amount and method, then confirm=true with the confirmation_id, plus the 3-D Secure branch behavior. It never states when NOT to use it or names an alternative sibling (e.g. get_payment_link) as the right tool in some condition, so it falls short of a full 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

upload_documentUpload a document to translateA
Idempotent
Inspect

Send one source document (PDF, image, Word...) before ordering. Returns an upload_id for get_quote and create_order, and the pages counted in it. Files are kept 24 hours until used in an order; sending the same file again returns the same upload_id.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlNoOr a public https link to download the file from (up to 50 MB).
filenameYesFile name with extension, e.g. 'birth-certificate.pdf'.
content_base64NoThe file's bytes, base64-encoded (up to 15 MB).

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false, destructiveHint=false, idempotentHint=true and openWorldHint=true. The description adds genuinely useful behavior beyond that: a 24-hour retention window and the concrete idempotency semantics (re-sending the same file yields the same upload_id). It omits failure modes and size limits, but the retention/idempotency detail is real added value.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences, zero padding. The primary action and its ordering constraint come first, followed by return values, then retention/idempotency detail – a well front-loaded structure.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

There is no output schema, but the description compensates by naming the return values (upload_id, page count) and their consumers. For a 3-parameter upload tool with full annotations, nothing essential is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% with all three parameters documented inline (url, filename, content_base64 including size limits). The description only adds acceptable file-format examples, so the schema is doing the heavy lifting – baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource (send a source document), the accepted input types (PDF, image, Word), and the returned artifact (upload_id plus page count). It clearly positions itself as a pre-order step, distinguishing it from siblings like get_quote and create_order.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tells the agent to upload 'before ordering' and names the downstream tools that consume the upload_id (get_quote, create_order), which gives clear context. It does not state any when-not conditions or alternatives, but for a prerequisite step the sequencing guidance is sufficient.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 9 tool updatesv0.1.0
    • First observedcreate_order
    • First observedget_payment_link
    • First observedget_quote
    • First observedlist_document_types
    • First observedlist_languages
    • First observedlist_my_orders
    • First observedorder_status
    • First observedpay_order
    • First observedupload_document

TDQS

A4.1/5.0

Scored across 9 tools

Disambiguation5/5

Each tool targets a distinct step or resource in the translation workflow: reference listing (languages, document types), quoting, uploading, ordering, paying, and status checking. The closest pairs (order_status vs list_my_orders, pay_order vs get_payment_link) are clearly differentiated by their descriptions as single-order detail vs recent list, and account-means payment vs a shareable link.

Naming Consistency4/5

Most tools follow a consistent verb_noun pattern (list_languages, get_quote, upload_document, create_order, pay_order, get_payment_link, list_my_orders). The exception is order_status, which drops the verb and breaks the pattern, though it remains understandable.

Tool Count5/5

Nine tools is well-scoped for a translation ordering service, covering reference data, the quote/upload/order/pay/status lifecycle, and payment links. No tool feels redundant or out of place.

Completeness4/5

The core order lifecycle is well covered: reference info, quoting, document upload, order creation, payment (account or link), and status/listing with delivered file links. Possible minor gaps include canceling or modifying an order and retrieving file downloads via a dedicated tool, but agents can work around these.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    This MCP gives you full control over your translation projects from start to finish. You can log in anytime to see what stage your project is in — whether it’s being translated, reviewed, or completed.
    4
    -
  • F
    license
    Not graded
    quality
    D
    maintenance
    This MCP gives you full control over your translation projects from start to finish. You can log in anytime to see what stage your project is in — whether it’s being translated, reviewed, or completed. You don’t have to guess or follow up via email.
    -
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables translation and text rephrasing using DeepL's API through a cloud-deployed MCP server. Provides translation between multiple languages, text rephrasing, and language detection capabilities with professional deployment features.
    MIT