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

IA-QA — 130+ QA & Dev Tools for AI Agents

REMOTE · WWW.IA-QA.COM · SCANNED AUG 3

130+ QA & dev tools for AI agents: prompt injection, RAG testing, VLM eval, guardrails. Free.

Available components

+6 this week 76 Trust /100
Trust breakdown (6 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 →

Endpoint Security83
Transport & Reachability100
Schema Quality & AI Usability70
  • AI-judged instruction clarity (excellent).Pass
  • Context-footprint check failed: tool/resource definitions use about 20450 tokens (~136/item across 150 items; 150 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management27
  • Stability observed for 8 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
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Install

Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.

remote · www.ia-qa.com

# add to Claude Code
claude mcp add --transport http jcjamet-ia-qa-toolbox https://www.ia-qa.com/mcp
# ~/.codex/config.toml
[mcp_servers.jcjamet-ia-qa-toolbox]
url = "https://www.ia-qa.com/mcp"
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "jcjamet-ia-qa-toolbox": {
      "type": "remote",
      "url": "https://www.ia-qa.com/mcp",
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add jcjamet-ia-qa-toolbox --url https://www.ia-qa.com/mcp --transport streamable-http
# ~/.hermes/config.yaml
mcp_servers:
  jcjamet-ia-qa-toolbox:
    url: "https://www.ia-qa.com/mcp"
// mcp.json
{
  "mcpServers": {
    "jcjamet-ia-qa-toolbox": {
      "type": "http",
      "url": "https://www.ia-qa.com/mcp"
    }
  }
}

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

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.

  • 2 Aug 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.

  • 31 Jul 26 +3
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 30 Jul 26 +1
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 29 Jul 26 0
    • Tool “analyze_diff_bugs” rewrote its description, which is the text the model reads security
    • Tool “run_pr_gate_pipeline” rewrote its description, which is the text the model reads security
    • “find_tool” added an optional parameter “max_results” cosmetic
  • 28 Jul 26 +1

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

  • 27 Jul 26 +1
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 26 Jul 26 69

    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 3 Aug 2026 · Probed https://www.ia-qa.com/mcp

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=YR1,O=Let's Encrypt,C=US 11 Jun 2026 9 Sept 2026 RSA 2048 SHA256-RSA 6b2b8b5f2547d58014f06ba311ff41342ce
SANs: www.ia-qa.com
CN=YR1,O=Let's Encrypt,C=US (CA) CN=Root YR,O=ISRG,C=US 3 Sept 2025 2 Sept 2028 RSA 2048 SHA256-RSA a20253f15f2691c05dc1ce13b9bcca4e
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
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=()
Transports 2 probes
Transport URL Outcome Status Location
streamable-http https://www.ia-qa.com/mcp Verified 200
http (plaintext) http://www.ia-qa.com/mcp HTTPS enforced 301 https://www.ia-qa.com/mcp
MCP tools — 150 exposed · ~20,209 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.

Tool Tokens
flatten_json ~99

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
inputstringyesJSON string to flatten or unflatten
modestring"flatten" (default) or "unflatten"
separatorstringKey separator (default: ".")
NameTypeReqDescription
key_countnumber
max_deptharray
result

No examples provided.

format_bytes ~124

Convert raw byte counts to human-readable sizes in SI (KB=1000) or IEC (KiB=1024) units, or parse size strings back to bytes. Covers B, KB/KiB, MB/MiB, GB/GiB, TB/TiB, PB/PiB.

NameTypeReqDescription
bytesnumberNumber of bytes to format
size_stringstringSize string to parse to bytes (e.g. "1.5 GB", "512 MiB")
standardstringOutput standard (default: both)
NameTypeReqDescription
bytesnumber
original

No examples provided.

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
indentnumberIndent 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

No examples provided.

format_table ~99

Convert a JSON array of objects into a Markdown table. Automatically detects columns, aligns headers, and fills missing keys with empty cells. Use when an agent needs to present structured data — tool results, model comparisons, test reports — as a readable table in a response or document.

NameTypeReqDescription
columnsarrayColumn names and order (default: all keys from first row)
inputstringyesJSON array of objects to convert to a Markdown table
NameTypeReqDescription
columnsnumber
rowsnumber
tablestring

No examples provided.

function_call_validate ~99

Validate an LLM function call / tool_use output: check that function name is in allowed list, arguments match expected schema, no extra/missing args. For OpenAI function calling & MCP tool_use testing.

NameTypeReqDescription
allowed_functionsarrayyesList of allowed function definitions
function_callobjectyesThe function call object from LLM (e.g. { "name": "get_weather", "arguments": {"city":"Paris"} })
NameTypeReqDescription
error_countnumber
errorsarray
function_name
provided_args
required_args
validboolean

No examples provided.

generate_ci_workflow ~458

Generate a ready-to-commit GitHub Actions workflow that gates a build on IA-QA. Two gate types, combinable: "eval_contract" runs a .ia-eval.yaml through ia-qa-com/eval-action@v1 (LLM quality gate, needs a provider API key as a repo secret), and "cli_checks" runs deterministic primitives via npx @ia-qa/cli (secret scan, prompt-injection scan, security headers…) whose exit code fails the build. Deterministic template — no LLM call, no API key, same inputs give the same file. Returns the YAML, the secrets to create, and the remaining steps. Pair with generate_eval_yaml to produce the contract itself.

NameTypeReqDescription
cli_toolsarrayIA-QA tool names to run as deterministic gates, e.g. ["secret_scan","prompt_injection_scan"]. Tools with no known CI recipe get a --stdin step flagged in notes.
contract_pathstringPath to the .ia-eval.yaml contract, relative to the repo root (default: evals/smoke.ia-eval.yaml). Only used when the gate includes eval_contract.
cronstringCron expression when triggers include 'schedule' (default: '0 6 * * 1' — Mondays 06:00 UTC).
fail_on_failbooleanFail the build on a FAIL/PARTIAL verdict (default: true). Set false to report without gating.
gatestringWhich gate to emit. eval_contract = LLM eval via the action (default). cli_checks = deterministic CLI assertions. both = CLI checks first, eval last.
min_scorenumberOverride the contract min_score (0-100). Omit to use the value in the contract.
node_versionstringNode version for the CLI steps (default: "20").
providerstringLLM provider the contract runs against — decides which repository secret the workflow wires (default: groq).
triggersarrayWorkflow triggers (default: push + pull_request).
workflow_namestringWorkflow display name (default: "IA-QA Quality Gate").
NameTypeReqDescription
gatestring
next_stepsarray
notesarray
pathstring
secrets_requiredarray
yamlstring

No examples provided.

generate_curl ~154

Generate a curl command from request parameters. Supports GET/POST/PUT/DELETE, custom headers, JSON body, and form data. Useful for documentation, sharing, and debugging API calls.

NameTypeReqDescription
bodystringRaw request body string
body_jsonobjectJSON body (auto-adds Content-Type: application/json)
follow_redirectsbooleanFollow redirects with -L flag (default: true)
headersobjectRequest headers as key-value object
methodstringHTTP method (default: GET)
urlstringyesRequest URL (must be http/https)
verbosebooleanAdd -v for verbose output (default: false)
NameTypeReqDescription
curlstring
header_countnumber
method
url

No examples provided.

generate_eval_yaml ~191

Generate a complete .ia-eval.yaml evaluation contract from a plain-language description of what your LLM should do. Uses Groq llama-3.3-70b (server-side, no API key needed). Returns ready-to-run YAML for the LLM Test Runner (run_eval_contract). Picks appropriate evaluators (cosine_similarity, contains_check, hallucination_check, etc.) based on the task type.

NameTypeReqDescription
descriptionstringyesPlain-language description of what the LLM under test should do. Be specific: describe inputs, expected behaviour, and constraints.
scenario_countnumberNumber of scenarios to generate (default: 5). Covers happy path + edge cases + adversarial.
system_promptstringOptional system prompt of the LLM under test. Helps generate more accurate test cases.
task_typestringOptional task type hint to guide evaluator selection.
NameTypeReqDescription
model_usedstring
scenario_countnumber
task_typestring
yamlstring

No examples provided.

generate_hmac ~117

Compute an HMAC signature for a message using a secret key. Supports SHA-256 (default), SHA-512, SHA-1, and MD5. Used for API request signing, webhook verification (GitHub, Stripe, Twilio), and JWT validation.

NameTypeReqDescription
algorithmstringHash algorithm: sha256 (default), sha512, sha1, md5
encodingstringOutput encoding (default: hex)
messagestringyesMessage to sign
secretstringyesSecret key
NameTypeReqDescription
algorithm
encoding
hmac
message_lengthnumber

No examples provided.

generate_html_report ~79

Convert a run_eval_contract() LLM Test Runner JSON result into a fully self-contained dark-themed HTML report with Pass/Fail badges, side-by-side Input/Output/Ground-Truth panels, evaluator score bars, and a radar chart. Returns the HTML as a string.

NameTypeReqDescription
resultsobjectyesThe JSON object returned by run_eval_contract()
NameTypeReqDescription
html

No examples provided.

generate_json_ld ~138

Generate a ready-to-paste <script type="application/ld+json"> snippet for GEO / structured data optimization. Supported types: WebSite, FAQPage, Article, Person, Organization, SoftwareApplication, HowTo.

NameTypeReqDescription
faq_itemsarrayFor FAQPage/HowTo: array of { question, answer } objects
fieldsobjectSchema fields as key-value pairs (name, url, description, author, datePublished, etc.)
typestringyesSchema @type: "WebSite", "FAQPage", "Article", "Person", "Organization", "SoftwareApplication", "HowTo"
NameTypeReqDescription
acceptedAnswerobject
namestring
schema
snippetstring

No examples provided.

generate_password ~114

Generate a cryptographically secure random password using crypto.randomBytes. Configurable length (4–128), uppercase letters, digits, and symbols. Use when resetting user passwords, seeding test accounts, or generating API secrets.

NameTypeReqDescription
lengthnumberPassword length (4–128, default: 16)
numbersbooleanInclude digits (default: true)
symbolsbooleanInclude symbols like !@#$ (default: false)
uppercasebooleanInclude uppercase letters (default: true)
NameTypeReqDescription
charset_sizenumber
lengthnumber
password

No examples provided.

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
separatorstringSeparator character (default: "-")
NameTypeReqDescription
slug

No examples provided.

generate_test_cases ~90

Generate a set of test cases (valid, edge, invalid) for a given feature description. Returns test matrix with Gherkin scenarios ready to use.

NameTypeReqDescription
featurestringyesFeature or function to test. Be specific: describe inputs, expected behaviour, context.
inputsstringOptional: list of input parameters (one per line, e.g. "email: string [required]")
NameTypeReqDescription
featurestring
test_casesarray

No examples provided.

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
countnumberNumber of UUIDs to generate (1–100, default: 1)
NameTypeReqDescription
countnumber
uuids

No examples provided.

get_testing_guidelines ~141

Query the IA-QA methodology knowledge base. Returns structured testing guidelines, assertion strategies, thresholds, best practices, and relevant MCP tools for a given topic. Call without a topic to list all available topics. Topics: llm-unit-testing, rag-pipeline, prompt-stability, prompt-ab-testing, embedding-quality, eval-framework, semantic-testing, auto-testing, security, api-testing, ci-cd, multimodal, llm-data-security, agent-observability, pro-tips, learning-paths, golden-dataset.

NameTypeReqDescription
topicstringThe testing topic to retrieve guidelines for. Omit to get the full list of available topics.
NameTypeReqDescription
available_topicsarray
keywordsarray
tipstring
topic
usagestring

No examples provided.

guardrail_test ~80

Test an LLM response against a set of guardrail rules: must-include, must-not-include, max length, required format, language, forbidden patterns, and custom regex. Returns pass/fail per rule.

NameTypeReqDescription
responsestringyesThe LLM response to test
rulesarrayyesArray of guardrail rules to check
NameTypeReqDescription
all_passedboolean
detailstring
failed
label
passboolean
passed
results
rule
total_rulesnumber
value

No examples provided.

hallucination_check ~131

Word-overlap based hallucination check: verifies if an LLM answer's words and numbers appear in the provided source/context. Fast, deterministic, no API key needed. Limitations: not semantic — does not understand synonyms or paraphrases. For true semantic grounding, use run_semantic_tests with embedding mode. Essential for quick RAG accuracy testing.

NameTypeReqDescription
answerstringyesThe LLM-generated answer to verify
contextstringyesThe source/reference text that should ground the answer
strictbooleanIf true, every sentence in the answer must be supported (default: false)
NameTypeReqDescription
analysis
detailstring
entities
groundedboolean
grounded_countnumber
grounding_score
matched_wordsnumber
messagestring
numbers
overlapnumber
sentence
total_sentencesnumber
total_wordsnumber
ungrounded_countnumber
unsupported_claims
verdictstring

No examples provided.

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
algorithmstringHash algorithm: sha256 (default), sha512, sha1, md5
inputstringyesText to hash
NameTypeReqDescription
algorithm
hash
input_lengthnumber

No examples provided.

html_to_markdown ~81

Convert HTML to clean Markdown. Strips scripts, styles, nav, ads, and comments. Converts headings, lists, links, images, code blocks. Ideal for preparing web content as LLM context.

NameTypeReqDescription
inputstringyesHTML string to convert
strip_linksbooleanStrip link URLs, keep text only (default: false)
NameTypeReqDescription
markdown
markdown_lengthnumber
original_lengthnumber

No examples provided.

http_status_lookup ~72

Look up detailed information about any HTTP status code: class, name, description, cacheability, typical causes, and handling best practices. Covers all standard 1xx-5xx codes.

NameTypeReqDescription
codenumberyesHTTP status code (e.g. 200, 404, 429, 503)
NameTypeReqDescription
cacheable
class
code
descstring
description
namestring

No examples provided.

identify_caller ~71

Returns what the server knows about the current MCP client: clientInfo captured during initialize, User-Agent, and any _meta fields sent with this request. Useful for debugging caller identification.

NameTypeReqDescription
_metaobjectOptional self-identification. Keys: agent (string), model (string), version (string).
NameTypeReqDescription
effective_agentstring
meta_overrideobject
notestring
sessionobject

No examples provided.

jira_to_test_suite ~384

Transform a Jira ticket into a complete test suite: Gherkin scenarios, E2E steps, API test cases, test data matrix, and ambiguity detection. Accepts either Jira credentials (auto-fetch) or a pre-fetched issue object. The returned test_suite includes _gherkin_warnings (deterministic syntax validation — empty if clean). Requires BYOK LLM key (OpenAI, Anthropic, etc.).

NameTypeReqDescription
api_keystringyesYour LLM provider API key (OpenAI sk-, Anthropic sk-ant-, Google AIzaSy-, etc.).
confluence_pagesarrayOptional array of pre-fetched Confluence page objects from fetch_confluence_page, used as documentation context.
issueobjectPre-fetched issue object from fetch_jira_issue, OR a mock object with fields: key, summary, description (plain text or Markdown), status, issue_type, priority, labels, comments. Use this for offline/…
issue_keystringJira issue key to fetch automatically, e.g. "PROJ-123". Required if issue is not provided.
jira_base_urlstringAtlassian base URL. Required for auto-fetch mode.
jira_emailstringAtlassian account email. Required for auto-fetch mode.
jira_tokenstringAtlassian API token. Required for auto-fetch mode.
max_tokensintegerMaximum tokens for the LLM response. Default: 8192. Increase for large tickets with many ACs; decrease to reduce cost on simple tickets.
modelstringyesLLM model to use, e.g. "gpt-4o-mini", "claude-3-5-haiku-20241022", "gemini-2.0-flash".
NameTypeReqDescription
issue_keystring
issue_urlstring
latency_msnumber
model_usedstring
summarystring
test_suiteobject
tokens_usednumber

No examples provided.

json_diff ~89

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.

NameTypeReqDescription
afterstringyesModified JSON string (after)
beforestringyesOriginal JSON string (before)
max_depthnumberMax nesting depth to recurse (default: 10)
NameTypeReqDescription
addedboolean
changesarray
identicalboolean
modifiedboolean
removedboolean
total_changesnumber

No examples provided.

json_schema_generate ~134

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
inputstringyesSample JSON value (object, array, or scalar) to infer the schema from
required_allbooleanMark all detected object properties as required (default: true)
NameTypeReqDescription
format
itemsobject
schemaobject
typestring

No examples provided.

json_schema_validate ~108

Validate a JSON value against a JSON Schema (draft-07 subset). Supports type, required, properties, items, enum, const, pattern, format (email/uri/date), minimum/maximum, minLength/maxLength, minItems/maxItems, uniqueItems, additionalProperties, anyOf, allOf, oneOf. Returns all validation errors with dot-notation paths.

NameTypeReqDescription
schemastringyesJSON Schema as a JSON string
valuestringyesJSON string to validate
NameTypeReqDescription
error_countnumber
errorsarray
validboolean

No examples provided.

json_to_csv ~78

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

NameTypeReqDescription
delimiterstringColumn delimiter (default: ",")
headersbooleanInclude header row (default: true)
inputstringyesJSON string containing an array of objects
NameTypeReqDescription
column_names
columnsnumber
csvstring
rowsnumber

No examples provided.

json_to_yaml ~67

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

NameTypeReqDescription
indentnumberIndentation size in spaces (default: 2)
inputstringyesJSON string to convert to YAML
NameTypeReqDescription
linesnumber
yaml

No examples provided.

latency_benchmark ~110

Measure response time of one or more HTTP endpoints (GET/POST). Runs N iterations and returns min/max/avg/p95 latency. Useful for API and MCP server benchmarking.

NameTypeReqDescription
endpointsstring|arrayyesEndpoints to benchmark. Accepts a single URL string, an array of URL strings, or an array of {url, method?, body?, headers?, label?} objects.
iterationsnumberNumber of iterations per endpoint (default: 3, max: 10)
NameTypeReqDescription
iterationsnumber
resultsarray

No examples provided.

levenshtein_distance ~109

Compute the Levenshtein (edit) distance and normalized similarity ratio between two strings. Supports batch comparison. Useful for fuzzy string matching, deduplication, and test result comparison.

NameTypeReqDescription
astringFirst string (single-pair mode)
bstringSecond string (single-pair mode)
batcharrayBatch of {a,b} pairs (max 50)
case_insensitivebooleanIgnore case differences (default: false)
NameTypeReqDescription
a
b
countnumber
distance
modestring
operations_needed
results
similaritystring

No examples provided.

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
strictbooleanEnforce strict rules: max 72-char subject, imperative mood check (default: false)
NameTypeReqDescription
checks
has_bodyboolean
is_breaking_changeboolean
scope
scorenumber
subject
type
validboolean

No examples provided.

list_llm_models ~137

List all LLM models available on ia-qa.com with their provider, API endpoint, and capabilities. Filter by provider name (e.g. "Groq", "HuggingFace", "OpenAI") or return the full catalog. Use this to discover which models are available before calling an LLM API, or to compare providers.

NameTypeReqDescription
providerstringFilter by provider name (case-insensitive). E.g. "Groq", "HuggingFace", "OpenAI", "Anthropic", "Google", "DeepSeek", "xAI", "Ollama". Omit for full catalog.
NameTypeReqDescription
filter
models
providers
totalnumber

No examples provided.

list_local_tests ~70

Discover .ia-eval.yaml LLM test suite files in the project directory. Scans CWD and standard sub-directories (evals/, tests/, contracts/). Returns file paths ready to pass to run_eval_contract.

NameTypeReqDescription
dirstringDirectory to scan (defaults to server CWD)
NameTypeReqDescription
countnumber
dirstring
filesarray

No examples provided.

llm_fit_finder ~254

Find the best LLM for a given use case. Compares 30+ cloud API models and 12+ local models by cost, speed, benchmarks, features and VRAM requirements. Returns ranked recommendations with cost simulation. No API key needed.

NameTypeReqDescription
featuresarrayRequired features: vision, function_calling, json_mode, streaming, reasoning
max_budgetnumberMaximum monthly budget in USD (based on tokens_per_day)
modestringcloud (API models) or local (Ollama/self-hosted). Default: cloud
quantizationstringQuantization (only for mode=local): Q4_K_M | Q8_0 | FP16. Default: Q4_K_M
tokens_per_daynumberEstimated daily token volume (default: 100000)
top_nnumberNumber of recommendations to return (default: 5)
use_casestringPrimary use case: chatbot | code | rag | summarization | classification | reasoning | agents | multilingual
vram_gbnumberGPU VRAM in GB (only for mode=local). Default: 16
NameTypeReqDescription
modestring
quantization
resultsarray
scorenumber
tokens_per_day
total_matchingnumber
use_case
vram_gb

No examples provided.

llm_format_check ~92

Validate that an LLM output matches an expected format: JSON, Markdown, code block, bullet list, numbered list, table, YAML, XML, or custom regex. Essential for structured output testing.

NameTypeReqDescription
expected_formatstringyesExpected format
outputstringyesThe LLM output to validate
regex_patternstringCustom regex pattern (only when expected_format is "regex")
NameTypeReqDescription
checks
expected_format
failed
passed
total_checksnumber
validboolean

No examples provided.

llm_generate ~352

Generate text using open-source LLM models hosted on Groq (ultra-fast) or HuggingFace Inference (serverless). No API key required — the server provides its own keys. Supported models: Qwen3 32B, Gemma 4 27B, Gemma 3 27B, Llama 3.3 70B, Llama 4 Scout, DeepSeek R1, Mistral Small 24B, and more. Use list_llm_models to see the full catalog. Rate-limited to prevent abuse.

NameTypeReqDescription
max_tokensnumberMaximum tokens to generate (default: 2048, max: 4096)
modelstringModel ID (default: "qwen/qwen3-32b"). Server-keyed whitelist only — Groq: qwen/qwen3-32b, llama-3.3-70b-versatile, meta-llama/llama-4-scout-17b-16e-instruct, llama-3.1-8b-instant; HuggingFace: Qwen/Q…
promptstringyesThe user prompt / instruction to send to the model
systemstringOptional system prompt to set context or persona
temperaturenumberSampling temperature 0.0–1.5 (default: 0.7)
NameTypeReqDescription
content
latency_msnumber
model
provider
usage

No examples provided.

llm_json_schema_check ~85

Validate that an LLM JSON output matches a JSON Schema definition. Tests required fields, types, enums, nested objects, and arrays. Critical for function-calling and structured output testing.

NameTypeReqDescription
outputstringyesThe LLM JSON output (raw string, will be parsed)
schemaobjectyesJSON Schema (draft-07 subset) to validate against
NameTypeReqDescription
error_countnumber
errorsarray
parse_error
parsed_type
validboolean

No examples provided.

llm_output_validator ~240

Validate an LLM response against QA criteria: format checks (JSON, code, markdown), content rules (must-include, must-not-include), length constraints, language detection, and safety patterns. Essential for QA testing LLM-powered features.

NameTypeReqDescription
check_json_schemastringIf expected_format is JSON, provide required keys as comma-separated list to validate the structure
check_safetybooleanCheck for PII patterns (emails, phones, SSN), profanity signals, and prompt leakage
expected_formatstringExpected output format
expected_languagestringExpected language of the output (en, fr, es, de…). Checks for common words.
max_lengthnumberMaximum character length for the output
min_lengthnumberMinimum character length for the output
must_includestringComma-separated strings that MUST appear in the output
must_not_includestringComma-separated strings that must NOT appear (e.g. "TODO, FIXME, undefined, NaN")
outputstringyesThe LLM output text to validate
NameTypeReqDescription
checks
failed
passed
totalnumber
verdict

No examples provided.

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
paragraphsnumberNumber of paragraphs to generate (1–10, default: 1)
sentences_per_paragraphnumberSentences per paragraph (1–20, default: 5)
words_per_sentencenumberApproximate words per sentence (3–30, default: 10)
NameTypeReqDescription
paragraph_countnumber
paragraphs

No examples provided.

mcp_schema_lint ~60

Lint an MCP tool definition for best practices: naming conventions, description quality, schema completeness, required fields consistency, description length. Returns actionable warnings.

NameTypeReqDescription
tool_definitionobjectyesMCP tool definition object with name, description, inputSchema
NameTypeReqDescription
error_countnumber
errors
grade
quality_score
warning_countnumber
warnings

No examples provided.

mcp_server_evaluate ~148

Run a full compliance evaluation against a live MCP server URL. Tests: server reachability (ping), manifest discovery (GET /mcp), schema quality (snake_case names, descriptions, inputSchema), JSON-RPC 2.0 test call, and P50/P95 latency. Returns a PASS/FIX/BLOCK verdict with a 0-100 score and per-check details.

NameTypeReqDescription
test_tool_namestringSpecific tool name to use in the JSON-RPC test call (defaults to the first tool in the manifest)
urlstringyesBase URL of the MCP server (e.g. https://ia-qa.com or http://localhost:3001)
NameTypeReqDescription
checksobject
latencyobject
scorenumber
urlstring
verdictstring

No examples provided.

mcp_server_health_check ~97

Generate a health check report for an MCP server's tool manifest. Validates tool definitions, schema quality, naming conventions, and documentation completeness. Paste the server manifest JSON to audit.

NameTypeReqDescription
manifeststringyesMCP server manifest JSON (the response from GET /mcp or tools/list)
strictbooleanEnable strict mode: also check for optional best practices (examples, default values, descriptions > 20 chars)
NameTypeReqDescription
checksarray
failednumber
passednumber
statsobject
toolIssues
totalnumber
verdictstring

No examples provided.

merge_json ~92

Deep merge two JSON objects. Supports three array strategies: replace (default), concat, or unique (dedup concat). Nested objects are recursively merged — override takes precedence for primitives.

NameTypeReqDescription
array_strategystringArray merge strategy: replace (default), concat, or unique
basestringyesBase JSON object (will be merged into)
overridestringyesOverride JSON object (takes precedence)
NameTypeReqDescription
merged
new_keysarray
overridden_keysarray
total_keysnumber

No examples provided.

minify_js ~77

Minify a JavaScript snippet, function, class, or module up to 50 KB using Terser. Returns minified code and byte savings. Use when embedding scripts in HTML templates, report payloads, or injecting inline code programmatically.

NameTypeReqDescription
codestringyesJavaScript code to minify (max 50kb)
NameTypeReqDescription
minified

No examples provided.

mock_from_schema ~122

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
countnumberNumber of mock objects to generate (default: 1, max: 20)
schemastringyesJSON Schema as a JSON string
seedstringOptional seed string for deterministic output (uses first char codes)
NameTypeReqDescription
countnumber
results

No examples provided.

model_info ~109

Get detailed specs for an AI model: context window, pricing per 1K tokens, knowledge cutoff, provider, multimodal support, reasoning capabilities, and feature list. Covers 30+ models from OpenAI, Anthropic, Google, DeepSeek, Meta, Mistral, Cohere, xAI.

NameTypeReqDescription
modelstringyesModel name (e.g. "gpt-4o", "claude-3.5-sonnet", "gemini-2.5-pro")
NameTypeReqDescription
model
pricing_per_1kobject

No examples provided.

multimodal_eval_guide ~409

Unified tool for multimodal AI evaluation: set action=guide for reference thresholds/interpretation (CLIP, FID, VQA), or set action=clip_score / fid_score / vqa_accuracy / pipeline to compute real metrics via HuggingFace Inference API and VLM BYOK calls. One tool for both reference and computation.

NameTypeReqDescription
actionstringguide (default) = reference thresholds/interpretation. clip_score/fid_score/vqa_accuracy = compute that metric. pipeline = run all three.
api_keystring[vqa_accuracy] Your API key for the provider (BYOK).
clipobject[pipeline] {image_url, text} for CLIP.
fidobject[pipeline] {real_images, generated_images} for FID.
generated_imagesarray[fid_score] Array of generated image URLs.
image_base64string[clip_score/vqa_accuracy] Base64-encoded image data.
image_mime_typestring[clip_score/vqa_accuracy] MIME type for base64 image.
image_urlstring[clip_score/vqa_accuracy] Public URL of the image.
metricstring[guide only] Metric to explain.
modelstring[vqa_accuracy] VLM model ID (default: gpt-4o).
real_imagesarray[fid_score] Array of real image URLs.
scorenumber[guide only] Optional score value to interpret.
system_promptstring[vqa_accuracy] Optional system prompt.
test_casesarray[vqa_accuracy] Array of {question, accepted_answers} objects.
textstring[clip_score only] Text description to compare against the image.
vqaobject[pipeline] VQA config object (same inputs as vqa_accuracy).
NameTypeReqDescription
best_practicesarray
comparison_tablearray
errors
metrics
results
web_toolstring

No examples provided.