Skip to main content
Glama
zvmzaretsky

FabTally Valid MCP Server

by zvmzaretsky

Server Quality Checklist

67%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v1.0.0

  • Disambiguation5/5

    Each tool targets a distinct entity type (VAT, IBAN, email, location, VIN) with no overlap. The descriptions clearly differentiate the validation/lookup purpose of each.

    Naming Consistency4/5

    Three tools follow the validate_<entity> pattern, while two use different verbs (geo_lookup, decode_vin). The pattern is still predictable and readable, but minor inconsistency exists.

    Tool Count5/5

    Five tools is a well-scoped number for a validation/lookup server. Each tool has a clear, distinct function and none feel redundant or excessive.

    Completeness4/5

    The server covers common validation and lookup needs well. A few additional validators (phone, credit card) could be added, but the current set is coherent and functional for its apparent purpose.

  • Average 4.5/5 across 5 of 5 tools scored.

    See the Tool Scores section below for per-tool breakdowns.

    • 0 of 1 community issues answered or closed in the last 6 months
    • 1 commit in the last 12 weeks
    • No stable releases found
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI is passing
  • This repository is licensed under MIT License.

  • This repository includes a README.md file.

  • No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.

    Tip: use the "Try in Browser" feature on the server page to seed initial usage.

  • Add a glama.json file to provide metadata about your server.

  • If you are the author, simply .

    If the server belongs to an organization, first add glama.json to the root of your repository:

    {
      "$schema": "https://glama.ai/mcp/schemas/server.json",
      "maintainers": [
        "your-github-username"
      ]
    }

    Then . Browse examples.

  • Add related servers to improve discoverability.

How to sync the server with GitHub?

Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.

To manually sync the server, click the "Sync Server" button in the MCP server admin interface.

How is the quality score calculated?

The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).

Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.

Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).

Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.

Tool Scores

  • Behavior4/5

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

    No annotations are provided, so the description carries full responsibility. It discloses the paid nature ($0.002), the x402 payment mechanism, the fact that a challenge is returned without payment, and the VIN-only limitation. This goes beyond the minimum but does not cover rate limits or error behavior, which would be expected for a paid API.

    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?

    The description is three sentences and front-loaded with the critical 'PAID $0.002' notice. Each sentence adds important information: the pricing/payment model, the core functionality and output examples, and the VIN-only restriction plus payment flow. No wasted words.

    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 must explain return values, and it does so by listing the validation and decode results. It covers the payment challenge behavior and the VIN-only scope. While it could mention error cases or rate limits, the provided context is sufficient for an agent to invoke the tool initially. A minor gap is not specifying the exact response format beyond examples.

    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?

    The input schema already provides complete descriptions for both parameters (vin: 17-character VIN excluding I/O/Q; x_payment: base64 x402 payload forwarded as X-PAYMENT). The description adds examples of decode fields (make, model, year, etc.) but not new parameter-specific detail. Since schema coverage is 100%, the baseline of 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?

    The description clearly states the tool decodes a Vehicle Identification Number and lists the specific outputs (17-char format, check-digit validation, full decode via NHTSA vPIC API with make/model/year/body class/engine/etc.). It distinguishes this from sibling validation tools (VAT, IBAN, email, geo lookup) through the unique resource and API.

    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 explicitly notes the tool is VIN-only and never converts plates to owners, which sets a clear boundary. It also explains the payment flow (without payment returns an x402 challenge; pass x_payment to settle), giving practical usage context. However, it does not explicitly compare against sibling tools or mention alternative VIN services, though the context is sufficient.

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

  • Behavior5/5

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

    With no annotations, the description fully discloses the cost ($0.003, USDC on Base), the ~1h caching to handle flaky VIES, the return of company name/address, and the 402 challenge when unpaid. This is exceptional transparency.

    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?

    The description is dense and front-loads key information (cost, purpose). Minor promotional language ('FLAGSHIP') and some redundant phrasing keep it from being perfectly concise, but every sentence contributes.

    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 description covers the main action, payment flow, and expected outputs (valid/registered, company info, or challenge). Although there is no output schema, the description adequately sets expectations for return values and behavior.

    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?

    The input schema already documents all three parameters with 100% coverage. The description adds minimal semantic value beyond restating the required inputs and the role of x_payment, so it meets the baseline without exceeding it.

    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 tool validates EU/EEA VAT numbers with a specific verb and resource. It details the two-stage process (format/checksum pre-check plus live VIES lookup) and implicitly distinguishes it from sibling validators like validate_iban and validate_email.

    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 provides clear context on how to use the tool, including the payment prerequisite and the fallback to a 402 challenge. It does not explicitly name alternatives, but the domain-specificity makes the intended use obvious.

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

  • Behavior5/5

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

    With no annotations, the description carries full behavioral disclosure. It reveals the paid nature, the challenge flow, pure-offline behavior, and exactly what data is returned. This gives the agent a strong understanding of side effects and prerequisites.

    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 dense sentences with no filler. Front-loaded with payment warning, then clear purpose, then payment behavior. Every word earns its place.

    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?

    For a paid tool with no output schema, the description is remarkably complete: it explains purpose, inputs, outputs, payment/challenge flow, and offline nature. Enough for an agent to select and invoke correctly without additional context.

    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 covers 100% of parameters with descriptions, so baseline is 3. The description adds context about the IBAN parameter (e.g., bank identifier extraction) and the x_payment parameter via the challenge flow, but does not significantly enhance parameter-level understanding beyond the schema.

    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 uses a specific verb ('Validate') plus resource ('an IBAN') and enumerates concrete outputs: ISO 13616 length, mod-97 checksum validation, country, formatting, and bank identifier. This clearly distinguishes it from sibling tools like validate_vat or validate_email.

    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?

    It clearly describes the context (pure-offline, paid, returns x402 challenge without payment), but does not explicitly name alternative tools or state when not to use it. The sibling names make the intended use obvious, yet explicit exclusions are missing.

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

  • Behavior5/5

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

    With no annotations, the description carries full responsibility. It discloses the payment requirement, x402 challenge flow, statelessness, non-PII handling, no email storage, and no SMTP probing. This is comprehensive and gives the agent accurate expectations.

    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?

    The description is dense but well-structured. It front-loads cost and purpose, lists checks, then covers statelessness and payment flow. Every sentence adds unique information, with no fluff.

    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?

    For a paid tool with no output schema and no annotations, the description is remarkably complete. It explains the challenge-response payment flow, the types of results returned, and the stateless/non-PII guarantee, giving the agent enough context to select and invoke correctly.

    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% with basic descriptions for both parameters. The tool description adds meaningful context about x_payment: that omitting it returns a 402 challenge and supplying it settles the call. This goes beyond the schema's definition.

    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' and the resource 'email address', then enumerates the specific checks (syntax, MX, disposable, role). This distinguishes it from sibling validation tools (VAT, IBAN, VIN, geo) by domain and functionality.

    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 intended use is implied: validating email addresses. It explicitly notes the tool does NOT probe SMTP mailboxes, providing a useful exclusion. However, it does not name alternative tools for mailbox checks or discuss when to choose this over other validators, so it falls short of 5.

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

  • Behavior5/5

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

    With no annotations provided, the description carries full responsibility for behavioral disclosure. It explicitly states the tool is paid ($0.002), describes the x402 challenge that occurs without payment, and explains that passing x_payment settles the call. It also notes the bundled dataset has no per-day limits. This gives the agent a complete behavioral model.

    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?

    The description is three sentences long, front-loads the cost, and efficiently covers input formats, output details, and the 402/challenge/payment flow. There is no redundancy or fluff; every sentence contributes meaningful information.

    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?

    For a lookup tool with no output schema, this description is complete: it lists all types of returned data (names, codes, hierarchy, population, coordinates), explains the two input modes, discloses the payment requirement and settlement process, and mentions dataset characteristics. The agent has all necessary context to invoke and interpret the tool correctly.

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

    Parameters5/5

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

    The schema provides 100% coverage for individual parameters, but the description adds critical cross-parameter semantics: it explains that the free-text 'query' can be used OR the structured 'country/state/city' fields, and clarifies the exact role of 'x_payment' in the payment flow. This goes beyond the schema's per-field descriptions.

    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 tool's purpose: 'Resolve a place against a bundled open dataset' and lists specific outputs (ISO 3166-1/-2 codes, hierarchy, population, coordinates). This distinguishes it from sibling validation tools (VAT, IBAN, email, VIN) which operate in entirely different domains.

    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 provides clear context for when to use the tool (geographic lookups) and explains the payment workflow. However, it does not explicitly mention when not to use it or name alternatives among siblings. Since the sibling tools are for different validation tasks, the use case is self-evident, but explicit exclusions would earn a 5.

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

GitHub Badge

Glama performs regular codebase and documentation scans to:

  • Confirm that the MCP server is working as expected.
  • Confirm that there are no obvious security issues.
  • Evaluate tool definition quality.

Our badge communicates server capabilities, safety, and installation instructions.

Card Badge

validation-suite-mcp MCP server

Copy to your README.md:

Score Badge

validation-suite-mcp MCP server

Copy to your README.md:

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/zvmzaretsky/validation-suite-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server