{
    "openapi": "3.0.3",
    "info": {
        "title": "ToolCenter API",
        "description": "Thirty-plus web tools for developers and AI agents. Screenshots, PDFs, web search, scraping, SEO audits, DNS/SSL/WHOIS, and more \u2014 under one bearer token. Fifteen tools also expose an MCP surface for Claude Desktop / Cursor / Claude Code.",
        "version": "2.0.0",
        "contact": {
            "email": "hey@toolcenter.dev",
            "url": "https://toolcenter.dev"
        },
        "license": {
            "name": "MIT",
            "url": "https://opensource.org/licenses/MIT"
        }
    },
    "servers": [
        {
            "url": "https://api.toolcenter.dev",
            "description": "Production"
        }
    ],
    "paths": {
        "/v1/screenshot": {
            "post": {
                "tags": [
                    "Capture"
                ],
                "summary": "Screenshot",
                "description": "Full-page screenshots of any URL, 4K, dark mode, element-scoped. Also available as an MCP tool.",
                "operationId": "screenshot",
                "x-mcp-tool": true,
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GenericRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Error"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Invalid or missing API key"
                    },
                    "403": {
                        "description": "IP not allowed / SSRF blocked"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    },
                    "500": {
                        "description": "Server error"
                    }
                },
                "security": [
                    {
                        "BearerAuth": []
                    }
                ]
            }
        },
        "/v1/pdf": {
            "post": {
                "tags": [
                    "Capture"
                ],
                "summary": "HTML \u2192 PDF",
                "description": "Render any URL or HTML to print-ready PDF with custom page size. Also available as an MCP tool.",
                "operationId": "pdf",
                "x-mcp-tool": true,
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GenericRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Error"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Invalid or missing API key"
                    },
                    "403": {
                        "description": "IP not allowed / SSRF blocked"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    },
                    "500": {
                        "description": "Server error"
                    }
                },
                "security": [
                    {
                        "BearerAuth": []
                    }
                ]
            }
        },
        "/v1/html-to-image": {
            "post": {
                "tags": [
                    "Capture"
                ],
                "summary": "HTML \u2192 Image",
                "description": "Turn raw HTML/CSS into a PNG. Great for social cards and email.",
                "operationId": "html_to_image",
                "x-mcp-tool": false,
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GenericRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Error"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Invalid or missing API key"
                    },
                    "403": {
                        "description": "IP not allowed / SSRF blocked"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    },
                    "500": {
                        "description": "Server error"
                    }
                },
                "security": [
                    {
                        "BearerAuth": []
                    }
                ]
            }
        },
        "/v1/og-image": {
            "post": {
                "tags": [
                    "Capture"
                ],
                "summary": "OG Image",
                "description": "Dynamic Open Graph images from a template. Twitter / LinkedIn sizes.",
                "operationId": "og_image",
                "x-mcp-tool": false,
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GenericRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Error"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Invalid or missing API key"
                    },
                    "403": {
                        "description": "IP not allowed / SSRF blocked"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    },
                    "500": {
                        "description": "Server error"
                    }
                },
                "security": [
                    {
                        "BearerAuth": []
                    }
                ]
            }
        },
        "/v1/placeholder": {
            "post": {
                "tags": [
                    "Capture"
                ],
                "summary": "Placeholder",
                "description": "Plain, dimension-stamped placeholder images for mockups.",
                "operationId": "placeholder",
                "x-mcp-tool": false,
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GenericRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Error"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Invalid or missing API key"
                    },
                    "403": {
                        "description": "IP not allowed / SSRF blocked"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    },
                    "500": {
                        "description": "Server error"
                    }
                },
                "security": [
                    {
                        "BearerAuth": []
                    }
                ]
            }
        },
        "/v1/responsive": {
            "post": {
                "tags": [
                    "Capture"
                ],
                "summary": "Responsive Preview",
                "description": "Screenshot a URL at 5 viewports in one call.",
                "operationId": "responsive_preview",
                "x-mcp-tool": false,
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GenericRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Error"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Invalid or missing API key"
                    },
                    "403": {
                        "description": "IP not allowed / SSRF blocked"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    },
                    "500": {
                        "description": "Server error"
                    }
                },
                "security": [
                    {
                        "BearerAuth": []
                    }
                ]
            }
        },
        "/v1/favicon": {
            "post": {
                "tags": [
                    "Capture"
                ],
                "summary": "Favicon Fetch",
                "description": "Grab the best-quality favicon for any domain.",
                "operationId": "favicon",
                "x-mcp-tool": false,
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GenericRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Error"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Invalid or missing API key"
                    },
                    "403": {
                        "description": "IP not allowed / SSRF blocked"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    },
                    "500": {
                        "description": "Server error"
                    }
                },
                "security": [
                    {
                        "BearerAuth": []
                    }
                ]
            }
        },
        "/v1/watermark": {
            "post": {
                "tags": [
                    "Capture"
                ],
                "summary": "Watermark",
                "description": "Overlay text or image watermark on uploaded images.",
                "operationId": "watermark",
                "x-mcp-tool": false,
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GenericRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Error"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Invalid or missing API key"
                    },
                    "403": {
                        "description": "IP not allowed / SSRF blocked"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    },
                    "500": {
                        "description": "Server error"
                    }
                },
                "security": [
                    {
                        "BearerAuth": []
                    }
                ]
            }
        },
        "/v1/image-resize": {
            "post": {
                "tags": [
                    "Capture"
                ],
                "summary": "Image Resize",
                "description": "Resize, crop and re-encode images. WebP/AVIF pipeline.",
                "operationId": "image_resize",
                "x-mcp-tool": false,
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GenericRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Error"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Invalid or missing API key"
                    },
                    "403": {
                        "description": "IP not allowed / SSRF blocked"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    },
                    "500": {
                        "description": "Server error"
                    }
                },
                "security": [
                    {
                        "BearerAuth": []
                    }
                ]
            }
        },
        "/v1/compress": {
            "post": {
                "tags": [
                    "Capture"
                ],
                "summary": "Image Compress",
                "description": "Lossless / lossy compression. MozJPEG + oxipng.",
                "operationId": "compress",
                "x-mcp-tool": false,
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GenericRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Error"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Invalid or missing API key"
                    },
                    "403": {
                        "description": "IP not allowed / SSRF blocked"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    },
                    "500": {
                        "description": "Server error"
                    }
                },
                "security": [
                    {
                        "BearerAuth": []
                    }
                ]
            }
        },
        "/v1/qr": {
            "post": {
                "tags": [
                    "Codes"
                ],
                "summary": "QR Code",
                "description": "Styled QR codes with logo overlay, custom colors, SVG or PNG.",
                "operationId": "qr_code",
                "x-mcp-tool": false,
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GenericRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Error"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Invalid or missing API key"
                    },
                    "403": {
                        "description": "IP not allowed / SSRF blocked"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    },
                    "500": {
                        "description": "Server error"
                    }
                },
                "security": [
                    {
                        "BearerAuth": []
                    }
                ]
            }
        },
        "/v1/barcode": {
            "post": {
                "tags": [
                    "Codes"
                ],
                "summary": "Barcode",
                "description": "EAN, UPC, Code 128 and more \u2014 PNG or SVG output.",
                "operationId": "barcode",
                "x-mcp-tool": false,
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GenericRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Error"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Invalid or missing API key"
                    },
                    "403": {
                        "description": "IP not allowed / SSRF blocked"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    },
                    "500": {
                        "description": "Server error"
                    }
                },
                "security": [
                    {
                        "BearerAuth": []
                    }
                ]
            }
        },
        "/v1/hash": {
            "post": {
                "tags": [
                    "Data"
                ],
                "summary": "Hash",
                "description": "MD5, SHA-1/256/512, bcrypt, argon2.",
                "operationId": "hash",
                "x-mcp-tool": false,
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GenericRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Error"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Invalid or missing API key"
                    },
                    "403": {
                        "description": "IP not allowed / SSRF blocked"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    },
                    "500": {
                        "description": "Server error"
                    }
                },
                "security": [
                    {
                        "BearerAuth": []
                    }
                ]
            }
        },
        "/v1/base64": {
            "post": {
                "tags": [
                    "Data"
                ],
                "summary": "Base64",
                "description": "Encode / decode files and strings, data-URL output.",
                "operationId": "base64",
                "x-mcp-tool": false,
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GenericRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Error"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Invalid or missing API key"
                    },
                    "403": {
                        "description": "IP not allowed / SSRF blocked"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    },
                    "500": {
                        "description": "Server error"
                    }
                },
                "security": [
                    {
                        "BearerAuth": []
                    }
                ]
            }
        },
        "/v1/uuid": {
            "post": {
                "tags": [
                    "Data"
                ],
                "summary": "UUID",
                "description": "v1, v4, v7 and ULIDs. Bulk generate up to 1000 at a time.",
                "operationId": "uuid",
                "x-mcp-tool": false,
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GenericRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Error"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Invalid or missing API key"
                    },
                    "403": {
                        "description": "IP not allowed / SSRF blocked"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    },
                    "500": {
                        "description": "Server error"
                    }
                },
                "security": [
                    {
                        "BearerAuth": []
                    }
                ]
            }
        },
        "/v1/password": {
            "post": {
                "tags": [
                    "Data"
                ],
                "summary": "Password",
                "description": "Crypto-strong password generator with strength scoring.",
                "operationId": "password",
                "x-mcp-tool": false,
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GenericRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Error"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Invalid or missing API key"
                    },
                    "403": {
                        "description": "IP not allowed / SSRF blocked"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    },
                    "500": {
                        "description": "Server error"
                    }
                },
                "security": [
                    {
                        "BearerAuth": []
                    }
                ]
            }
        },
        "/v1/json": {
            "post": {
                "tags": [
                    "Data"
                ],
                "summary": "JSON tools",
                "description": "Validate, format, minify, diff two JSON blobs.",
                "operationId": "json",
                "x-mcp-tool": false,
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GenericRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Error"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Invalid or missing API key"
                    },
                    "403": {
                        "description": "IP not allowed / SSRF blocked"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    },
                    "500": {
                        "description": "Server error"
                    }
                },
                "security": [
                    {
                        "BearerAuth": []
                    }
                ]
            }
        },
        "/v1/markdown": {
            "post": {
                "tags": [
                    "Data"
                ],
                "summary": "Markdown \u2192 HTML",
                "description": "CommonMark + GFM, syntax-highlighted. Front-matter aware.",
                "operationId": "markdown",
                "x-mcp-tool": false,
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GenericRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Error"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Invalid or missing API key"
                    },
                    "403": {
                        "description": "IP not allowed / SSRF blocked"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    },
                    "500": {
                        "description": "Server error"
                    }
                },
                "security": [
                    {
                        "BearerAuth": []
                    }
                ]
            }
        },
        "/v1/minify": {
            "post": {
                "tags": [
                    "Data"
                ],
                "summary": "Minify",
                "description": "HTML / CSS / JS minification via terser & lightningcss.",
                "operationId": "minify",
                "x-mcp-tool": false,
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GenericRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Error"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Invalid or missing API key"
                    },
                    "403": {
                        "description": "IP not allowed / SSRF blocked"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    },
                    "500": {
                        "description": "Server error"
                    }
                },
                "security": [
                    {
                        "BearerAuth": []
                    }
                ]
            }
        },
        "/v1/cron": {
            "post": {
                "tags": [
                    "Data"
                ],
                "summary": "Cron Parser",
                "description": "Explain cron expressions in English + next 10 runs.",
                "operationId": "cron_parser",
                "x-mcp-tool": false,
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GenericRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Error"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Invalid or missing API key"
                    },
                    "403": {
                        "description": "IP not allowed / SSRF blocked"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    },
                    "500": {
                        "description": "Server error"
                    }
                },
                "security": [
                    {
                        "BearerAuth": []
                    }
                ]
            }
        },
        "/v1/mock-data": {
            "post": {
                "tags": [
                    "Data"
                ],
                "summary": "Mock Data",
                "description": "Generate realistic fake datasets \u2014 users, products, addresses.",
                "operationId": "mock_data",
                "x-mcp-tool": false,
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GenericRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Error"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Invalid or missing API key"
                    },
                    "403": {
                        "description": "IP not allowed / SSRF blocked"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    },
                    "500": {
                        "description": "Server error"
                    }
                },
                "security": [
                    {
                        "BearerAuth": []
                    }
                ]
            }
        },
        "/v1/search": {
            "post": {
                "tags": [
                    "Web"
                ],
                "summary": "Web Search",
                "description": "Clean SERP results with snippets. Built for agents. Also available as an MCP tool.",
                "operationId": "web_search",
                "x-mcp-tool": true,
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GenericRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Error"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Invalid or missing API key"
                    },
                    "403": {
                        "description": "IP not allowed / SSRF blocked"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    },
                    "500": {
                        "description": "Server error"
                    }
                },
                "security": [
                    {
                        "BearerAuth": []
                    }
                ]
            }
        },
        "/v1/scrape": {
            "post": {
                "tags": [
                    "Web"
                ],
                "summary": "Web Scraper",
                "description": "Fetch \u2192 readable markdown. 500\u00d7 fewer tokens than raw HTML. Also available as an MCP tool.",
                "operationId": "web_scraper",
                "x-mcp-tool": true,
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GenericRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Error"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Invalid or missing API key"
                    },
                    "403": {
                        "description": "IP not allowed / SSRF blocked"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    },
                    "500": {
                        "description": "Server error"
                    }
                },
                "security": [
                    {
                        "BearerAuth": []
                    }
                ]
            }
        },
        "/v1/metadata": {
            "post": {
                "tags": [
                    "Web"
                ],
                "summary": "Metadata",
                "description": "Extract meta, OG, Twitter cards, JSON-LD from any URL. Also available as an MCP tool.",
                "operationId": "metadata",
                "x-mcp-tool": true,
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GenericRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Error"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Invalid or missing API key"
                    },
                    "403": {
                        "description": "IP not allowed / SSRF blocked"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    },
                    "500": {
                        "description": "Server error"
                    }
                },
                "security": [
                    {
                        "BearerAuth": []
                    }
                ]
            }
        },
        "/v1/link-preview": {
            "post": {
                "tags": [
                    "Web"
                ],
                "summary": "Link Preview",
                "description": "Rich link unfurling \u2014 title, image, description, favicon. Also available as an MCP tool.",
                "operationId": "link_preview",
                "x-mcp-tool": true,
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GenericRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Error"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Invalid or missing API key"
                    },
                    "403": {
                        "description": "IP not allowed / SSRF blocked"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    },
                    "500": {
                        "description": "Server error"
                    }
                },
                "security": [
                    {
                        "BearerAuth": []
                    }
                ]
            }
        },
        "/v1/broken-links": {
            "post": {
                "tags": [
                    "Web"
                ],
                "summary": "Broken Links",
                "description": "Crawl a site and list every 4xx/5xx link. Sitemap aware. Also available as an MCP tool.",
                "operationId": "broken_links",
                "x-mcp-tool": true,
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GenericRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Error"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Invalid or missing API key"
                    },
                    "403": {
                        "description": "IP not allowed / SSRF blocked"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    },
                    "500": {
                        "description": "Server error"
                    }
                },
                "security": [
                    {
                        "BearerAuth": []
                    }
                ]
            }
        },
        "/v1/diff": {
            "post": {
                "tags": [
                    "Web"
                ],
                "summary": "Website Diff",
                "description": "Detect visual + content changes between two snapshots. Also available as an MCP tool.",
                "operationId": "website_diff",
                "x-mcp-tool": true,
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GenericRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Error"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Invalid or missing API key"
                    },
                    "403": {
                        "description": "IP not allowed / SSRF blocked"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    },
                    "500": {
                        "description": "Server error"
                    }
                },
                "security": [
                    {
                        "BearerAuth": []
                    }
                ]
            }
        },
        "/v1/seo": {
            "post": {
                "tags": [
                    "Seo"
                ],
                "summary": "SEO Analyzer",
                "description": "Full on-page audit: tags, headings, schema, OG coverage. Also available as an MCP tool.",
                "operationId": "seo_analyzer",
                "x-mcp-tool": true,
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GenericRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Error"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Invalid or missing API key"
                    },
                    "403": {
                        "description": "IP not allowed / SSRF blocked"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    },
                    "500": {
                        "description": "Server error"
                    }
                },
                "security": [
                    {
                        "BearerAuth": []
                    }
                ]
            }
        },
        "/v1/pagespeed": {
            "post": {
                "tags": [
                    "Seo"
                ],
                "summary": "PageSpeed",
                "description": "Lighthouse scores + Core Web Vitals for any URL.",
                "operationId": "pagespeed",
                "x-mcp-tool": false,
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GenericRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Error"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Invalid or missing API key"
                    },
                    "403": {
                        "description": "IP not allowed / SSRF blocked"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    },
                    "500": {
                        "description": "Server error"
                    }
                },
                "security": [
                    {
                        "BearerAuth": []
                    }
                ]
            }
        },
        "/v1/accessibility": {
            "post": {
                "tags": [
                    "Seo"
                ],
                "summary": "Accessibility",
                "description": "WCAG 2.2 audit powered by axe-core. Also available as an MCP tool.",
                "operationId": "accessibility",
                "x-mcp-tool": true,
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GenericRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Error"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Invalid or missing API key"
                    },
                    "403": {
                        "description": "IP not allowed / SSRF blocked"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    },
                    "500": {
                        "description": "Server error"
                    }
                },
                "security": [
                    {
                        "BearerAuth": []
                    }
                ]
            }
        },
        "/v1/carbon": {
            "post": {
                "tags": [
                    "Seo"
                ],
                "summary": "Carbon Footprint",
                "description": "Estimate CO\u2082 per pageview \u2014 green-web verified.",
                "operationId": "carbon_footprint",
                "x-mcp-tool": false,
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GenericRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Error"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Invalid or missing API key"
                    },
                    "403": {
                        "description": "IP not allowed / SSRF blocked"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    },
                    "500": {
                        "description": "Server error"
                    }
                },
                "security": [
                    {
                        "BearerAuth": []
                    }
                ]
            }
        },
        "/v1/colors": {
            "post": {
                "tags": [
                    "Seo"
                ],
                "summary": "Color Palette",
                "description": "Extract brand palette from any URL or uploaded image.",
                "operationId": "color_palette",
                "x-mcp-tool": false,
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GenericRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Error"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Invalid or missing API key"
                    },
                    "403": {
                        "description": "IP not allowed / SSRF blocked"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    },
                    "500": {
                        "description": "Server error"
                    }
                },
                "security": [
                    {
                        "BearerAuth": []
                    }
                ]
            }
        },
        "/v1/dns": {
            "post": {
                "tags": [
                    "Network"
                ],
                "summary": "DNS Lookup",
                "description": "A/AAAA/MX/TXT/CAA/NS records with propagation check. Also available as an MCP tool.",
                "operationId": "dns_lookup",
                "x-mcp-tool": true,
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GenericRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Error"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Invalid or missing API key"
                    },
                    "403": {
                        "description": "IP not allowed / SSRF blocked"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    },
                    "500": {
                        "description": "Server error"
                    }
                },
                "security": [
                    {
                        "BearerAuth": []
                    }
                ]
            }
        },
        "/v1/ssl": {
            "post": {
                "tags": [
                    "Network"
                ],
                "summary": "SSL Checker",
                "description": "Certificate chain, expiry, HSTS, cipher grade. Also available as an MCP tool.",
                "operationId": "ssl_checker",
                "x-mcp-tool": true,
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GenericRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Error"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Invalid or missing API key"
                    },
                    "403": {
                        "description": "IP not allowed / SSRF blocked"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    },
                    "500": {
                        "description": "Server error"
                    }
                },
                "security": [
                    {
                        "BearerAuth": []
                    }
                ]
            }
        },
        "/v1/whois": {
            "post": {
                "tags": [
                    "Network"
                ],
                "summary": "WHOIS",
                "description": "Domain ownership, registrar, created/expires. Also available as an MCP tool.",
                "operationId": "whois",
                "x-mcp-tool": true,
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GenericRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Error"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Invalid or missing API key"
                    },
                    "403": {
                        "description": "IP not allowed / SSRF blocked"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    },
                    "500": {
                        "description": "Server error"
                    }
                },
                "security": [
                    {
                        "BearerAuth": []
                    }
                ]
            }
        },
        "/v1/techstack": {
            "post": {
                "tags": [
                    "Network"
                ],
                "summary": "Tech Stack",
                "description": "Detect frameworks, CMS, analytics \u2014 Wappalyzer-grade. Also available as an MCP tool.",
                "operationId": "techstack",
                "x-mcp-tool": true,
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GenericRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Error"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Invalid or missing API key"
                    },
                    "403": {
                        "description": "IP not allowed / SSRF blocked"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    },
                    "500": {
                        "description": "Server error"
                    }
                },
                "security": [
                    {
                        "BearerAuth": []
                    }
                ]
            }
        },
        "/v1/geoip": {
            "post": {
                "tags": [
                    "Network"
                ],
                "summary": "IP Geolocation",
                "description": "City, country, ISP, ASN, timezone for any IP.",
                "operationId": "ip_geolocation",
                "x-mcp-tool": false,
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GenericRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Error"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Invalid or missing API key"
                    },
                    "403": {
                        "description": "IP not allowed / SSRF blocked"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    },
                    "500": {
                        "description": "Server error"
                    }
                },
                "security": [
                    {
                        "BearerAuth": []
                    }
                ]
            }
        },
        "/v1/user-agent": {
            "post": {
                "tags": [
                    "Network"
                ],
                "summary": "User Agent",
                "description": "Parse UA strings \u2014 browser, OS, device, bot detection.",
                "operationId": "user_agent",
                "x-mcp-tool": false,
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GenericRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Error"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Invalid or missing API key"
                    },
                    "403": {
                        "description": "IP not allowed / SSRF blocked"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    },
                    "500": {
                        "description": "Server error"
                    }
                },
                "security": [
                    {
                        "BearerAuth": []
                    }
                ]
            }
        },
        "/v1/status": {
            "post": {
                "tags": [
                    "Network"
                ],
                "summary": "HTTP Status",
                "description": "Follow redirects, inspect headers, TTFB, uptime check. Also available as an MCP tool.",
                "operationId": "http_status",
                "x-mcp-tool": true,
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GenericRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Error"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Invalid or missing API key"
                    },
                    "403": {
                        "description": "IP not allowed / SSRF blocked"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    },
                    "500": {
                        "description": "Server error"
                    }
                },
                "security": [
                    {
                        "BearerAuth": []
                    }
                ]
            }
        },
        "/v1/email-validate": {
            "post": {
                "tags": [
                    "Identity"
                ],
                "summary": "Email Validation",
                "description": "Syntax + MX + disposable + role-based checks.",
                "operationId": "email_validation",
                "x-mcp-tool": false,
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GenericRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Error"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Invalid or missing API key"
                    },
                    "403": {
                        "description": "IP not allowed / SSRF blocked"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    },
                    "500": {
                        "description": "Server error"
                    }
                },
                "security": [
                    {
                        "BearerAuth": []
                    }
                ]
            }
        },
        "/v1/shorten": {
            "post": {
                "tags": [
                    "Identity"
                ],
                "summary": "URL Shortener",
                "description": "Short links with click analytics under /s/ABC.",
                "operationId": "url_shortener",
                "x-mcp-tool": false,
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GenericRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GenericResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad request",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Error"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Invalid or missing API key"
                    },
                    "403": {
                        "description": "IP not allowed / SSRF blocked"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    },
                    "500": {
                        "description": "Server error"
                    }
                },
                "security": [
                    {
                        "BearerAuth": []
                    }
                ]
            }
        }
    },
    "components": {
        "securitySchemes": {
            "BearerAuth": {
                "type": "http",
                "scheme": "bearer",
                "bearerFormat": "tc_live_\u2026"
            }
        },
        "schemas": {
            "GenericRequest": {
                "type": "object",
                "additionalProperties": true,
                "description": "Tool-specific request body. See /docs for per-endpoint shape."
            },
            "GenericResponse": {
                "type": "object",
                "additionalProperties": true,
                "description": "Tool-specific response. All response keys use snake_case. See /docs or /playground for per-endpoint shape."
            },
            "Error": {
                "type": "object",
                "required": [
                    "error"
                ],
                "properties": {
                    "error": {
                        "type": "string",
                        "example": "Invalid URL scheme"
                    },
                    "hint": {
                        "type": "string",
                        "description": "Optional suggestion"
                    }
                }
            }
        }
    },
    "tags": [
        {
            "name": "Capture",
            "description": "Visual capture \u2014 screenshots, PDFs, OG images."
        },
        {
            "name": "Codes",
            "description": "QR, barcode."
        },
        {
            "name": "Data",
            "description": "Hash, base64, UUID, JSON, markdown, minify, passwords."
        },
        {
            "name": "Web",
            "description": "Web search, scraping, metadata, link preview, diff."
        },
        {
            "name": "Seo",
            "description": "SEO, a11y, pagespeed, carbon, color palette."
        },
        {
            "name": "Network",
            "description": "DNS, SSL, WHOIS, tech stack, geoIP, UA, HTTP status."
        },
        {
            "name": "Identity",
            "description": "Email validation, URL shortener."
        }
    ]
}