Skip to main content
Glama
giltiq

Giltiq MCP Server

by giltiq

@giltiq/mcp

MCP server for EU VAT validation with multi-source reliability (VIES + Germany's BZSt), automatic failover, and legally binding qualified confirmations per §18e UStG. Works when VIES is down. No other MCP server provides this.

Install

npx @giltiq/mcp

Related MCP server: vies-smoother

Configure

Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "giltiq": {
      "command": "npx",
      "args": ["-y", "@giltiq/mcp"],
      "env": {
        "GILTIQ_API_KEY": "gq_live_your_key_here"
      }
    }
  }
}

Cursor

Add to .cursor/mcp.json:

{
  "mcpServers": {
    "giltiq": {
      "command": "npx",
      "args": ["-y", "@giltiq/mcp"],
      "env": {
        "GILTIQ_API_KEY": "gq_live_your_key_here"
      }
    }
  }
}

Windsurf

Add to ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "giltiq": {
      "command": "npx",
      "args": ["-y", "@giltiq/mcp"],
      "env": {
        "GILTIQ_API_KEY": "gq_live_your_key_here"
      }
    }
  }
}

No API key? The server works without one in anonymous mode (10 free validations, VIES only). Set GILTIQ_API_KEY to unlock 100 calls/month, qualified confirmations, and usage tracking.

Tools

Tool

Description

validate_vat_id

Validate an EU VAT ID against VIES + BZSt with automatic failover and cached fallback. Returns company data and source freshness.

qualified_confirmation

Request a legally binding BZSt qualified confirmation per §18e UStG for audit-proof cross-border VAT exemption. Returns match results and a receipt_id for audit retrieval.

get_qualified_confirmation

Retrieve a past qualified confirmation receipt by receipt_id. Use for §18e UStG audit evidence.

list_qualified_confirmations

List qualified confirmation receipts you've issued, newest first. Filter by target_vat_id to find past audits of a specific customer.

check_api_status

Check real-time availability and latency of VIES and BZSt upstream sources.

get_usage

Get current API usage: calls used, monthly limit, tier, and reset date.

Environment Variables

Variable

Required

Description

GILTIQ_API_KEY

No

API key for authenticated access. Without it, runs in anonymous mode (10 lifetime calls). Get one free at giltiq.de.

GILTIQ_API_URL

No

Override the API base URL (default: https://api.giltiq.de).

License

MIT


Powered by Giltiq — the only VAT validation API with legally binding German tax compliance.

Available Tools

2 tools
check_api_statusA

Check real-time availability and latency of VIES and BZSt upstream sources. Shows which source is active, whether failover is engaged, and per-source latency in milliseconds.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.9/5.0
Behavior4/5

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

No annotations are provided, so the description carries the full burden. It discloses that the tool reports active source, failover state, and latency—which are read-only diagnostic behaviors. There's no mention of side effects, but given the read-only nature described, this is reasonably transparent for a status-check tool.

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?

Single sentence, front-loaded with the core purpose, and efficiently lists what it reports (active source, failover, latency). Zero waste.

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?

The tool has no inputs, no output schema, and no annotations, making it a simple diagnostic call. The description explains the tool's output scope well (active source, failover, per-source latency). Could specify whether this is an administrative/ops tool or if it has rate limits, but this is a minor gap for a zero-parameter status checker.

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 has zero parameters and 100% schema coverage (empty object), so there's nothing to describe. The baseline for 0 params is 4; the description fully explains what the tool returns without needing parameter details.

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 clearly states the tool checks real-time availability/latency of VIES and BZSt upstream sources, using specific verbs ('check', 'shows'). It distinguishes from the sibling tool validate_vat_id, though it doesn't explicitly name the alternative.

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 this is a monitoring/diagnostics tool used to check source availability, which contrasts with validate_vat_id's purpose. However, it doesn't explicitly state when to use this vs the alternative or when NOT to use it.

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

validate_vat_idA

Validate an EU VAT ID against multiple sources (VIES + Germany's BZSt) with automatic failover and cached fallback. Returns structured company data with parsed address and source freshness indicator. Works when VIES is down.

ParametersJSON Schema
NameRequiredDescriptionDefault
vat_idYesEU VAT ID to validate (e.g. DE811575812)
force_liveNoSkip cache and query validation source in real time

TDQS

A4.2/5.0
Behavior4/5

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

The description discloses key behavioral traits: automatic failover across two sources, cached fallback behavior, and return characteristics (structured company data with parsed address and source freshness indicator). With no annotations provided, the description carries the full burden and does disclose meaningful behavioral context about how the tool operates and what it returns.

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, all information-dense and meaningful. The description front-loads the core purpose before behavioral details, and every sentence earns its place — multi-source validation, failover, return characteristics, and a reliability note.

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 tool with 2 params, 100% schema coverage, and no output schema, the description covers the core value proposition well. It explains the multi-source strategy, failover, caching, and return format. It could slightly benefit from noting what happens on total validation failure (both sources down), but given the simplicity of the interface, this is adequately complete.

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 parameters are documented in the schema. The description adds some context about the force_live parameter by mentioning 'cached fallback' and the description's 'Works when VIES is down' hints at the failover. However, the description doesn't add substantial new meaning beyond the schema's own param descriptions, so baseline 3 applies.

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?

The description clearly states the verb ('Validate') + resource ('EU VAT ID') and describes its specific behavior: checking multiple sources (VIES + BZSt) with automatic failover and cached fallback. This clearly distinguishes it from the sibling tool 'check_api_status' — this tool validates actual VAT IDs while the sibling checks API status.

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?

The description states when it works ('Works when VIES is down') and implies its multi-source advantage, which signals a use case where single-source tools would fail. However, it doesn't explicitly state when NOT to use it or name alternatives beyond the implied sibling distinction. The 'force_live' param also implies there's a cache-fallback mode that's the default.

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. 2 tool updatesv0.1.0
    • First observedcheck_api_status
    • First observedvalidate_vat_id

TDQS

A3.8/5.0

Scored across 2 tools

Disambiguation4/5

The two tools have clearly distinct purposes: one validates VAT IDs, the other checks upstream API status. There is minor potential overlap in that both relate to the VAT validation domain, but the actions are unambiguous and not confusable.

Naming Consistency5/5

Both tools follow a consistent verb_noun pattern (validate_vat_id, check_api_status). The naming style is uniform snake_case with descriptive verbs, making the pattern predictable and clear.

Tool Count2/5

With only 2 tools, the server feels thin for a VAT validation service. A typical complete server would include additional operations like fetching supported country codes, retrieving detailed validation history, or parsing raw responses, making this surface minimal.

Completeness2/5

The server provides core validation and a status-check companion, but lacks obvious supporting operations such as listing supported jurisdictions, retrieving cached/failed validations history, or handling bulk validations. The domain is narrow and mostly covered, but agents cannot perform related common tasks.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    SLA'd EU VAT number validation for AI agents via VIES, with caching and circuit-breaking to handle flaky upstream, returning valid/invalid/unavailable responses.
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    Local MCP server for validating EU VAT numbers using the official VIES API. Enables AI to check VAT validity and optionally retrieve consultation numbers for legal proof.
    2
    MIT
  • F
    license
    Not graded
    quality
    B
    maintenance
    Validates EU and Northern Ireland VAT numbers against the official VIES service, returning validity, company name and address, and distinguishing invalid from unavailable. Supports bulk checking up to 100 VAT IDs.
    -