Skip to main content
Glama

VITNA — Agent Compliance Preflight

Server Details

Pre-action allow/deny for AI agents. 24 statutes, 13 jurisdictions: EU AI Act, GDPR, DPDP.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL
Repository
COSTRINITY/vitna-compliance-mcp
GitHub Stars
0
Server Listing
@costrinity/vitna-compliance-mcp

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

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.

100% free. Your data is private.
Tool DescriptionsA

Average 4.3/5 across 22 of 22 tools scored. Lowest: 3.7/5.

Server CoherenceB
Disambiguation4/5

Each tool targets a distinct compliance scenario: identifier validation, cross-border transfer status, sectoral applicability, breach classification, consent verification, etc. Descriptions explicitly cross-reference each other to prevent misselection, and overlapping-looking tools like us_state_breach_deadline and breach_classify are clearly differentiated by scope.

Naming Consistency3/5

Most tools follow a [domain]_[action] pattern, but the action vocabulary is inconsistent: validate, classify, check, get, test, mask, help, preflight, and some names are pure noun phrases (e.g., us_state_breach_deadline). The lack of a uniform verb_noun convention makes the naming less predictable, though still readable.

Tool Count3/5

22 tools is on the high side for a typical MCP server, but the server covers a broad multi-jurisdiction domain, and many tools are validators for different identifier types (CPF, GSTIN, IBAN, SIN). It feels somewhat heavy, and some consolidation could improve scoping, but the count is justified by the breadth of compliance scenarios.

Completeness3/5

The surface covers key preflight scenarios: identifier validation, cross-border transfer for India/Japan, sectoral checks for India/US, DPIA threshold, AI Act, breach classification, consent verification, privacy notice generation, and a safety preflight. However, there are notable gaps: no general GDPR/CPRA compliance assessment, no data subject rights tools, no data retention checks, and cross-border coverage is limited to two countries.

Available Tools

22 tools
aadhaar_maskAInspect

Mask + Verhoeff-validate an Aadhaar number. Returns masked form, validity, and an owner-scoped reference token. No persistence of the raw value. Stateless validator: records no decision and leaves no dashboard timeline trace.

ParametersJSON Schema
NameRequiredDescriptionDefault
aadhaarYes
Behavior5/5

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

With no annotations, the description carries the full burden and does well: it explicitly discloses 'No persistence of the raw value' and 'Stateless validator: records no decision and leaves no dashboard timeline trace.' This clearly communicates side-effect-free behavior, which is valuable beyond the basic operation.

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 two sentences, front-loaded with the core purpose and then behavioral guarantees. Every word adds value; there is no redundancy or filler.

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?

Given the lack of an output schema, the description adequately explains the returns (masked form, validity, reference token) and the stateless nature. It doesn't detail error handling or the token's purpose, but for a simple one-parameter tool, this is largely 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?

The schema has 0% coverage for the parameter 'aadhaar', and while the description identifies it as 'an Aadhaar number', it does not provide details like 12-digit format or constraints. The mention of Verhoeff-validate adds some semantic hint about the validation logic, but it does not fully compensate for the schema's lack of information.

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 function: 'Mask + Verhoeff-validate an Aadhaar number.' It specifies the resource (Aadhaar number), the actions (mask and validate), and the outputs (masked form, validity, reference token), distinguishing it from siblings like cpf_validate or gstin_validate.

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 usage for masking and validating Aadhaar numbers, but it does not explicitly compare with alternatives or state when not to use. There is no mention of sibling tools, so the agent must infer the appropriate use case from the purpose alone.

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

ai_act_classifyAInspect

Before you build or ship an AI feature, check where it lands under the EU AI Act (Regulation 2024/1689). Describe the use case (with biometric / remote-identification / automated-decision / social-scoring / GPAI flags) and VITNA returns the risk tier (prohibited / high-risk / limited-risk / minimal-risk), GPAI obligations, and the per-tier obligations you would have to meet. A classification for you to act on: VITNA evaluates and records, it does not gate the build.

ParametersJSON Schema
NameRequiredDescriptionDefault
sectorsNo
use_caseYes
biometricNo
social_scoringNo
data_categoriesNo
general_purpose_aiNo
automated_decisionsNo
remote_identificationNo
Behavior4/5

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

With no annotations, the description carries the full burden of behavioral disclosure. It explicitly states that VITNA 'evaluates and records, it does not gate the build,' which is a key trait for a classification tool. It also discloses the outputs (risk tier, obligations). However, it does not mention any side effects beyond recording, or any limits on use, so it is not a 5.

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 three sentences, each serving a purpose: the trigger context, the input/output procedure, and a clarifying note about non-gating behavior. It is front-loaded with when to use it, and no sentence is wasted. It is slightly dense but appropriately concise.

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

Completeness3/5

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

The description covers the purpose, key input types, and output categories, but it does not detail the output structure or how the flags affect the classification. Since there is no output schema, more explanation of the return format would help an agent interpret the result. It is adequate but not fully complete for a tool with 8 parameters and no structured output definition.

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 schema has 8 parameters with 0% description coverage. The description compensates partially by naming the boolean flags (biometric, remote-identification, automated-decisions, social-scoring, GPAI) and instructing the user to include them. However, the 'sectors' and 'data_categories' arrays are left unexplained, and the exact impact of each flag on the classification is not detailed. It adds some meaning but leaves gaps.

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: to classify an AI use case under the EU AI Act and return the risk tier, GPAI obligations, and per-tier obligations. It uses a specific verb ('check', 'returns') and resource ('EU AI Act (Regulation 2024/1689)'), and it is distinct from sibling tools that handle breach classification, consent, or other compliance checks.

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 gives explicit timing for use ('Before you build or ship an AI feature') and instructs how to describe the use case with specific flags. It does not explicitly mention alternatives or exclusions, but the context is clear enough for an agent to know when this tool is appropriate, especially given the sibling tool set.

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

breach_classifyAInspect

After a security incident, check whether it is legally reportable before you decide how to respond. Give the incident facts (affected count, data categories, sensitivity, recovery state) and VITNA returns reportability + reasoning + the notification deadline + who to notify, across DPDP §8, GDPR Art 33, CPRA §1798.82, LGPD Art 48, PDPA §26B, and US-FED sectoral. This makes the full incident decision from the facts; for a quick per-US-state deadline/recipient/threshold table without incident facts, use us_state_breach_deadline. VITNA evaluates and records; acting on the result is up to you.

ParametersJSON Schema
NameRequiredDescriptionDefault
sensitivityYes
jurisdictionNo
affected_countYes
recovery_stateYes
data_categoriesYes
processing_purposeNo
Behavior4/5

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

With no annotations, the description carries the behavioral disclosure burden. It reveals that the tool returns reportability, reasoning, deadline, and who to notify, and that it 'evaluates and records' while leaving action to the user. This clarifies it is an advisory, non-executive tool, though the exact recording behavior remains vague.

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 front-loaded with the primary action, then explains inputs/outputs, and concludes with an alternative and a caveat. At three sentences it is slightly longer than the ideal but each sentence contributes distinct value, so no redundancy.

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?

Given the tool's cross-regulatory complexity and lack of an output schema, the description does a strong job explaining what the tool returns and when to use it. It covers the core use case and relevant alternative, making it sufficiently complete for agent invocation.

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 0%, so the description compensates by naming key input parameters: 'affected count, data categories, sensitivity, recovery state.' However, two optional fields (jurisdiction, processing_purpose) are not described, and no format details are provided beyond what the schema enums already show.

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 verb and resource: 'check whether it is legally reportable' after a security incident. It also distinguishes itself from sibling us_state_breach_deadline by focusing on full incident decisioning across multiple regulations rather than a quick state table.

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?

It explicitly says when to use the tool ('After a security incident, check whether it is legally reportable before you decide how to respond') and provides an alternative for a different use case: 'for a quick per-US-state deadline/recipient/threshold table without incident facts, use us_state_breach_deadline.'

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

cpf_validateAInspect

Validate a Brazilian CPF (mod-11 check digits, rejects all-same). Stateless validator: records no decision and leaves no dashboard timeline trace.

ParametersJSON Schema
NameRequiredDescriptionDefault
cpfYes
Behavior5/5

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

With no annotations provided, the description carries the full burden and does so excellently. It discloses the check algorithm, the rejection of all-same numbers, and the fact it is stateless with no recorded decision or dashboard trace—essential behavioral traits for an agent deciding to invoke it.

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?

Two sentences, front-loaded with the purpose, and every word adds value. No fluff or repetition of schema details.

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 simple validation tool with one parameter, the description covers purpose, algorithm, and side-effect profile. However, it lacks an explicit statement about the return value or output format, which would make it fully complete given there is no output schema.

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 input schema provides only a 'cpf' string with zero description coverage. The description adds meaning by identifying it as a Brazilian CPF and elaborating on the validation logic, though it does not specify accepted formats (e.g., with/without punctuation).

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 explicitly states 'Validate a Brazilian CPF' and specifies the algorithm (mod-11 check digits) and a key edge-case (rejects all-same). This clearly distinguishes it from sibling validators like gstin_validate or iban_validate.

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 clearly implies use for CPF validation and adds the stateless/no-trace context, which informs when to choose it (e.g., when side effects must be avoided). However, it does not explicitly name alternative tools or exclusion scenarios, 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.

dpia_threshold_checkAInspect

Before you start a new processing activity, check whether the law requires a DPIA first (GDPR Art 35 / DPDP §10 / LGPD Art 38). Give the purpose + data categories (and scale / systematic-monitoring / automated-decision / cross-border / vulnerable-subjects flags); returns dpia_required + the 9-criterion WP29 analysis + jurisdiction guidance, so you know whether to pause and assess before proceeding.

ParametersJSON Schema
NameRequiredDescriptionDefault
scaleNo
cross_borderNo
jurisdictionNo
data_categoriesYes
automated_decisionNo
processing_purposeYes
vulnerable_subjectsNo
systematic_monitoringNo
Behavior3/5

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

With no annotations, the description carries the full burden. It discloses that the tool returns an analysis ('dpia_required + the 9-criterion WP29 analysis + jurisdiction guidance') and implies it is advisory ('so you know whether to pause and assess'). However, it does not explain how optional flags are handled, what happens if jurisdiction is omitted, or any limitations of the analysis.

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?

Two dense sentences with no filler. The first sentence front-loads the purpose and legal references; the second efficiently lists inputs and outputs. Every phrase contributes to understanding.

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

Completeness3/5

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

The tool has 8 parameters and no output schema, so the description must compensate. It provides a good overview of the workflow, input categories, and high-level output, but it misses the jurisdiction input parameter and does not describe the structure of the '9-criterion WP29 analysis' or how flags influence the result. This is adequate but leaves gaps for a complex legal analysis 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?

The description names most input parameters (purpose, data categories, scale, systematic_monitoring, automated_decision, cross_border, vulnerable_subjects) and describes them as flags, but it omits the 'jurisdiction' parameter entirely. It also does not explain the format or allowed values (e.g., scale enum), leaving some semantics to the schema despite 0% schema description coverage.

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's purpose: checking whether a DPIA is required before starting processing, citing GDPR Art 35 / DPDP §10 / LGPD Art 38. This is a specific verb and resource, but it lacks an explicit comparison to sibling tools, so it falls short of a 5.

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 provides a clear temporal context: 'Before you start a new processing activity', indicating when to use the tool. It also implies the outcome ('pause and assess before proceeding'), but does not explicitly state when not to use it or name alternatives.

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

global_compliance_mapAInspect

Master catalogue of every privacy/security/sectoral regime VITNA has fabric for (28 entries covering 24 named statutes). Stateless lookup: records no decision and leaves no dashboard timeline trace.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior4/5

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

No annotations are provided, so the description carries the burden. It explicitly discloses the stateless nature, noting it records no decision and leaves no timeline trace, which is valuable behavior for an agent to know. It also quantifies the content (28 entries, 24 statutes). Missing details on return format or permissions are minor.

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?

Two sentences: first states purpose and content, second states side-effect-free behavior. No fluff, front-loaded, and 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 zero-parameter reference tool, the description is complete: it says what the tool is, what data it contains, and what side effects it has. No output schema exists, but 'catalogue' implies a list of entries, which is sufficient for an agent to invoke it.

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, so the baseline is 4. The description confirms the stateless lookup nature, but with no parameters to describe, it doesn't need to add further parameter semantics.

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 defines the tool as a 'Master catalogue' of privacy/security/sectoral regimes, with a specific count (28 entries, 24 statutes). It also calls it a 'Stateless lookup,' clearly distinguishing it from the analysis/classification siblings like ai_act_classify and breach_classify.

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 provides context that this is a stateless lookup ('records no decision and leaves no dashboard timeline trace'), implying it's for reference rather than decision-making. However, it doesn't explicitly name alternative tools or specify exactly when to choose this over a specific regulatory check.

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

gstin_validateAInspect

Validate a GSTIN format + mod-36 check digit; returns state code lookup. Stateless validator: records no decision and leaves no dashboard timeline trace.

ParametersJSON Schema
NameRequiredDescriptionDefault
gstinYes
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 proactively discloses the stateless nature ('records no decision and leaves no dashboard timeline trace'), which is a meaningful behavioral trait. It also mentions what the tool returns (state code lookup), though return format details are lacking.

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?

Two sentences, no fluff. The primary purpose is front-loaded, and every sentence contributes value (what it validates, what it returns, and its statelessness).

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?

Given the simple tool (one param, no output schema, no annotations), the description adequately covers the core behavior, including the stateless side-effect. It leaves some ambiguity about the exact return format, but the overall purpose is clear.

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 coverage is 0% and there is only one parameter, 'gstin'. The description says 'Validate a GSTIN format', which tells the user to pass a GSTIN string, but does not provide format examples or constraints. The parameter name is self-explanatory, so this is borderline adequate.

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 a GSTIN and specifically mentions the mod-36 check digit and state code lookup. This is a specific verb+resource combination that distinguishes it from sibling validators for other identifiers (e.g., cpf_validate, iban_validate, sin_validate).

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 implies the tool is used when one needs to validate a GSTIN and mentions stateless behavior, providing clear context. It does not explicitly mention alternatives or when-not-to-use, but the specific naming and purpose make the intended usage clear.

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

iban_validateAInspect

Validate an IBAN format + ISO 7064 mod-97 check digit; supports 71 countries. Stateless validator: records no decision and leaves no dashboard timeline trace.

ParametersJSON Schema
NameRequiredDescriptionDefault
ibanYes
Behavior5/5

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

With no annotations, the description carries the full transparency burden; it explicitly states 'Stateless validator: records no decision and leaves no dashboard timeline trace,' disclosing the absence of side effects, and scopes behavior to 71 countries.

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 information-dense sentence; front-loaded with action and object, with scope and side-effect disclosure in a second clause. 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?

Covers purpose, algorithm, country scope, and side-effect profile for a simple one-parameter validator. It stops short of specifying return-value shape, but the absence of an output schema and low complexity keep this from being a major gap.

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

Parameters2/5

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

The one parameter is only a bare string named 'iban'; the description adds no format examples, normalization rules, or accepted input constraints. Since schema coverage is 0%, the description fails to compensate for this gap.

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 opens with a specific verb and object ('Validate an IBAN') and adds technical scope ('ISO 7064 mod-97 check digit; supports 71 countries'), making it clearly distinct from sibling validators like cpf_validate or sin_validate.

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 implies IBAN validation is the use case, but it does not explicitly contrast with other validators, state when not to use it, or mention prerequisites. Clear context is present, though exclusions are absent.

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

india_cross_border_statusAInspect

Before you transfer personal data out of India, check the destination country's DPDP §16 status (permitted / restricted / sectoral_restricted) plus any RBI / SEBI / IRDAI caveats. Pass the ISO-3166 alpha-2 country code (e.g. US). Stateless lookup: records no decision and leaves no dashboard timeline trace.

ParametersJSON Schema
NameRequiredDescriptionDefault
countryYesISO-3166 alpha-2 (e.g. US).
Behavior5/5

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

With no annotations provided, the description fully owns behavioral disclosure. It explicitly states that it is a stateless lookup, records no decision, and leaves no dashboard timeline trace, covering side effects and privacy implications. This goes well beyond the minimum.

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 two tight sentences, front-loaded with the primary purpose and followed by essential usage context and behavioral notes. Every clause adds value with no redundancy or filler.

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 simple one-parameter lookup with no output schema, the description is remarkably complete: it states when to use, what it returns (statuses and caveats), the input format, and side effects. No obvious gaps remain.

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 schema already provides 100% coverage for the single parameter 'country' with 'ISO-3166 alpha-2 (e.g. US)'. The description repeats essentially the same instruction without adding new semantic detail, so it neither helps nor hurts beyond the schema baseline.

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 verb ('check') and resource ('destination country's DPDP §16 status'), clearly distinguishing it from sibling tools like japan_cross_border_status or india_sectoral_check. It also enumerates the possible statuses, 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.

Usage Guidelines4/5

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

It gives a clear when-to-use context ('Before you transfer personal data out of India') and input instruction ('Pass the ISO-3166 alpha-2 country code'). It does not explicitly mention when not to use or name alternatives, but the country-specific nature strongly implies differentiation from sibling tools.

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

india_regulators_directoryAInspect

Static reference directory of Indian data and sector regulators (DPB, RBI, SEBI, IRDAI, TRAI, DoT, PFRDA, MeitY, MCA), optionally filtered by sector: a lookup of who exists and what they cover. To instead work out which of them apply to a specific processing activity, use india_sectoral_check. Stateless lookup: records no decision and leaves no dashboard timeline trace.

ParametersJSON Schema
NameRequiredDescriptionDefault
sectorNo
Behavior4/5

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

With no annotations provided, the description carries the full burden. It discloses that the tool is stateless, records no decision, and leaves no dashboard timeline trace, which is valuable behavioral context beyond the basic 'lookup' description. It also implies read-only, static nature, though it doesn't detail return format or update frequency, missing some extra context.

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, each earning its place: the first states the core function, the second provides a direct alternative, and the third adds behavioral transparency. It is front-loaded with the purpose, uses no fluff, and is appropriately sized for the tool's simplicity.

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 simple tool with one optional parameter and no output schema, the description is complete. It explains what the tool does, when to use it, what it returns conceptually (who exists and what they cover), and its behavioral side effects. No significant gaps are present for the tool's complexity.

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 schema only defines an optional 'sector' string with no description or enum, and schema description coverage is 0%. The description adds that the tool is 'optionally filtered by sector' but does not enumerate valid sector values. The list of regulator names (SEBI, RBI, etc.) hints at possible sectors, but the description does not fully compensate for the lack of parameter documentation.

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 identifies the tool as a static reference directory for Indian regulators, with a specific verb ('lookup') and resource (regulators). It distinguishes itself from the sibling tool india_sectoral_check by explicitly stating the different purpose. The list of regulator acronyms adds specificity.

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?

The description gives explicit usage guidance: it states this is for looking up who exists and what they cover, and when you need to determine which regulators apply to a processing activity, it directs you to use india_sectoral_check. This is a clear when-to-use vs. alternative recommendation.

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

india_sectoral_checkAInspect

Before you process personal data under Indian law, find out which sectoral regulators actually bind your specific activity (RBI / SEBI / IRDAI / TRAI / DoT / PFRDA) from its processing profile, so you know whose rules apply before you act. This analyses your processing to say what applies; for a plain directory of every Indian regulator regardless of your activity, use india_regulators_directory.

ParametersJSON Schema
NameRequiredDescriptionDefault
sector_hintNo
data_categoriesYes
counterparty_typesNo
processing_purposeYes
Behavior3/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 of behavioral disclosure. It states it 'analyses your processing to say what applies', which explains the core behavior, but it does not disclose possibly important behavioral traits such as the return format, limitations, or whether it is advisory. This is a moderate level of transparency for a classification 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?

The description is two sentences, front-loaded with the key purpose and includes the alternative tool comparison without unnecessary filler. Every sentence adds value and it is easy to scan.

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

Completeness2/5

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

Given the tool has 4 parameters, zero schema coverage, no output schema, and no annotations, the description is incomplete for fully understanding how to use it. It provides purpose and usage guidance, but omits parameter semantics and return value expectations, which are necessary for correct invocation.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate, but it does not mention any of the four parameters (processing_purpose, data_categories, sector_hint, counterparty_types) explicitly. It only refers vaguely to 'processing profile', which provides minimal guidance on what each parameter means or how they are used.

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: to determine which sectoral regulators (RBI / SEBI / IRDAI / TRAI / DoT / PFRDA) apply to a specific processing activity under Indian law. It uses a specific verb 'find out' and resource 'sectoral regulators', and explicitly distinguishes itself from the sibling tool india_regulators_directory by contrasting activity-specific analysis with a plain directory.

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?

The description provides strong usage context: 'Before you process personal data under Indian law' signals when to use it, and it explicitly names the alternative india_regulators_directory for cases where the user just needs a directory regardless of activity. This gives clear yes/no guidance and a direct alternative.

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

japan_cross_border_statusAInspect

Before you transfer personal data out of Japan, check the destination country's APPI Art 28 status (adequacy / standard basis / high scrutiny). Pass the ISO-3166 alpha-2 country code. Stateless lookup: records no decision and leaves no dashboard timeline trace.

ParametersJSON Schema
NameRequiredDescriptionDefault
countryYesISO-3166 alpha-2.
Behavior5/5

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

With no annotations provided, the description carries the full burden. It discloses a key behavioral trait: 'Stateless lookup: records no decision and leaves no dashboard timeline trace.' It also describes the possible output categories (adequacy / standard basis / high scrutiny), providing important context beyond the schema.

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 two sentences, front-loaded with purpose and usage, followed by a concise behavioral note. Every sentence contributes value with no redundancy or filler.

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 simple single-parameter lookup with no output schema, the description fully covers what the tool does, when to use it, the parameter's purpose, and side effects. It even names the possible result categories, making it complete for an agent to invoke and interpret.

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 describes the sole parameter only as 'ISO-3166 alpha-2.' The description adds context by specifying it is the destination country (from the phrase 'destination country's APPI Art 28 status'), thereby giving the parameter meaning beyond the schema's type-only description.

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 checks the destination country's APPI Art 28 status for cross-border transfers from Japan, using a specific verb ('check') and a distinct resource (APPI Art 28 status). It is unambiguously distinguished from sibling tools like india_cross_border_status by the explicit Japan focus.

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 provides explicit guidance: 'Before you transfer personal data out of Japan, check the destination country's APPI Art 28 status.' This indicates when to use the tool. It does not explicitly name alternatives or exclusions, but the Japan-specific context makes the applicability clear.

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

pan_classifyAInspect

Classify a PAN entity type from the 4th character (P=Person, C=Company, H=HUF, F=Firm, ...). Stateless validator: records no decision and leaves no dashboard timeline trace.

ParametersJSON Schema
NameRequiredDescriptionDefault
panYes
Behavior5/5

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

With no annotations provided, the description fully carries the behavioral disclosure burden. It explicitly states the tool is stateless, records no decision, and leaves no dashboard timeline trace, which are meaningful behavioral traits for an agent deciding whether to invoke it. It also reveals the classification logic (4th character), enhancing transparency.

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 two sentences, front-loaded with the primary action, and includes only relevant detail (classification rule and statelessness). No unnecessary words or repetition of schema fields.

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

Completeness2/5

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

The tool has no output schema and no annotations, yet the description does not explain the return value or error behavior for invalid PAN inputs. While the classification rule helps, an agent cannot know what response to expect. The statelessness note is useful but does not complete the context for a tool with no structured output definition.

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 schema provides only the parameter name 'pan' and type string, with zero description coverage. The description adds that the input is a PAN and that classification depends on its 4th character, giving some semantic context. However, it does not specify the expected format, length, or validation rules for the 'pan' value, leaving a gap in parameter understanding.

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 function with a specific verb and resource: 'Classify a PAN entity type from the 4th character' and provides the mapping shorthand. This distinguishes it from sibling validators/classifiers by its unique focus on PAN entity type classification.

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 provides an implied usage context: when you need to classify a PAN entity type. It does not explicitly mention alternatives or when-not-to-use scenarios, but the statelessness note ('records no decision and leaves no dashboard timeline trace') offers some contextual guidance. However, no direct comparison to sibling tools is made.

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

pii_testAInspect

Dry-run VITNA's PII / threat detection on a sample event before you send real data, to preview what would be tagged, how it would be redacted, and whether severity would escalate. Nothing is persisted and nothing is filtered: a safe rehearsal you act on, not an enforced gate — it records no decision and leaves no dashboard timeline trace.

ParametersJSON Schema
NameRequiredDescriptionDefault
jurisdictionNo
sample_eventYesevent_type / message / payload fields.
Behavior5/5

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

With no annotations, the description fully discloses behavioral traits: 'Nothing is persisted and nothing is filtered', 'records no decision and leaves no dashboard timeline trace'. This clearly communicates the safe, side-effect-free nature of the tool and exceeds minimal 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 concise at two sentences, with the purpose front-loaded in the first sentence. Every phrase adds value, from explaining the preview capabilities to detailing the non-persistent, non-filtering behavior. 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?

For a tool with no output schema and no annotations, the description provides a solid high-level understanding of inputs (sample event) and outputs (tagging, redaction, severity escalation). However, it omits any explanation of the optional jurisdiction parameter, leaving a gap for users who need to customize by region.

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

Parameters2/5

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

Schema coverage is only 50%, and the description adds no parameter-level information. The term 'sample event' appears but is not explicitly linked to the 'sample_event' parameter, and the 'jurisdiction' parameter is not mentioned at all. The description does not compensate for the schema's gaps.

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 performs a dry-run of PII/threat detection on a sample event, distinguishing it from sibling classification tools by emphasizing its rehearsal nature. The verb 'dry-run' and resource 'VITNA's PII / threat detection' are specific, and the purpose is unambiguous.

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 says to use it 'before you send real data' and clarifies it is 'not an enforced gate', implying it should not be used when actual enforcement or persistence is needed. It provides a clear context for use but does not explicitly name alternative tools.

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

privacy_notice_getAInspect

Generate the operator's jurisdiction-templated privacy notice. Returns markdown or JSON. Stateless generator: records no decision and leaves no dashboard timeline trace.

ParametersJSON Schema
NameRequiredDescriptionDefault
formatNo
Behavior4/5

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

With no annotations, the description carries the transparency burden. It discloses that the tool is 'stateless', 'records no decision', and 'leaves no dashboard timeline trace' – valuable side-effect information. However, it doesn't mention auth requirements, rate limits, or idempotency implications, which would have been useful. Still, for a simple generator, this is solid.

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 two sentences, front-loaded with the core purpose, then adding return formats and behavioral traits. Every sentence earns its place with no filler.

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 one optional parameter, no output schema, and no annotations, the description covers purpose, output formats, and side effects. It doesn't explain the content of the notice or jurisdiction templating details, but that's likely outside the tool's interface. Overall, this is well-rounded for the given complexity.

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 0%, so the description must compensate. It indirectly explains the 'format' parameter by noting 'Returns markdown or JSON', which maps to the enum values. However, it doesn't explicitly state that the 'format' parameter controls the output, nor does it mention defaults or any additional semantics. This is adequate but not thorough.

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 'Generate the operator's jurisdiction-templated privacy notice' with a specific verb and resource. It distinguishes from sibling validation/classification tools and mentions return formats (markdown or JSON), making the tool's purpose unambiguous.

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 when to use this tool (for generating privacy notices, not validation) but lacks explicit guidance on alternatives or exclusions. It mentions 'stateless generator' as a characteristic but doesn't state when to prefer this over other tools. Sibling tools are clearly different, but no direct 'use this when' or 'instead of' language is present.

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

sin_validateAInspect

Validate a Canadian SIN (Luhn checksum); returns series region + masked form. Stateless validator: records no decision and leaves no dashboard timeline trace.

ParametersJSON Schema
NameRequiredDescriptionDefault
sinYes
Behavior4/5

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

No annotations exist, so description carries burden. It explicitly discloses statelessness ('records no decision and leaves no dashboard timeline trace'), providing meaningful side-effect context. It doesn't cover invalid-input error behavior, but for a stateless validator, the key behavioral trait is addressed.

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?

Two crisp sentences, front-loaded with verb and object. No redundant content.

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

Completeness3/5

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

The tool is a one-parameter stateless validator; description covers purpose, output, and side effects. However, it is unclear whether the return value includes a validity indicator or only region+masked form, and invalid input behavior is not addressed, which is a gap given no output schema.

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 only defines parameter name/type with zero description coverage. Description adds semantic meaning: the input should be a Canadian SIN and must pass a Luhn checksum; output is masked. This is enough to understand the single parameter, though exact format constraints are not specified.

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?

Description explicitly states 'Validate a Canadian SIN (Luhn checksum)' and notes outputs, clearly distinguishing this from sibling ID validators (CPF, IBAN, GSTIN) by jurisdiction and algorithm.

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 identifies the target input (Canadian SIN) and validation method (Luhn), giving an obvious use case. It does not explicitly name alternatives or exclusions, but the context is unambiguous enough for selection.

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

sub_processors_registerAInspect

Return the public sub-processor register (Supabase, Vercel, Resend, etc.). Stateless lookup: records no decision and leaves no dashboard timeline trace.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior5/5

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

With no annotations, the description carries the full burden and excels by explicitly stating 'Stateless lookup: records no decision and leaves no dashboard timeline trace.' This discloses the key behavioral traits (no side effects, read-only) beyond what a schema could convey.

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?

Two sentences, front-loaded with the primary purpose, and no unnecessary words. Every sentence adds value.

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 simple, parameterless lookup tool with no output schema, the description is complete: it states what it returns, gives examples, and discloses the absence of side effects.

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, so the schema is empty and the baseline for 0 params is 4. The description adds no parameter details, but none are needed.

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 'Return' and identifies the resource as the 'public sub-processor register', clearly distinguishing it from sibling tools which are all validators/classifiers. The examples (Supabase, Vercel, Resend) further clarify the scope.

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?

Clear context is provided: it's a stateless lookup for public sub-processor information. No explicit exclusions or alternatives are named, but sibling tools are obviously different in function, making the usage context clear.

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

us_sectoral_checkAInspect

Before you process personal data under US law, find out which US federal sectoral regimes bind you (HIPAA, GLBA, COPPA, FERPA, FCRA, SOX) for a given processing profile, so you can factor them in before you act. US-scoped; for Indian sectoral regulators use india_sectoral_check.

ParametersJSON Schema
NameRequiredDescriptionDefault
ai_decisionsNo
data_categoriesYes
counterparty_typesNo
processing_purposeYes
has_revenue_thresholdNo
Behavior4/5

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

With no annotations provided, the description carries the burden of disclosing behavioral traits. It conveys that the tool is a preliminary, read-only-style analysis ('before you act') and specifies the output concept (which regimes bind). It does not explicitly state side effects or return format, but for a compliance check tool, the implication of non-mutating behavior is clear enough. It adds context beyond simple verb repetition.

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 two sentences, front-loaded with the core action ('find out which regimes bind you') and immediately provides the scope and alternative. Every sentence earns its place with no redundant information, 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.

Completeness3/5

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

The description covers purpose, timing, and scope, but lacks detail on parameter semantics and output format. With no output schema and five parameters, the description should ideally mention what kind of result to expect (e.g., a list of applicable laws) and how the parameters influence the check. It is minimally adequate but has clear gaps in completeness.

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

Parameters2/5

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

The input schema has 0% coverage (no parameter descriptions), so the description must compensate for the five parameters. It only vaguely references a 'processing profile' without mapping that to processing_purpose, data_categories, ai_decisions, counterparty_types, or has_revenue_threshold. This leaves the agent without guidance on how to populate these fields, a significant gap.

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 ('find out') and clearly identifies the resource (US federal sectoral regimes) and scope (US law). It distinguishes itself from the sibling india_sectoral_check by explicitly stating the US scope and naming the counterpart for India, making its purpose unambiguous.

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?

The description provides explicit timing guidance ('Before you process personal data under US law') and a clear alternative ('for Indian sectoral regulators use india_sectoral_check'). This tells the agent exactly when to use this tool and contrasts it with the sibling tool, satisfying the 'when-to-use' requirement.

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

us_state_breach_deadlineAInspect

Quick reference lookup of a single US state's breach-notification window, AG recipient and resident threshold (e.g. 'CA' gives 500 residents, CA AG, without unreasonable delay). This is a static table, not an incident ruling. When you have the actual incident facts and need a reportable / not-reportable decision with reasoning, use breach_classify instead. Stateless lookup: records no decision and leaves no dashboard timeline trace.

ParametersJSON Schema
NameRequiredDescriptionDefault
stateYesUS 2-letter state code (CA, NY, TX, ...).
Behavior5/5

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

Even without annotations, the description discloses key behavioral traits: it is a 'static table' (no dynamic computation), and it explicitly says 'Stateless lookup: records no decision and leaves no dashboard timeline trace.' This gives the agent essential expectations about side effects and scope.

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 and front-loaded: the first sentence states purpose, the second contrasts with an alternative, and the third adds stateless behavior. Every sentence earns its place with no redundancy or filler.

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 simple single-parameter lookup with no output schema, the description is complete: it explains the tool's static nature, provides a sample output ('CA gives 500 residents, CA AG, without unreasonable delay'), and clarifies its role relative to incident analysis. No further context is needed.

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 fully documents the 'state' parameter with description 'US 2-letter state code (CA, NY, TX, ...)'. The description adds a brief example ('CA gives 500 residents') but does not significantly extend the parameter meaning beyond what the schema provides. Baseline 3 is appropriate as no additional semantic burden is needed.

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 ('lookup') and resource ('single US state's breach-notification window, AG recipient and resident threshold'), immediately clarifying the tool's function. It also explicitly distinguishes itself from breach_classify by stating it is 'not an incident ruling,' which differentiates it from the sibling tool.

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?

The description provides explicit when-to-use guidance: 'Quick reference lookup' for a single state's static table. It also gives a clear when-not-to-use and alternative: 'When you have the actual incident facts and need a reportable / not-reportable decision with reasoning, use breach_classify instead.' This is a model of usage direction.

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

vitna_helpAInspect

What is VITNA and how do I use it to keep myself in check? Call this FIRST after connecting to learn the safety and oversight checks available: how to check risky actions BEFORE running them, what a deny / hold decision means, trial vs claimed mode, and how the user can monitor and audit what you do. Runs entirely locally: no account, no API call, and no dashboard timeline trace.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior4/5

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

With no annotations, the description carries the full burden and does well by disclosing that it runs entirely locally with no account, no API call, and no dashboard timeline trace. It also previews the behavioral topics it covers (deny/hold decisions, trial vs claimed mode, monitoring). It could go further by describing output format, but the privacy and operational disclosures are valuable and non-generic.

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 moderately concise and front-loaded with the core question and 'Call this FIRST' instruction. The two sentences pack a lot of relevant information without excessive fluff, but the opening structure is slightly informal and could be more direct. Still, every sentence earns its place and the length is appropriate for onboarding guidance.

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?

Given the tool's simplicity (0 params, no output schema) and its role as a help/onboarding tool, the description is remarkably complete. It covers when to use it, what concepts it explains, and privacy characteristics. The provided context is sufficient for an agent to know exactly when and why to invoke this tool, and what to expect in terms of local execution.

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 0 parameters, so schema coverage is complete with no argument semantics to explain. According to the rubric, the baseline for 0 params is 4. The description adds no parameter details, but none are needed; it focuses on the tool's purpose and usage, which is appropriate for a parameterless help tool.

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 is an onboarding/help assistant for VITNA, explaining that it should be called first to understand safety and oversight checks. It defines a specific role—teaching usage and monitoring—and distinguishes itself from sibling tools like vitna_preflight by positioning itself as the introductory helper.

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 says 'Call this FIRST after connecting,' providing a strong, actionable trigger for when to use the tool. It doesn't enumerate exclusions or alternatives, but the 'first' directive implies it should precede other compliance and validation tools, which is sufficient guidance for this help-focused tool.

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

vitna_preflightAInspect

SAFETY / OVERSIGHT CHECK before a dangerous or destructive action (shell command, file deletion, DB statement, network call). Call this to have VITNA check the action BEFORE you run it: it flags dangerous shell / SQL / secret-exfil / prompt-injection / suspicious-network patterns and returns { decision: allowed|blocked|flagged, threat_category, reason } plus (in claimed mode) a signed audit record the user can review. VITNA evaluates and records; it does NOT enforce, so treat blocked / flagged as a stop and get human approval. This is how a user keeps you in check. Heuristic pattern match, not a sandbox: novel or obfuscated payloads can pass.

ParametersJSON Schema
NameRequiredDescriptionDefault
actionNoThe proposed action / command text, e.g. "rm -rf /" or "DROP TABLE users".
payloadNoOptional structured payload to scan alongside the action text.
action_typeNoOptional short label for the action kind (shell, file_delete, db_query, network).
Behavior5/5

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

With no annotations provided, the description carries the full burden. It discloses that VITNA 'does NOT enforce', is heuristic ('novel or obfuscated payloads can pass'), and returns a specific structured decision. It also mentions the signed audit record in claimed mode, adding rich behavioral context.

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 front-loaded with its purpose and each sentence adds distinct value: what it checks, when to call, what it returns, its non-enforcement nature, and its heuristic limitations. No redundant filler, and the length is justified by the richness of behavior it needs to convey.

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 and no annotations, the description explains the full output { decision, threat_category, reason }, the audit record, the non-enforcement advisory, and the heuristic limitations. It is complete for a tool of this complexity, giving the agent everything needed to invoke it and interpret results.

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%, so the baseline is 3. The description adds example values ('rm -rf /', 'DROP TABLE users') and clarifies 'action_type' as a short label, but these are also present in the schema's parameter descriptions. It doesn't provide substantial meaning beyond the schema, so a 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 a specific verb and resource: 'SAFETY / OVERSIGHT CHECK before a dangerous or destructive action' and enumerates the patterns it flags (shell, SQL, secret-exfil, prompt-injection, suspicious-network). This distinguishes it from sibling tools that focus on compliance/validation rather than pre-execution safety.

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 gives an explicit when-to-use: 'Call this to have VITNA check the action BEFORE you run it' and instructs to 'treat blocked / flagged as a stop and get human approval.' It doesn't explicitly mention alternatives or when not to use, but the context is clear and sufficient for the agent.

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

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Servers

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.