Skip to main content
Glama
rehan1020

mcp-india-stack

by rehan1020

bulk_validate_gstin

Read-onlyIdempotent

Batch-validate up to 500 GSTINs in one call with parallel execution, receiving per-GSTIN results and counts to simplify vendor onboarding and reconciliation.

Instructions

Validate multiple GSTINs in parallel using ThreadPoolExecutor.

Use when batch-validating vendor GSTINs for onboarding or reconciliation. Reduces N serial calls to ~N/10 parallel batches.

Args: gstins: List of 15-character GSTIN strings.

Returns: Standard envelope with per-GSTIN results, valid/invalid counts.

Notes: Max 500 GSTINs per call. Configurable via MCP_INDIA_STACK_BULK_WORKERS. Individual validation errors don't fail the entire batch.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
gstinsYesList of GSTINs to validate (max 500)

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed4 schema fields changedv0.5.0
    • removedInput schema / additionalProperties
      Removed value: -false
    • addedInput schema / properties / gstins / title
      Added value: +"Gstins"
    • addedInput schema / title
      Added value: +"bulk_validate_gstinArguments"
    • addedOutput schema / title
      Added value: +"bulk_validate_gstinDictOutput"
  2. First observedv0.3.0

TDQS

A4.7/5.0
Behavior5/5

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

Even though readOnlyHint and idempotentHint already indicate this is a safe, repeatable census-style operation, the description adds meaningful behavioral detail: execution uses a ThreadPoolExecutor, batches scale to ~N/10 parallel calls, up to 500 GSTINs are allowed per call, and individual validation errors do not fail the entire batch. This is exactly the kind of context beyond annotations that helps an agent invoke it correctly.

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 compact, well-sectioned with Args/Returns/Notes, and front-loaded with the core action and use case. Every sentence carries useful information: parallel execution, typical use case, limit, configurability, and partial failure behavior. No filler or redundant repetition.

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 single-parameter validation tool with a full output schema, this description is complete. It tells the agent what the operation does, when to use it, the input format, the call limit, parallelization behavior, and what happens on partial errors. Nothing necessary for correct invocation 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?

The schema already describes the single gstins parameter as a list of GSTINs with a max of 500, and schema coverage is 100%. The description adds an important extra constraint — each string must be 15 characters — and clarifies that results are returned per GSTIN, adding meaningful nuance beyond the schema alone.

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 states a specific action — validating multiple GSTINs in parallel — and clearly distinguishes this bulk operation from the single-value sibling tools like validate_gstin. The resource and scope are unambiguous: multiple GSTIN values are batch-validated rather than validated one at a time.

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 says to 'Use when batch-validating vendor GSTINs for onboarding or reconciliation' and explains that it replaces many serial calls with a single parallel batch. This gives clear context, though it does not explicitly name validate_gstin as the alternative for single-item validation or mention when a small batch should use the singular path instead.

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

Deploy Server

Other Tools