Skip to main content
Glama
OjasKord

Data Compliance Classifier MCP

by OjasKord

Data Compliance Classifier MCP

ToolRank

Your agent is about to store customer data. Is it safe to? This tool tells you in one call.

What it does

Before your agent stores, transmits, logs, or passes any data to another system — call validate_data_safety. Get back a clear verdict: SAFE_TO_PROCESS, REDACT_BEFORE_PASSING, DO_NOT_STORE, or ESCALATE. Your agent acts on the verdict immediately. No human interpretation needed.

Prevents GDPR, HIPAA, and PCI-DSS violations before they happen — not after.

Related MCP server: PII Redaction MCP Server

Why this exists

Autonomous agents handle data from users, APIs, forms, and external sources constantly. Most agents process that data without checking whether they should. When something goes wrong — a GDPR breach, a leaked credential, a PII write to an unencrypted store — it's already too late.

This tool gives agents a pre-action safety check. One call, clear verdict, agent proceeds or halts.

Tools

validate_data_safety (free tier)

Call this BEFORE your agent stores, transmits, or passes any data payload.

Input:

  • payload — the data to classify (any string, JSON, form data, API response)

  • context — what your agent is about to do with it (improves accuracy)

  • data_origin_ip — optional IP for jurisdiction detection (GDPR if EU, CCPA if US, etc.)

  • jurisdiction — optional override if IP unavailable

Output:

  • verdict — SAFE_TO_PROCESS / REDACT_BEFORE_PASSING / DO_NOT_STORE / ESCALATE

  • sensitivity_level — PUBLIC / INTERNAL / CONFIDENTIAL / RESTRICTED

  • detected_categories — PII, PHI, PCI, CREDENTIALS, FINANCIAL, LOCATION, etc.

  • applicable_regulations — GDPR, HIPAA, PCI-DSS, CCPA, PIPEDA, LGPD, etc.

  • recommended_action — one sentence telling your agent exactly what to do next

  • jurisdiction_detected — country detected from IP

  • credential_check — breach status from HaveIBeenPwned k-anonymity API

  • patterns_detected — pre-screened PII patterns found

get_safety_report (paid tier)

Batch classification for up to 50 payloads plus audit-ready compliance reports.

Modes:

  • BATCH — classify multiple payloads with full AI reasoning + AbuseIPDB threat intelligence

  • AUDIT — generate a structured compliance report for a dataset description

validate_data_safety_lite (free tier)

Pattern-only screening for high-volume payload batches -- no AI classification, no IP check, no jurisdiction lookup. Returns SAFE_TO_PROCESS / REVIEW_REQUIRED in under 100ms. Use to filter large batches before selectively running validate_data_safety on flagged items.

Data privacy

We do not store or log your data payloads. All payloads are analysed in memory and immediately discarded. Credential checks use the HaveIBeenPwned k-anonymity API — your credentials are never transmitted in full. Only the first 5 characters of a SHA-1 hash are sent.

Data sources

  • Claude AI — sensitivity classification and regulatory mapping

  • IPinfo (ipinfo.io) — jurisdiction detection from IP address

  • HaveIBeenPwned (haveibeenpwned.com) — credential breach checking via k-anonymity

  • AbuseIPDB (abuseipdb.com) — IP threat intelligence (paid tier)

Pricing

Plan

Classifications

Price

Free

20/month

No API key needed

Starter

500-call bundle

$24

Pro

2,000-call bundle

$84

Upgrade at kordagencies.com

Quick start

No API key needed for free tier:

{
  "data-compliance": {
    "url": "https://data-compliance-mcp-production.up.railway.app"
  }
}

With paid API key:

{
  "data-compliance": {
    "url": "https://data-compliance-mcp-production.up.railway.app",
    "headers": {
      "x-api-key": "your_api_key_here"
    }
  }
}

Harness Integration

Claude Code / Claude Desktop (.mcp.json)

{
  "mcpServers": {
    "data-compliance": {
      "type": "http",
      "url": "https://data-compliance-mcp-production.up.railway.app"
    }
  }
}

LangChain (Python)

from langchain_mcp_adapters.client import MultiServerMCPClient
client = MultiServerMCPClient({
    "data-compliance": {
        "url": "https://data-compliance-mcp-production.up.railway.app",
        "transport": "http"
    }
})
tools = await client.get_tools()

OpenAI Agents SDK (Python)

from agents import Agent, HostedMCPTool
agent = Agent(
    name="Assistant",
    tools=[HostedMCPTool(tool_config={
        "type": "mcp",
        "server_label": "data-compliance",
        "server_url": "https://data-compliance-mcp-production.up.railway.app",
        "require_approval": "never"
    })]
)

LangGraph

Same as LangChain above — langchain-mcp-adapters works with LangGraph natively.

Example call

curl -X POST https://data-compliance-mcp-production.up.railway.app \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"validate_data_safety","arguments":{"payload":"{\"name\":\"John Smith\",\"email\":\"john@example.com\",\"dob\":\"1985-03-12\",\"address\":\"14 Baker Street, London\"}","context":"write to customer database","jurisdiction":"EU"}}}'

Expected response:

{
  "verdict": "DO_NOT_STORE",
  "sensitivity_level": "RESTRICTED",
  "detected_categories": ["PII"],
  "applicable_regulations": ["GDPR"],
  "recommended_action": "Do not store without explicit consent and a documented lawful basis under GDPR Article 6.",
  "jurisdiction_detected": "EU"
}

Classification is AI-powered and for informational purposes only. Does not constitute legal advice and does not guarantee regulatory compliance. Full terms: kordagencies.com/terms.html

Available Tools

3 tools
get_safety_reportAInspect

Retrieves a detailed compliance report and remediation strategy for a flagged payload. Call this BEFORE your agent decides whether to proceed, redact, or halt -- immediately after validate_data_safety returns REDACT_BEFORE_PASSING, DO_NOT_STORE, or ESCALATE. Use this when validate_data_safety has returned a non-SAFE verdict and your agent needs the specific regulation triggered, the problematic fields, and a compliant reformulation before acting. Returns the specific regulation triggered, exact fields that are problematic, redaction strategy, and a compliant reformulation your agent can transmit instead. Transmitting a flagged payload without the redaction strategy and compliant reformulation this tool returns creates an unremediated violation with no audit trail showing what was flagged or fixed. Do not proceed with the original payload after a non-SAFE verdict without running this tool first.

ParametersJSON Schema
NameRequiredDescriptionDefault
modeYesREPORT: get redaction strategy and compliant reformulation for a flagged payload. BATCH: classify up to 50 payloads. AUDIT: generate compliance summary report.
contextNoWhat will be done with this data. Used to improve verdict accuracy.
payloadNoThe flagged payload to analyse. Required for REPORT mode.
payloadsNoArray of data payloads to classify. Required for BATCH mode. Maximum 50.
jurisdictionNoJurisdiction override for REPORT mode (e.g. "EU", "US", "UK"). Optional.
dataset_descriptionNoDescription of the dataset for AUDIT mode (e.g. "customer CRM records including name, email, purchase history, and UK addresses").

Output Schema

ParametersJSON Schema
NameRequiredDescription
modeNo
statusNoPresent on the free-tier REPORT preview path
messageNo
checked_atYes
_disclaimerYes
upgrade_urlNo
patterns_detectedNo

TDQS

A4.3/5.0
Behavior5/5

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

With no annotations, the description carries the full burden. It reveals what the tool returns (specific regulation, problematic fields, redaction strategy, compliant reformulation) and the consequence of not using it (unremediated violation with no audit trail). This is transparent about both the output and the importance of invoking the tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is verbose and repetitive. It states the purpose, then repeats the trigger condition ('immediately after validate_data_safety returns...' vs. 'Use this when validate_data_safety has returned...') and the output details ('Retrieves... report and remediation strategy' vs. 'Returns the specific regulation triggered...'). This redundancy makes the description longer than necessary.

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 is quite comprehensive for a tool with 6 parameters and an output schema. It covers when to use it and what it returns, and adds the critical behavioral warning about audit trail. It does not elaborate on mode specifics or error handling, but the schema covers modes and the output schema covers return values.

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 descriptions cover 100% of the parameters, including the mode enum and payload requirements. The description does not add parameter-level semantics beyond the schema, so the baseline score 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 'Retrieves a detailed compliance report and remediation strategy for a flagged payload' and explicitly distinguishes it from sibling validate_data_safety by specifying that it is used after a non-SAFE verdict. The verb+resource is specific and 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?

Provides explicit when-to-use guidance: 'Call this BEFORE your agent decides whether to proceed, redact, or halt -- immediately after validate_data_safety returns REDACT_BEFORE_PASSING, DO_NOT_STORE, or ESCALATE.' It also gives a strong directive: 'Do not proceed with the original payload after a non-SAFE verdict without running this tool first.' This clearly defines the trigger and required action.

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

validate_data_safetyAInspect

Validates a data payload against GDPR, HIPAA, PCI-DSS, and other frameworks. Call this BEFORE your agent passes any assembled payload to an external API, writes it to a database, or transmits it via any third-party service -- at the moment the payload is assembled and no external call has been made, including any Stripe MPP, Alipay AI Pay, Shopify UCP, or third-party API call. Use this when your agent has assembled user-sourced or API-response data and is about to write it to storage or transmit it to an external service. Returns SAFE_TO_PROCESS / REDACT_BEFORE_PASSING / DO_NOT_STORE / ESCALATE verdict against GDPR, HIPAA, PCI-DSS, CCPA, and 7 other frameworks. Unclassified sensitive data transmitted to an external endpoint creates unrecoverable regulatory exposure with no notification path. Call get_safety_report next if verdict is not SAFE_TO_PROCESS. Returns machine-ready verdict, no further analysis needed.

ParametersJSON Schema
NameRequiredDescriptionDefault
contextNoWhat your agent is about to do with this data (e.g. "write to database", "send to third-party API", "log to file", "pass to email tool"). Improves verdict accuracy.
payloadYesThe data payload to classify. Can be any string, JSON object as string, form data, API response, or text content. The payload is analysed in memory and immediately discarded — never stored or logged.
jurisdictionNoOverride jurisdiction if known (e.g. "EU", "US", "UK", "CA", "AU"). Use if data_origin_ip is unavailable but jurisdiction is known.
data_origin_ipNoIP address of the data subject or data source. Used to detect applicable jurisdiction and regulations (GDPR if EU, CCPA if US, etc). Optional but improves regulatory accuracy.

Output Schema

ParametersJSON Schema
NameRequiredDescription
verdictYes
reasoningNoPaid tier only -- gated to _reasoning_gated on free tier
checked_atYes
confidenceNo
source_urlNo
_disclaimerYes
analysis_typeNo
credential_checkNo
patterns_detectedNo
redaction_targetsNo
sensitivity_levelYes
recommended_actionNo
detected_categoriesNo
jurisdiction_detectedNo
applicable_regulationsNo

TDQS

A4.4/5.0
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 admirably: it discloses in-memory processing and immediate discarding ('never stored or logged'), spells out the four possible verdicts, and warns about regulatory exposure for unclassified sensitive data. It also clarifies the output is machine-ready and requires no further analysis.

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 longer than average but each sentence contributes: purpose, timing, verdict list, warning, and next step. It is well-structured with the main action first, though the enumeration of specific payment services adds minor verbosity.

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 complexity (multiple regulatory frameworks, verdicts), the description covers the key aspects: when to call, what it validates, what it returns, and the follow-up action. The presence of an output schema covers return-value details, so no additional explanation 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?

All four parameters have descriptions in the schema (100% coverage), so the baseline is 3. The description adds only the note that payload is discarded and that context improves verdict accuracy, but it doesn't elaborate on individual parameter semantics beyond the schema. Thus no uplift above baseline.

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 opens with a specific verb 'Validates' and resource 'data payload' against named frameworks (GDPR, HIPAA, PCI-DSS), making the tool's function unambiguous. It mentions the follow-up get_safety_report and implies a full version versus the lite sibling, but does not explicitly differentiate from validate_data_safety_lite, so it misses the full 5.

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 timing guidance ('Call this BEFORE your agent passes any assembled payload to an external API, writes it to a database, or transmits it via any third-party service') and defines the exact moment to use it. It also instructs the agent to call get_safety_report next when the verdict is not SAFE_TO_PROCESS, providing clear next-step guidance.

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

validate_data_safety_liteAInspect

Validates a payload for sensitive patterns without AI classification. Call this BEFORE pre-screening high-volume payloads when pattern detection is sufficient and AI classification is not required. Use this when your agent is processing a large volume of payloads in batch and needs a fast pattern-only filter before selectively invoking full AI classification on flagged items. Returns SAFE_TO_PROCESS / REVIEW_REQUIRED in under 100ms -- no AI, no IP check, no jurisdiction lookup. Treating a SAFE_TO_PROCESS result here as a full verdict lets sensitive data outside these regex patterns -- contextual PII, non-standard credential formats -- reach an external endpoint undetected, with no chance to intercept it afterward. Use to filter large batches before selectively running validate_data_safety on flagged payloads. Do not use as a substitute for validate_data_safety before storing or transmitting data in regulated environments.

ParametersJSON Schema
NameRequiredDescriptionDefault
contextNoOptional: what your agent plans to do with this data.
payloadYesThe data payload to screen for sensitive patterns.

Output Schema

ParametersJSON Schema
NameRequiredDescription
verdictYes
checked_atYes
_disclaimerYes
agent_actionYes
analysis_typeNo
patterns_detectedNo
sensitivity_levelNo

TDQS

A4.7/5.0
Behavior5/5

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

No annotations are provided, so the description carries the full burden. It discloses performance ('under 100ms'), scope ('no AI, no IP check, no jurisdiction lookup'), and limitations (warns about contextual PII and non-standard credential formats slipping through). This is exemplary transparency that goes well 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 efficiently structured: it opens with the core purpose, then usage, then limitations, with no wasted words. Every sentence conveys essential information, and the warnings about misuse are concise but impactful.

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?

The description fully covers the tool's purpose, usage, alternatives, performance characteristics, and limitations. Given the output schema exists and the description is this rich, the agent has everything needed to decide when and how to invoke the tool correctly.

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% with clear descriptions for both 'payload' and 'context'. The tool description does not add new parameter-level semantics beyond what the schema already provides, but it neither contradicts nor confuses them, so baseline 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 'validates a payload for sensitive patterns without AI classification', specifying the verb, resource, and method. It distinguishes itself from the sibling 'validate_data_safety' by emphasizing it is a fast, pattern-only filter, 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 Guidelines5/5

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

Provides explicit usage guidance: 'Call this BEFORE pre-screening high-volume payloads' and 'Use to filter large batches before selectively running validate_data_safety on flagged payloads'. It also gives a clear exclusion: 'Do not use as a substitute for validate_data_safety before storing or transmitting data in regulated environments', naming the alternative and when to avoid this tool.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 3 tool updatesv1.0.32
    • First observedget_safety_report
    • First observedvalidate_data_safety
    • First observedvalidate_data_safety_lite

TDQS

A4.6/5.0

Scored across 3 tools

Disambiguation5/5

Each tool has a clearly distinct purpose: validate_data_safety performs full AI classification, get_safety_report provides detailed compliance reports for flagged payloads, and validate_data_safety_lite offers fast pattern-only pre-screening. There is no overlap or ambiguity.

Naming Consistency5/5

All tool names use a consistent verb_noun pattern in snake_case (validate_data_safety, get_safety_report, validate_data_safety_lite). The 'lite' suffix is a clear modifier that maintains consistency.

Tool Count4/5

Three tools is slightly on the lower end but appropriate for a focused compliance classifier. The set covers the core workflow without being too sparse or overloaded.

Completeness4/5

The tool set covers the primary validation and reporting workflow comprehensively. Minor gaps exist, such as the lack of configuration or audit tools, but the core compliance functionality is complete for typical use cases.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI agents to scan, redact, and govern sensitive data before sending it to external tools through DLP, secure chat, and shadow AI discovery tools.
    AGPL 3.0
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables deterministic zero-trust security for AI agents, providing prompt injection protection, PII scrubbing, and policy enforcement before agentic actions reach production systems.
    2
    Apache 2.0