{"serverId":"mcp-registry/io.github.jcjamet/ia-qa-toolbox","tools":[{"name":"security_headers_check","fixed":{"name":"security_headers_check","description":"Analyse the HTTP security headers of a public URL OR of raw response headers you paste in. Grades each header (A–F) for: Strict-Transport-Security, Content-Security-Policy, X-Frame-Options, X-Content-Type-Options, Referrer-Policy, Permissions-Policy, X-XSS-Protection, Cross-Origin-Opener-Policy, Cross-Origin-Resource-Policy, and Cross-Origin-Embedder-Policy. Returns an overall score (0–100), per-header grades, missing headers, and fix snippets for Express, Nginx, and Apache. For localhost/privat","inputSchema":{"type":"object","properties":{"url":{"type":"string","description":"Optional. Full public URL to check (e.g. https://example.com). Omit it entirely when using `headers`. The server cannot reach localhost/private IPs."},"headers":{"description":"Optional, and sufficient on its own (no url needed). The response headers to grade, either as an object {\"strict-transport-security\": \"max-age=...\", ...} or as the raw header block pasted as a string (e.g. `curl -sI` output). Use this to audit a local server the remote MCP cannot reach.","type":"string"}}},"annotations":{"readOnlyHint":true,"openWorldHint":true,"idempotentHint":false,"destructiveHint":false}},"changes":[{"kind":"schema","detail":"Added \"type\":\"string\" to untyped parameters: headers. Change to number/boolean/array where that's what you accept.","verify":true}],"tokensBefore":308,"tokensAfter":312},{"name":"timestamp_convert","fixed":{"name":"timestamp_convert","description":"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.","inputSchema":{"type":"object","properties":{"input":{"description":"Unix timestamp (number, seconds or ms) or ISO date string. Omit to get the current time.","type":"string"}}},"annotations":{"readOnlyHint":true,"openWorldHint":false,"idempotentHint":false,"destructiveHint":false}},"changes":[{"kind":"schema","detail":"Added \"type\":\"string\" to untyped parameters: input. Change to number/boolean/array where that's what you accept.","verify":true}],"tokensBefore":121,"tokensAfter":125}],"toolsChanged":2,"tokensSaved":0,"todo":[],"note":"Deterministic fixes. Changes marked verify need a human look before shipping (renames, inferred annotations, inferred types, removed text). Parameter descriptions in `todo` need to be written by someone who knows the API."}