Jithox EU Import Preflight
Server Details
Read-only EU import preflight over MCP: EORI, TARIC candidates, measures, low-value cost
- 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.6/5 across 5 of 5 tools scored.
Each tool targets a distinct aspect of the preflight workflow: classification, measures, cost, EORI validation, and receipt generation. There is no overlap in purpose, and the descriptions reinforce the boundaries. An agent can accurately select the right tool for a given step.
All tool names follow a consistent verb_noun pattern with snake_case: check_, estimate_, prepare_, search_, validate_. This makes the tools predictable and easy to navigate. No mixed conventions or ambiguous verbs.
Five tools is well-scoped for an EU import preflight service. Each tool earns its place by covering a key step in the workflow, from product classification to cost estimation and evidence generation. There is no bloat or missing essential function.
The tool surface covers the full preflight lifecycle: search codes, check measures, estimate cost for low-value consignments, validate EORI, and bundle results into a signed receipt. The descriptions explicitly call out out-of-scope areas (national VAT/excise) so gaps are intentional. No dead ends or missing critical operations for the stated purpose.
Available Tools
5 toolscheck_eu_import_measuresCheck EU import measures for a classificationARead-onlyInspect
For a candidate TARIC code + origin, list EU-level import measures from a dated snapshot: third-country duty, tariff preferences, prohibitions/restrictions, surveillance. A restriction hit is a 'not_ready' signal to review, not a legal determination; compound/unknown measures return 'needs_review'; no snapshot → 'unavailable'. Classifications/measures are CANDIDATES for a declarant to confirm; only a BTI binds. TARIC carries no national VAT/excise — those are separate. Every result carries its source, retrieval time and validity window.
| Name | Required | Description | Default |
|---|---|---|---|
| code | No | Candidate TARIC/CN code. | |
| date | No | ISO date to evaluate (defaults to today). | |
| itemCount | No | Number of items (optional). | |
| goodsValueEur | No | Customs value in EUR (optional). | |
| originCountry | No | ISO alpha-2 country of origin. | |
| destinationCountry | No | ISO alpha-2 EU destination. |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| billing | Yes | |
| product | Yes | |
| receipt | Yes | |
| decision | Yes | |
| retryable | Yes | |
| capability | Yes | |
| provenance | Yes | |
| generatedAt | Yes | |
| limitations | Yes | |
| schemaVersion | Yes | |
| receiptEnvelope | No | |
| decisionCategory | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint=true, destructiveHint=false), the description adds valuable behavioral context: it returns statuses like 'not_ready', 'needs_review', and 'unavailable', notes that results are non-binding candidates, and states that every result includes source and validity window. This enriches the agent's understanding beyond what annotations provide.
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 four sentences, front-loaded with the core action, and each subsequent sentence adds value (status behavior, legal caveats, metadata). It is efficient, though slightly dense, so a 4 is deserved.
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 adequately described for an agent to invoke correctly: it covers inputs, outputs, limitations, and safety profile. The output schema (implied) handles return value details, so the description doesn't overburden itself. This level of detail is sufficient for a 6-parameter tool.
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?
Input schema has full descriptions for all 6 parameters, so the description doesn't need to add parameter details. It reinforces 'candidate TARIC code + origin' and 'dated snapshot' but adds no new meaning beyond the schema, so baseline 3 is appropriate.
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 EU-level import measures for a candidate TARIC code and origin, naming specific measure types. This distinguishes it from siblings like search_taric_codes or estimate_low_value_import_cost, which serve different purposes.
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 context (checking measures for classification) and provides a clear exclusion: TARIC carries no national VAT/excise, indicating when not to rely on this tool. However, it does not explicitly name alternative sibling tools, so it falls 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.
estimate_low_value_import_costEstimate low-value import costARead-onlyInspect
Estimate the landed cost for a low-value consignment (intrinsic value ≤ EUR 150) to an EU state on a given date: EUR 150 duty relief until 2026-06-30, then the temporary EUR 3-per-item duty from 2026-07-01, plus destination import VAT. All amounts are candidates; missing data is returned as 'missing', never guessed. TARIC carries no national VAT/excise — those are separate. Every result carries its source, retrieval time and validity window.
| Name | Required | Description | Default |
|---|---|---|---|
| items | No | The consignment items. | |
| asOfDate | No | ISO date that selects the duty regime. | |
| currency | No | ISO 4217 currency of the values. | |
| iossUsed | No | Whether IOSS is used for VAT (optional). | |
| originCountry | No | ISO alpha-2 origin (optional). | |
| destinationCountry | No | ISO alpha-2 EU destination. | |
| destinationVatRatePercent | No | Destination VAT rate % (optional). |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| billing | Yes | |
| product | Yes | |
| receipt | Yes | |
| decision | Yes | |
| retryable | Yes | |
| capability | Yes | |
| provenance | Yes | |
| generatedAt | Yes | |
| limitations | Yes | |
| schemaVersion | Yes | |
| receiptEnvelope | No | |
| decisionCategory | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond readOnlyHint and destructiveHint, the description discloses key behaviors: all amounts are candidates, missing data is returned as 'missing' (never guessed), and every result carries source, retrieval time, and validity window. This significantly enhances transparency for a calculation tool.
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 concise, front-loaded with purpose, and every sentence adds value: scope, date rules, missing-data policy, TARIC limitation, and result metadata. No redundant or 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?
The tool is complex (7 params, layered duty rules), but the description covers the core calculation logic, exceptions, data handling, and output guarantees. With an output schema present, return values need not be described. The description is sufficiently complete for an agent to understand what this tool does and how to invoke it correctly.
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% so baseline is 3. The description adds meaning by defining 'low-value' (≤ EUR 150), explaining the date-dependent duty relief and EUR 3 fee (relevant to asOfDate), and clarifying that TARIC does not include national VAT/excise (relevant to taricCandidate and destinationVatRatePercent). This enriches parameter understanding beyond schema descriptions.
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 estimates landed cost for low-value consignments (≤ EUR 150) to an EU state, with specific verb 'estimate' and resource 'landed cost'. It distinguishes from siblings by focusing on cost calculation rather than checking measures, preparing receipts, searching codes, or validating EORI.
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 clear context: low-value consignments to EU states on a given date. It implies when to use (within the EUR 150 threshold) but does not explicitly name alternatives or exclusions. The caveat about TARIC lacking national VAT/excise adds partial usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
prepare_import_preflight_receiptPrepare an import-preflight receiptARead-onlyInspect
Bundle the preflight checks (EORI, candidate classification, measures, cost) into one idempotent Ed25519-signed receipt committing to the inputs, sources, retrieval times and validity dates — provable evidence of WHAT was checked and WHEN. Attests the checks, not a compliance or clearance outcome. Read-only preflight; not customs/tax/legal advice, not a customs decision or clearance.
| Name | Required | Description | Default |
|---|---|---|---|
| bundle | Yes | The preflight results to attest (EORI/classification/measures/cost). | |
| createdAt | Yes | ISO timestamp the bundle was assembled. |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| billing | Yes | |
| product | Yes | |
| receipt | Yes | |
| decision | Yes | |
| retryable | Yes | |
| capability | Yes | |
| provenance | Yes | |
| generatedAt | Yes | |
| limitations | Yes | |
| schemaVersion | Yes | |
| receiptEnvelope | No | |
| decisionCategory | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnlyHint=true, destructiveHint=false), the description discloses important behavioral traits: idempotency, Ed25519 signing, commitment to inputs/sources/times/dates, and the scope of attestation (checks, not compliance outcomes). This significantly enriches the agent's understanding of the tool's side effects and guarantees.
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 dense but efficient. It front-loads the primary action and packs critical details (idempotent, signed, read-only, legal disclaimer) into two coherent sentences with no filler. Every clause serves a purpose.
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 the tool's moderate complexity (two parameters, nested bundle object, output schema present) and rich annotations, the description is complete. It covers purpose, behavior, limitations, and the non-decision status, leaving no significant ambiguity for an agent deciding to invoke it.
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% (both bundle and createdAt have detailed descriptions). The description adds meaning by explaining that the bundle contains preflight results and that the receipt commits to inputs, sources, retrieval times, and validity dates, which clarifies the expected content of the 'bundle' parameter beyond the schema's brief mention.
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 specifies a clear action ('Bundle the preflight checks ... into one idempotent Ed25519-signed receipt') and resource (receipt). It distinguishes itself from sibling tools by focusing on packaging all preflight checks into a single attestation, rather than performing individual checks like EORI validation or cost estimation.
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 clear context for when to use the tool (after preflight checks, to create provable evidence) and explicitly states exclusions ('not a customs decision or clearance', 'not customs/tax/legal advice'). It does not explicitly name alternative tools, but the sibling list makes it clear that individual check tools are alternatives for specific checks.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_taric_codesSearch candidate TARIC classificationsARead-onlyInspect
From a plain-language product description, return CANDIDATE TARIC/CN codes from a dated TARIC snapshot, ranked with the evidence used. Returns 'needs_review' (candidates to confirm) or 'unavailable' when no snapshot is provisioned — never an invented code. Classifications/measures are CANDIDATES for a declarant to confirm; only a BTI binds. TARIC carries no national VAT/excise — those are separate. Every result carries its source, retrieval time and validity window.
| Name | Required | Description | Default |
|---|---|---|---|
| knownProperties | No | Optional known attributes (material, use, form). | |
| productDescription | No | Plain-language description of the good. |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| billing | Yes | |
| product | Yes | |
| receipt | Yes | |
| decision | Yes | |
| retryable | Yes | |
| capability | Yes | |
| provenance | Yes | |
| generatedAt | Yes | |
| limitations | Yes | |
| schemaVersion | Yes | |
| receiptEnvelope | No | |
| decisionCategory | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnly, non-destructive), the description adds significant behavioral details: it returns 'needs_review' or 'unavailable', never invented codes, always includes source, retrieval time, and validity window, and clarifies that only a BTI binds. This provides rich context not captured in annotations, and aligns with them.
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, front-loaded with the core purpose in the first sentence. Each subsequent sentence adds crucial caveats and behavioral guarantees without redundancy, making it highly concise and well-structured.
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 the tool's complexity, the description covers return conditions (needs_review/unavailable), data provenance (dated snapshot, source, retrieval time, validity), limitations (BTI binding, no VAT/excise), and safety (never invented). The output schema handles return structure, so the description is comprehensive.
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%, so parameters are already described (productDescription and knownProperties). The description only restates 'plain-language product description' without adding new semantics for either parameter. It does not clarify how knownProperties influences ranking or evidence, so it stays at baseline.
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: returning candidate TARIC/CN codes from a plain-language product description, ranked with evidence. This distinguishes it from sibling tools which handle measures, cost estimation, preflight receipts, and EORI validation, making the purpose unambiguous.
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: from a plain-language product description, get candidate codes. It also provides when-not guidance by stating TARIC carries no national VAT/excise, signaling users should seek separate tools for those. However, it does not explicitly name alternative sibling tools, so it lacks explicit exclusions/alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
validate_eoriValidate an EORI numberARead-onlyInspect
Structural check of an EORI number and, when the EU EOS provider is configured, an authoritative existence check. Provider outage or unknown status returns 'unavailable'/'needs_review', never a false 'invalid'. Structural validity is not proof of customs authorisation. Read-only preflight; not customs/tax/legal advice, not a customs decision or clearance.
| Name | Required | Description | Default |
|---|---|---|---|
| eori | No | An EORI number, e.g. "BE0123456749". |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| billing | Yes | |
| product | Yes | |
| receipt | Yes | |
| decision | Yes | |
| retryable | Yes | |
| capability | Yes | |
| provenance | Yes | |
| generatedAt | Yes | |
| limitations | Yes | |
| schemaVersion | Yes | |
| receiptEnvelope | No | |
| decisionCategory | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnlyHint, openWorldHint, destructiveHint), the description discloses critical behavior under provider outage or unknown status, stating it returns 'unavailable'/'needs_review' and never a false 'invalid'. It also clarifies the configuration dependency and disclaims legal/customs decision authority, adding substantial transparency.
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, front-loaded with the core purpose, and every sentence contributes unique value (function, edge-case behavior, limitations). No redundant or filler content exists.
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 the single-parameter input, existing output schema, and annotations, the description covers the key operational aspects: conditional behavior, provider unavailability, the meaning of structural validity, and disclaimers. It is sufficiently complete for an agent to understand when and how to use it.
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 input schema fully describes the 'eori' parameter with an example and length constraints (100% coverage). The description does not add further parameter-level semantics beyond the schema, so the baseline of 3 is appropriate.
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 explicitly states the tool performs a 'structural check' and, conditionally, an 'authoritative existence check' of an EORI number. This clearly differentiates it from siblings that handle import measures, costs, receipts, and tariff codes.
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 clear context that this is a read-only preflight used for EORI validation, and it cautions against relying on structural validity as proof of customs authorisation. However, it does not explicitly name alternative tools for exclusion, 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.
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
- Flicense-qualityAmaintenanceRead-only MCP server that performs deterministic local preflights of agent-payment boundary documents and x402 v2 PaymentRequired JSON, and prepares unsubmitted public quote-request drafts without network calls or fund movement.
- AlicenseAqualityAmaintenanceModel Context Protocol (MCP) server for Belgian Electronic Invoicing (Peppol BIS 3.0 / PINT-BE / Mercurius). Provides tools to validate, generate, and transform UBL 2.1 e-invoices, and look up BCE/KBO enterprise data and Peppol participants.7Apache 2.0
- Alicense-qualityCmaintenanceMCP server that provides read-only business operations tools: list businesses, get status, identify missing inputs, and prepare email drafts/attachment manifests from synthetic evidence, with strict no-send/no-write safeguards.Apache 2.0
- Flicense-qualityBmaintenanceProvides IaC auditing across Docker Compose, Dockerfile, and GitHub Actions with 64 checks, plus HU postcode validation, via a single MCP endpoint with pay-per-event billing.