Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

IA-QA Data & Dev — 36 tools

REMOTE · WWW.IA-QA.COM

Dev utilities for agents: JSON/YAML/CSV, schema validation, encoding, text & time. Free, no key.

Available components

+6 this week 82 Trust /100

Last scanned (7 hours ago)

Scores higher than 85% of remote servers

Reachable. Last reached 5 Nov 2026.

Category Developer Tools

Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →

Endpoint Security83
Transport & Reachability100
Schema Quality & AI Usability90
  • AI-judged instruction clarity (excellent).Pass
  • Context-footprint check failed: tool/resource definitions use about 4764 tokens (~132/item across 36 items; 36 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Tools include usage examples.Pass
Stability & Change Management33
  • Stability observed for 10 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 100% of tool parameters carry a description.Pass
  • Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Tool Safety100
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • We read all 36 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
  • An AI judge read all 37 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a current MCP spec version (2026-07-28).Pass
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 5 Nov 26 0
    • The server rewrote its instructions, which are the text every model session reads security
    • MCP protocol: Implements a current MCP spec version (2026-07-28). functional
    • MCP protocol version: 2025-11-25 → 2026-07-28 functional
  • 4 Nov 26 +1
    • Tool “find_tool” rewrote its description, which is the text the model reads security
    • Tool “rate_tool” rewrote its description, which is the text the model reads security
  • 2 Nov 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 20 to 23. That category is still filling its 30-day observation window: 6 days of observed history at the previous scan, 7 at this one. The score rises as the window fills, whether or not the server changes.

  • 1 Nov 26 +3
    • The server rewrote its instructions, which are the text every model session reads security
    • Schema quality: fail → pass ▲ functional
    • “json_schema_generate” added an optional parameter “samples” cosmetic
    • “json_schema_generate” reworded the description of “required_all” cosmetic
  • 30 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 10 to 13. That category is still filling its 30-day observation window: 3 days of observed history at the previous scan, 4 at this one. The score rises as the window fills, whether or not the server changes.

  • 28 Oct 26 0
    • Tool “json_schema_validate” rewrote its description, which is the text the model reads security
    • Tool “rate_tool” rewrote its description, which is the text the model reads security
  • 27 Oct 26 +1
    • Stability: unverified → 0.03 ▲ functional
  • 26 Oct 26 75

    First indexed and scored.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 5 Nov 2026 · Probed https://www.ia-qa.com/mcp/data

TLS valid

Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .

Subject Issuer Valid from Valid until Key Signature Serial
CN=www.ia-qa.com CN=YR2,O=Let's Encrypt,C=US 10 Oct 2026 8 Jan 2027 RSA 2048 SHA256-RSA 660e1d6981514e1320131b13dbf4a910775
SANs: www.ia-qa.com
CN=YR2,O=Let's Encrypt,C=US (CA) CN=Root YR,O=ISRG,C=US 3 Sept 2025 2 Sept 2028 RSA 2048 SHA256-RSA 4ebd24947e24d394802d84a52fd5b319
CN=Root YR,O=ISRG,C=US (CA) CN=ISRG Root X1,O=Internet Security Research Group,C=US 13 May 2026 2 Sept 2032 RSA 4096 SHA256-RSA f24b6d17f9d9ad7cb1c9fea78782699f

Background: What to check on a remote MCP endpoint →

DNSSEC secure

Validation of www.ia-qa.com. — Secure

Zone DS Keys Algorithms Outcome
. trust_anchor 20326, 38696 8, 8 Verified
com. present 19718 13 Verified
ia-qa.com. present 52852 8 Verified
www.ia-qa.com. Verified address RRset verified with the apex keys
Authentication No authorisation required

The endpoint answered without asking for a token. Anyone who knows the URL can reach it.

Result No authorisation required
HTTP status 200
Header Value
strict-transport-security max-age=63072000; includeSubDomains; preload
content-security-policy default-src 'self';script-src 'self' 'unsafe-inline' 'unsafe-eval' https://www.googletagmanager.com;style-src 'self' 'unsafe-inline' https://fonts.googleapis.com;img-src 'self' data: blob: https:;font-src 'self' https://fonts.gstatic.com data:;connect-src 'self' https: wss: http://localhost:11434 data:;media-src 'self' blob:;object-src 'none';frame-ancestors 'self';base-uri 'self';form-action 'self';script-src-attr 'none';upgrade-insecure-requests
x-content-type-options nosniff
x-frame-options SAMEORIGIN
referrer-policy no-referrer
permissions-policy camera=(), microphone=(), geolocation=(), payment=(), usb=(), display-capture=()

Background: How OAuth 2.1 works in the 2026 MCP spec →

Transports 2 probes
Transport URL Outcome Status Location
streamable-http https://www.ia-qa.com/mcp/data Verified 200
http (plaintext) http://www.ia-qa.com/mcp/data HTTPS enforced 301 https://www.ia-qa.com/mcp/data
MCP tools · 36 exposed · ~4,190 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
base64_decode ~55

Decode a Base64 string back to UTF-8 text. Use for inspecting Base64-encoded API responses, JWT payload claims, config file values, or attachment data.

NameTypeReqDescription
inputstringyesBase64 string to decode
NameTypeReqDescription
decoded–––
{"input":"aMOpbGxvIPCfjI0="}
base64_encode ~58

Encode a UTF-8 string to Base64. Use when you need to embed binary data, multi-line text, or special characters safely inside JSON fields, HTTP headers, or data URIs.

NameTypeReqDescription
inputstringyesText to encode
NameTypeReqDescription
encodedstring––
{"input":"héllo 🌍"}
case_convert ~106

Convert a string between naming conventions: camelCase, PascalCase, snake_case, kebab-case, UPPER_SNAKE_CASE, dot.case, Title Case. Essential for code generation and refactoring.

NameTypeReqDescription
inputstringyesString to convert (e.g., "myVariableName", "my-css-class")
tostringyesTarget case: "camel", "pascal", "snake", "kebab", "upper_snake", "dot", "title"
NameTypeReqDescription
from_words–––
result–––
target_case–––
{"input":"helloWorld fooBar","to":"snake"}
color_convert ~109

Convert a color between HEX, RGB, and HSL formats. Use when translating design tokens between CSS notations, verifying color accessibility, or normalizing color values from user input. Accepts #rrggbb, #rgb, rgb(r,g,b), or hsl(h,s%,l%).

NameTypeReqDescription
inputstringyesColor value to convert, e.g. "#ff6b6b", "rgb(255,107,107)", "hsl(0,100%,71%)"
NameTypeReqDescription
b–––
g–––
hex–––
hslstring––
input–––
r–––
rgbstring––
{"input":"rgb(18, 52, 86)"}
count_code_lines ~109

Count lines of code: total, code lines, comment lines, blank lines, and comment density. Supports JS/TS, Python, Java/C/C++, Ruby, Go, Shell, HTML/XML, and CSS.

NameTypeReqDescription
inputstringyesSource code to analyze
languagestring–Language hint: "js", "ts", "py", "java", "c", "rb", "go", "sh", "html", "css" (auto-detect if omitted)
NameTypeReqDescription
blank_lines–––
code_lines–––
code_to_comment_ratiostring––
comment_density–––
comment_lines–––
language–––
total_lines–––
{"input":"// c\nconst a = 1; // x\n\n/* b\n c */\nlet b;","language":"javascript"}
cron_parse ~63

Parse a cron expression into a human-readable schedule description. Supports standard 5-field cron (minute hour day month weekday).

NameTypeReqDescription
expressionstringyesCron expression (e.g., "0 9 * * 1-5", "*/15 * * * *")
NameTypeReqDescription
expression–––
fieldsobject––
human_readablestring––
{"expression":"*/5 * * * *"}
decode_jwt ~80

Decode a JWT (JSON Web Token) and return its header and payload without verifying the signature. Also reports whether the token is expired and the exact expiry date. Use to inspect claims (sub, iss, exp, roles) during debugging or when integrating with an auth provider.

NameTypeReqDescription
tokenstringyesThe JWT string to decode (header.payload.signature)
NameTypeReqDescription
expired–––
expiresAt–––
header–––
notestring––
payload–––
{"token":"eyJhbGciOiJIUzI1NiJ9.eyJleHAiOjQxMDI0NDQ4MDB9.sig"}
diff_text ~116

Compute a unified line-by-line diff between two text strings (LCS algorithm). Returns added/removed/unchanged line counts and formatted diff hunks with configurable context lines (0–20). Use to compare versions of prompts, configs, code snippets, or any text where you need to see exactly what changed.

NameTypeReqDescription
astringyesOriginal (before) text
bstringyesModified (after) text
contextnumber–Context lines around each change (0–20, default: 3)
NameTypeReqDescription
addednumber––
diffstring––
removednumber––
unchangednumber––
{"a":"a\nb\nc","b":"a\nB\nc"}
env_parse ~93

Parse a .env file content into a JSON object. Handles quoted values (single and double), inline comments, export prefix, and escaped sequences (\n, \t inside double quotes). Returns all key-value pairs. Use in CI/CD pipelines, agent config loaders, or when processing dotenv files programmatically.

NameTypeReqDescription
inputstringyes.env file content to parse (e.g. the output of `cat .env`)
NameTypeReqDescription
countnumber––
vars–––
{"input":"PORT=3000"}
extract_json_path ~101

Extract a value from a JSON string using dot-notation path (e.g., "user.address.city", "items.0.name", "meta.tags"). Supports array index access via numeric path segments.

NameTypeReqDescription
inputstring|object|arrayyesThe JSON to traverse — a JSON string, or the object/array itself.
pathstringyesDot-notation path, e.g. "user.address.city" or "items.0.name"
NameTypeReqDescription
path–––
type–––
value–––
{"input":{"a":{"b":[{"c":1},{"c":2}]}},"path":"a.b.0.c"}
find_tool ~194

Search available MCP tools by keyword or category before calling them. Returns matching tool names, descriptions, and optionally their inputSchemas. Queries are logged 90 days, screened for credentials and personal data. Categories: data, encoding, text, llm, qa, rag, dev, security, web.

NameTypeReqDescription
categorystring–Optional: filter by category — data | encoding | text | llm | qa | rag | dev | security | web
max_resultsnumber–Maximum tools to return (default 10, max 50). Results are ranked by IDF-weighted relevance, so common words like "test" do not inflate the list.
querystringyesKeyword(s) to search in tool name and description (e.g. "cors", "token", "vector", "json")
with_schemaboolean–Set true to include inputSchema in results (default: false)
NameTypeReqDescription
category–––
countnumber––
hint–––
query–––
score–––
tool–––
toolsarray––
total_matchesnumber––
truncatedboolean––
{"query":"leaked api key"}
flatten_json ~112

Flatten a nested JSON object to single-level dot-notation keys (e.g. {"a":{"b":1}} → {"a.b":1}), or unflatten dot-notation keys back to a nested object. Supports custom separators.

NameTypeReqDescription
inputstring|object|arrayyesThe JSON to flatten or unflatten — a JSON string, or the object itself.
modestring–"flatten" (default) or "unflatten"
separatorstring–Key separator (default: ".")
NameTypeReqDescription
key_countnumber––
max_deptharray––
result–––
{"input":{"a":{"b":1,"c":[1,2]}}}
format_json ~148

Validate and pretty-print a string that is ALREADY valid JSON. Strict by design — it is a validity gate: valid JSON comes back formatted, anything else is rejected with the exact parse error. It never repairs, completes, or guesses. NOT for: plain text or prose (will fail), JSON embedded in markdown/prose (use extract_json_from_text first), JS objects (JSON.stringify them first), YAML (use yaml_to_json).

NameTypeReqDescription
indentnumber–Indent size (default: 2)
inputstringyesA raw JSON string, e.g. '{"key":"value"}'. Must already parse as JSON — plain text or truncated JSON is rejected, not repaired.
NameTypeReqDescription
formattedstring––
validboolean––
{"input":"{\"a\":1,\"b\":{\"a\":2}}"}
generate_slug ~84

Convert any string into a URL-friendly slug: lowercase, ASCII-normalized (é→e), special characters removed, spaces replaced with hyphens. Use for generating SEO-friendly URL paths, file names, or identifier keys from user-provided titles or labels.

NameTypeReqDescription
inputstringyesString to slugify
separatorstring–Separator character (default: "-")
NameTypeReqDescription
slug–––
{"input":"Héllo Wörld 2026"}
generate_uuid ~80

Generate one or more cryptographically random UUID v4 identifiers. Use this when you need unique IDs for test fixtures, database records, session tokens, or any scenario requiring a guaranteed-unique string. Returns up to 100 UUIDs in one call.

NameTypeReqDescription
countnumber–Number of UUIDs to generate (1–100, default: 1)
NameTypeReqDescription
countnumber––
uuids–––
{"count":5}
hash_text ~102

Compute a cryptographic hash of a text string. Use when you need to verify data integrity, generate content fingerprints, hash passwords (prefer SHA-256+), or produce a fixed-length digest of any input. Supports SHA-256 (default), SHA-512, SHA-1, and MD5.

NameTypeReqDescription
algorithmstring–Hash algorithm: sha256 (default), sha512, sha1, md5
inputstringyesText to hash
NameTypeReqDescription
algorithm–––
hash–––
input_lengthnumber––
{"algorithm":"md5","input":"héllo wörld 🌍"}
json_diff ~187

Compute a deep structural diff between two JSON values. Returns added, removed, and changed keys with dot-notation paths. Like git diff but for JSON objects — perfect for API response regression testing. Arrays are not compared blindly by position: the same elements in a different order collapse to a single "reordered" change, and an array of records sharing a stable identity field (id, uuid, key, name…) is matched by that field, so paths read [id=42] and a moved record is not reported as N rewrites.

NameTypeReqDescription
afterstring|object|arrayyesThe modified JSON (after) — a JSON string, or the value itself.
beforestring|object|arrayyesThe original JSON (before) — a JSON string, or the value itself.
max_depthnumber–Max nesting depth to recurse (default: 10)
NameTypeReqDescription
addedboolean––
changesarray––
identicalboolean––
modifiedboolean––
removedboolean––
total_changesnumber––
{"after":{"a":1,"b":2},"before":{"a":1,"b":2}}
json_schema_generate ~182

Infer a JSON Schema (draft-07) from a sample JSON value. Detects types, required fields, array item shapes, nested objects, and common string formats (email, uri, date, date-time, uuid). Returns a ready-to-use schema compatible with json_schema_validate. Use when you have a sample API response or LLM output and want to auto-generate a validation schema for CI/CD testing.

NameTypeReqDescription
inputstring|object|arrayyesThe sample JSON value to infer the schema from — a JSON string, or the value itself.
required_allboolean–Mark fields present in every observed object as required (default: true)
samplesarray|string–More samples of the same shape, merged with input: a field seen as null and as a date becomes ["string","null"]; one missing somewhere is not required.
NameTypeReqDescription
schemaobject––
warningsarray––
{"input":{"a":[1],"b":true,"f":1.5,"n":1,"o":{"k":null},"s":"x"}}
json_schema_validate ~192

Validate a JSON value against a JSON Schema (draft-07 subset). Supports type, required, properties, items, enum, const, pattern, format (email/uri/date/date-time/uuid), minimum/maximum, minLength/maxLength, minItems/maxItems, uniqueItems, additionalProperties, anyOf, allOf, oneOf, not, and local $ref (#/definitions/…, #/$defs/…). A schema using a keyword outside that list (patternProperties, if/then, dependencies, a remote $ref…) is never reported valid: the keyword is named in `unevaluated_keywords`. Returns all validation errors with dot-notation paths.

NameTypeReqDescription
schemastring|object|arrayyesThe JSON Schema — a JSON string, or the schema object itself.
valuestring|object|arrayyesThe JSON value to validate — a JSON string, or the value itself.
NameTypeReqDescription
error_countnumber––
errorsarray––
validboolean––
{"schema":{"$defs":{"P":{"properties":{"n":{"type":"string"}},"type":"object"}},"properties":{"p":{"$ref":"#/$defs/P"}},"type":"object"},"value":{"p":{"n":"five"}}}
json_to_csv ~90

Convert a JSON array of objects to CSV format. Automatically detects columns from all object keys. Handles quoting and escaping per RFC 4180.

NameTypeReqDescription
delimiterstring–Column delimiter (default: ",")
headersboolean–Include header row (default: true)
inputstring|object|arrayyesThe array of objects to convert — a JSON string, or the array itself.
NameTypeReqDescription
column_names–––
columnsnumber––
csvstring––
rowsnumber––
{"input":[{"a":1},{"b":2}]}
json_to_yaml ~80

Convert a JSON object to clean, human-readable YAML. Handles nested objects, arrays, multiline strings, and special characters. No external dependencies.

NameTypeReqDescription
indentnumber–Indentation size in spaces (default: 2)
inputstring|object|arrayyesThe JSON to convert to YAML — a JSON string, or the value itself.
NameTypeReqDescription
linesnumber––
yaml–––
{"input":{"a":"x: y","c":null,"d":"yes","e":"0123"}}
lint_commit_message ~91

Validate a git commit message against the Conventional Commits spec (feat, fix, docs, style, refactor, test, chore, ci, perf, build). Returns compliance score, breaking change detection, and actionable suggestions.

NameTypeReqDescription
messagestringyesGit commit message to validate
strictboolean–Enforce strict rules: max 72-char subject, imperative mood check (default: false)
NameTypeReqDescription
checks–––
has_bodyboolean––
is_breaking_changeboolean––
scope–––
scorenumber––
subject–––
type–––
validboolean––
{"message":"feat!: drop node 18"}
lorem_ipsum ~120

Generate Lorem Ipsum placeholder text for UI mockups, design prototypes, or test data population. Configurable paragraphs (1–10), sentences per paragraph (1–20), and approximate words per sentence (3–30).

NameTypeReqDescription
paragraphsnumber–Number of paragraphs to generate (1–10, default: 1)
sentences_per_paragraphnumber–Sentences per paragraph (1–20, default: 5)
words_per_sentencenumber–Approximate words per sentence (3–30, default: 10)
NameTypeReqDescription
paragraph_countnumber––
paragraphs–––
{"paragraphs":3,"sentences_per_paragraph":2}
mock_from_schema ~136

Generate realistic mock data from a JSON Schema. Supports all common types (string, number, integer, boolean, array, object, null), format hints (email, date, date-time, uri, uuid), enum, const, and nested schemas. Perfect for testing MCP tools with realistic data.

NameTypeReqDescription
countnumber–Number of mock objects to generate (default: 1, max: 20)
schemastring|object|arrayyesThe JSON Schema to generate from — a JSON string, or the schema object itself.
seedstring–Optional seed string for deterministic output (uses first char codes)
NameTypeReqDescription
countnumber––
results–––
{"count":20,"schema":{"properties":{"email":{"format":"email","type":"string"},"id":{"maximum":9,"minimum":5,"type":"integer"},"tag":{"enum":["a","b"]}},"required":["id","email"],"type":"object"}}
number_base_convert ~123

Convert numbers between bases: decimal, binary, octal, hexadecimal, or any base 2–36. Auto-detects 0x, 0b, 0o prefixes.

NameTypeReqDescription
from_basenumber–Source base 2–36 (auto-detects prefix if omitted)
inputstringyesNumber to convert (e.g., "255", "0xFF", "0b1010", "0o77")
to_basenumber–Target base 2–36 (omit to get all common bases)
NameTypeReqDescription
binarystring––
decimal–––
from_base–––
hexadecimalstring––
octalstring––
resultstring––
to_base–––
{"from_base":16,"input":"ff","to_base":10}
openapi_validate ~139

Validate the structure of an OpenAPI 3.x specification (JSON or YAML). Checks required top-level fields (openapi, info.title, info.version, paths), validates each operation (responses, operationId uniqueness), detects undeclared $ref components, and flags missing 2xx responses. Returns a PASS/FAIL verdict, a 0–100 compliance score, and a list of errors and warnings with JSON-pointer locations. Use before publishing an API spec or generating SDK code.

NameTypeReqDescription
inputstring|object|arrayyesThe OpenAPI 3.x spec — a JSON string, a YAML string, or the already-parsed spec object.
NameTypeReqDescription
errors–––
scorenumber––
statsobject––
verdict–––
warnings–––
{"input":{"info":{"title":"t","version":"1"},"openapi":"3.0.3","paths":{"/a":{"get":{"operationId":"getA","responses":{"200":{"description":"ok"}}}}}}}
parse_csv ~142

Parse a CSV string into a JSON array of objects (or raw arrays). Full RFC 4180: quoted fields may contain the delimiter, embedded newlines (the Excel/Sheets multi-line cell), and doubled quotes. Custom delimiters supported. An unterminated quote is rejected with its position rather than parsed into corrupted rows. Use when processing spreadsheet exports, data imports, or structured text pipelines where the source is CSV. Supports up to 200 KB.

NameTypeReqDescription
delimiterstring–Field delimiter character (default: ",")
headerboolean–Treat the first row as headers (default: true)
inputstringyesCSV content to parse
NameTypeReqDescription
columnsnumber––
headersarray––
row_countnumber––
rowsarray––
{"delimiter":";","input":"a;b\n1;2"}
rate_tool ~308

Give honest usage feedback on an IA-QA MCP tool. Give a score (1-5) and a comment. Rate low (1-2) if the tool was wrong, irrelevant, or a poor fit; rate high (4-5) only if it genuinely solved your need. Maintainers read ratings, one vote per agent and tool a month: comments and per-tool scores are not published, only the overall average and vote count. Comments are screened: one carrying a credential is not stored, personal data becomes placeholders — describe what happened, not what a model should do. Skip routine successes: signal, not praise. Example: rate_tool({ tool_name: "format_json", score: 2, comment: "Tried to pretty-print a JSON5 file, it rejected trailing commas — not usable for my case." })

NameTypeReqDescription
commentstring–Strongly encouraged — explain what you were trying to do and whether the tool got you there. Be specific about what was missing, wrong, or a poor fit. This is the most valuable part of the rating. Up…
scorenumberyesRating from 1 (poor) to 5 (excellent)
tool_namestringyesName of the MCP tool to rate (e.g. "format_json", "shield_analyze")
NameTypeReqDescription
comment–––
messagestring––
okboolean––
rated_atstring––
score–––
stored_charsnumber––
tool_name–––
truncatedboolean––
{"comment":"Formatted a 2 MB payload correctly.","score":4,"tool_name":"format_json"}
regex_test ~183

Test a regular expression pattern against an input string and return all matches with their index positions and named capture groups. Use for validating user inputs, extracting structured data from text, or debugging regex patterns. Supports flags g, i, m, s, u, y. The match runs in an isolated thread with a 500 ms budget: a pattern that blows up (catastrophic backtracking, e.g. "(a+)+$") comes back as redos_detected:true — a real ReDoS verdict on your pattern — instead of hanging.

NameTypeReqDescription
flagsstring–Regex flags: g (global), i (case-insensitive), m (multiline), s (dotAll) — default: ""
inputstringyesThe string to test against (max 50 KB)
patternstringyesRegular expression pattern (without delimiters)
NameTypeReqDescription
elapsed_msnumber––
flags–––
match_countnumber––
matched–––
matches–––
note–––
pattern–––
redos_detectedboolean––
verdict–––
{"flags":"g","input":"a 12-34 b 5-6","pattern":"\\d+-\\d+"}
text_stats ~119

Compute comprehensive statistics for any text: character count (with and without spaces), word count, line count, sentence count, paragraph count, and estimated reading time in minutes. Sentence counting is abbreviation-aware — titles (Mr., Dr.), acronyms (U.S., i.e., p.m.), initials, decimals, URLs and emails do not end a sentence, and a text with no terminal punctuation still counts as one. Use for validating form field lengths, evaluating LLM output verbosity, or content auditing.

NameTypeReqDescription
inputstringyesThe text to analyse
NameTypeReqDescription
chars–––
chars_no_space–––
lines–––
paragraphs–––
reading_time_minutes–––
sentences–––
words–––
{"input":"One two three.\nFour five!\n\nSix?"}
timestamp_convert ~90

Convert between Unix timestamps (seconds or milliseconds) and ISO-8601 / UTC date strings. Auto-detects epoch vs. millisecond format. Omit input to get the current time. Returns iso, unix_s, unix_ms, utc, date, and time fields.

NameTypeReqDescription
input––Unix timestamp (number, seconds or ms) or ISO date string. Omit to get the current time.
NameTypeReqDescription
datestring––
isostring––
timestring––
unix_msnumber––
unix_snumber––
utcstring––
{"input":0}
url_decode ~49

Decode a percent-encoded URL string back to plain text. Use when parsing query parameters from raw URLs or when displaying encoded values to users.

NameTypeReqDescription
inputstringyesURL-encoded string to decode
NameTypeReqDescription
decoded–––
{"input":"a%20b%26c"}
url_encode ~76

Percent-encode a string for safe use in URLs. Call this before programmatically building query strings, path segments, or form-encoded bodies to prevent injection and malformed URLs.

NameTypeReqDescription
inputstringyesString to URL-encode
modestring–"component" (default) or "full" for encodeURI behavior
NameTypeReqDescription
encoded–––
{"input":"a b\u0026c=d/é"}
validate_email ~63

Validate an email address against RFC 5322 syntax before storing it, sending a transactional email, or adding it to a mailing list. Returns { valid, email } — use this to avoid bounces and malformed data.

NameTypeReqDescription
emailstringyesEmail address to validate
NameTypeReqDescription
email–––
reasonstring––
validboolean––
{"email":"john.doe@example.com"}
xml_to_json ~108

Convert an XML string to a JSON object. Supports attributes, nested elements, arrays, CDATA, and namespaces. Options: parse numbers, parse booleans, ignore attributes.

NameTypeReqDescription
attr_prefixstring–Prefix for attribute keys (default: "@_")
ignore_attrsboolean–Ignore XML attributes (default: false)
inputstringyesXML string to convert
parse_valuesboolean–Auto-parse numbers and booleans (default: true)
NameTypeReqDescription
key_countnumber––
result–––
{"input":"\u003cr a=\"1\"\u003e\u003ci\u003ex\u003c/i\u003e\u003ci\u003ey\u003c/i\u003e\u003c/r\u003e"}
yaml_to_json ~102

Parse a YAML string and return the equivalent JSON value. The reverse of json_to_yaml. Supports nested objects, arrays, anchors, aliases, multi-document streams, and all scalar types. Use when processing config files, CI/CD pipeline definitions, or OpenAPI specs authored in YAML.

NameTypeReqDescription
inputstringyesYAML string to parse
multiboolean–If true, parse all documents in a multi-document stream and return an array (default: false)
NameTypeReqDescription
countnumber––
documents–––
json–––
{"input":"a: 1\nb: [x, y]"}
Install

How do I install the IA-QA Data & Dev — 36 tools MCP server?

IA-QA Data & Dev — 36 tools is a hosted endpoint at https://www.ia-qa.com/mcp/data, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

remote · www.ia-qa.com

# add to Claude Code
claude mcp add --transport http jcjamet-ia-qa-data 'https://www.ia-qa.com/mcp/data'
Common questions

What is the IA-QA Data & Dev — 36 tools MCP server?

IA-QA Data & Dev — 36 tools is an MCP server listed in the public MCP registry as io.github.JcJamet/ia-qa-data. Dev utilities for agents: JSON/YAML/CSV, schema validation, encoding, text & time. Free, no key. This page covers its hosted endpoint (https://www.ia-qa.com/mcp/data).

Is the IA-QA Data & Dev — 36 tools MCP server safe to use?

IA-QA Data & Dev — 36 tools scores 82 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the IA-QA Data & Dev — 36 tools MCP server expose?

IA-QA Data & Dev — 36 tools exposes 36 tools: find_tool, diff_text, rate_tool, validate_email, decode_jwt, and 31 more. Their descriptions and schemas cost roughly 4,190 tokens of context every time the server is loaded.

Does the IA-QA Data & Dev — 36 tools MCP server require authentication?

No. We connected to IA-QA Data & Dev — 36 tools without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.

Is the IA-QA Data & Dev — 36 tools MCP server still maintained?

IA-QA Data & Dev — 36 tools is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.