Documentation
218+ browser tools · REST API · Node.js SDK · Python SDK · MCP Server · CLI (coming soon)
Quick start#
Use 218+ tools right now, no account needed.
Open tools →Install locally. 618 functions, no API key.
See SDK →Call tools over HTTP from any language.
Get API key →Click Sign in in the top-right corner: free forever, no credit card. Free accounts get 1,000 API calls/day and 3 AI generations/month per tool.
Go to Dashboard → API Keys and create a key. Keys are prefixed utx_live_. Keep it secret: treat it like a password.
curl https://api.utilix.tech/v1/tools/uuid \
-H "Authorization: Bearer utx_live_..."const res = await fetch('https://api.utilix.tech/v1/tools/uuid', {
headers: { 'Authorization': 'Bearer utx_live_...' }
})
const { uuid } = await res.json()
console.log(uuid) // → "550e8400-e29b-41d4-a716-446655440000"import requests
res = requests.get(
'https://api.utilix.tech/v1/tools/uuid',
headers={'Authorization': 'Bearer utx_live_...'}
)
print(res.json()['uuid'])Every response includes rate limit headers so you know where you stand.
X-RateLimit-Limit: 1000
X-RateLimit-Remaining: 994
X-RateLimit-Reset: 1719619200 # Unix timestamp, resets midnight UTCYour dashboard also shows a live usage chart. Upgrade to Pro for 10,000 req/day and higher AI limits.
No API key needed for Node.js SDK, Python SDK, MCP Server, or CLI. Those run entirely locally: install once, use offline, no rate limits.
Authentication#
The REST API authenticates via Bearer token. Pass your API key in the Authorization header on every request.
Authorization: Bearer utx_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxutx_live_...All keys are live: use the dashboard to rotate or revoke themRequests without a valid key return 401 Unauthorized. Generate keys from your dashboard.
SDKs#
npm install @utilix-tech/sdkimport { formatJson } from '@utilix-tech/sdk/json'
import { hashAll } from '@utilix-tech/sdk/hashing'
const pretty = formatJson('{"a":1}', { indent: 2 })
const hashes = await hashAll('hello world')@utilix-tech/sdk/jsonFormat, minify, diff, validate, JSONPath, CSV↔JSON, YAML↔JSON, TypeScript types@utilix-tech/sdk/encodingBase64, URL, HTML entities, Base32 encode/decode@utilix-tech/sdk/hashingMD5, SHA-1/256/512, bcrypt, HMAC, .htpasswd@utilix-tech/sdk/textCase convert, slugify, word count, diff, lorem ipsum, HTML→Markdown@utilix-tech/sdk/dataCSV, YAML, TOML, XML, INI, .env parse and convert@utilix-tech/sdk/generatorsUUID v4/v7, ULID, passwords, strength check, fake data@utilix-tech/sdk/timeDate diff, timezone convert, cron parse, relative time@utilix-tech/sdk/unitsBytes, px/rem, number bases, semver, CIDR, currency format@utilix-tech/sdk/networkHTTP status codes, IP validation, country flags@utilix-tech/sdk/apicURL build/parse, JWT decode/sign, CORS headers, CSP header@utilix-tech/sdk/codeSQL/HTML/JS/CSS format & minify, regex tester, GraphQL, git, docker, OpenAPI@utilix-tech/sdk/colorHex/RGB/HSL/HSV/CMYK convert, palette generation, contrast check@utilix-tech/sdk/cssCSS gradient, box-shadow, border-radius, animation generators@utilix-tech/sdk/miscSVG optimize/sanitize, QR code (SVG), OG meta parse, Unicode, file size@utilix-tech/sdk/ai_agentToken estimate/trim, chunk text, extract URLs/JSON/keywords, sanitize HTML, flatten/merge JSON, deduplicate lines, validate schema, PII/secret/injection detect@utilix-tech/sdk/mediaImage format & dimension reading from raw bytes: PNG, JPEG, GIF, WebP, BMPpip install utilix-sdkfrom utilix.tools.json_tools import format_json
from utilix.tools.hashing import hash_all
pretty = format_json('{"a":1}', indent=2)
hashes = hash_all('hello world')utilix.tools.json_toolsFormat, minify, diff, validate, JSONPath, CSV↔JSON, YAML↔JSON, TypeScript typesutilix.tools.encodingBase64, URL, HTML entities, Base32 encode/decodeutilix.tools.hashingMD5, SHA-1/256/512, bcrypt, HMAC, .htpasswdutilix.tools.textCase convert, slugify, word count, diff, lorem ipsum, HTML→Markdownutilix.tools.dataCSV, YAML, TOML, XML, INI, .env parse and convertutilix.tools.generatorsUUID v4/v7, ULID, passwords, strength check, fake datautilix.tools.time_toolsDate diff, timezone convert, cron parse, relative timeutilix.tools.unitsBytes, px/rem, number bases, semver, CIDR, currency formatutilix.tools.networkHTTP status codes, IP validation, DNS lookuputilix.tools.api_toolscURL build/parse, JWT decode/sign, CORS headers, CSP headerutilix.tools.codeSQL/HTML/JS/CSS format & minify, regex tester, GraphQL, git, docker, OpenAPIutilix.tools.colorHex/RGB/HSL/HSV/CMYK convert, palette generation, contrast checkutilix.tools.cssCSS gradient, box-shadow, border-radius, animation generatorsutilix.tools.miscSVG optimize/sanitize, QR code, OG meta parse, Unicode, file sizeutilix.tools.mediaImage compress, resize, format conversionutilix.tools.ai_agentToken estimate/trim, chunk text, extract URLs/JSON/keywords, sanitize HTML, flatten/merge JSON, deduplicate lines, validate schema, PII/secret/injection detectgo get github.com/utilix-tech/go-sdkIntegrations#
@utilix-tech/mcp · v0.5.0 · 171 tools
Use 171 tools directly inside Claude, Cursor, and VS Code Copilot via the Model Context Protocol. No context-switching required.
npx line in your config file// Claude Desktop ~/Library/Application Support/Claude/claude_desktop_config.json
// Cursor ~/.cursor/mcp.json
{
"mcpServers": {
"utilix": {
"command": "npx",
"args": ["-y", "@utilix-tech/mcp"]
}
}
}
// VS Code Copilot .vscode/mcp.json
{
"servers": {
"utilix": { "type": "stdio", "command": "npx", "args": ["-y", "@utilix-tech/mcp"] }
}
}Call tools from any language over HTTP. Try it in the API Playground or get your key from the dashboard. Free: 1,000 req/day · Responses include X-RateLimit-Remaining headers.
curl https://api.utilix.tech/v1/tools/json-formatter \
-H "Authorization: Bearer utx_live_..." \
-H "Content-Type: application/json" \
-d '{"input": "{\"a\":1}"}'Drop any Utilix tool into your own app with a single <script> tag. Tools render as full-featured iframes: no build step, no framework lock-in.
<!-- 1. Load the SDK -->
<script src="https://www.utilix.tech/sdk.js"></script>
<!-- 2a. Web Component -->
<utilix-tool name="svg-editor" api-key="utx_live_..." height="520"></utilix-tool>
<!-- 2b. JavaScript API -->
<div id="tool-container"></div>
<script>
Utilix.render('css-style-tester', {
apiKey: 'utx_live_...',
container: '#tool-container',
height: 600,
})
</script>svg-editorSVG Viewer & Editor: live SVG code editor with render previewcss-style-testerCSS Style Tester: split-pane CSS + HTML editor with live previewopenapi-viewerOpenAPI Viewer: load any spec by URL or paste YAML/JSON inlineRun any tool from the command palette without leaving your editor.
⌘⇧P → Utilix: Format JSON
⌘⇧P → Utilix: Decode JWT
⌘⇧P → Utilix: Generate UUIDExamples#
Working code examples for common patterns: RAG pipelines, PII redaction, context compression, batch processing, and agent tool use. All examples are verified against the live SDK.
ai-agent-pipeline.tsEnd-to-end RAG pipeline: compress HTML → chunk → detect PII → rerankrag-pipeline.tsFull RAG pre-processing: scrape → compress → chunk → expand query → pack contextcontext-compression.tsHTML, Markdown, and JSON compression + extractive summarizationpii-redaction.tsPII detection, redaction, secret scanning, prompt injection scoringjson-utilities.tsExtract, flatten, merge, diff, validate, repair, and compress JSONbatch-processing.tsBatch PII scan, token counting, keyword indexing, secret scanningquickstart.pyToken estimation, chunking, PII, reranking, summarization, JSON diffrag_pipeline.pyCompress → chunk → query expansion → rerank → pack contextpii_redaction.pyPII scan/redact, secret detection, prompt injection scoring, safe loggingagent_tools.pyTool implementations for LLM agents (extract, fix, validate, diff JSON)Snippets#
Snippets let you save named outputs, including regex patterns, CLI commands, and JSON schemas, then retrieve them via API or the dashboard. Free users get 5 snippets; Pro users get 100.
GET https://api.utilix.tech/v1/snippets
Authorization: Bearer utx_live_...
// → { "snippets": [{ "id": "...", "title": "Find emails regex", "content": "...", "toolSlug": "nl-regex" }], "plan": "free", "limit": 5 }POST https://api.utilix.tech/v1/snippets
Authorization: Bearer utx_live_...
{ "title": "Find emails regex", "content": "/[\\w.+-]+@[\\w-]+\\.[\\w.]+/g", "toolSlug": "nl-regex" }DELETE https://api.utilix.tech/v1/snippets/{id}
Authorization: Bearer utx_live_...AI Tools#
AI tools call GPT-4o server-side and return structured results. Every free account gets 3 generations/month per tool. Pro gets higher monthly limits. Generated SVGs get a permanent public URL.
SVG Generator#
POST https://api.utilix.tech/v1/svg/generate
Authorization: Bearer utx_live_...
{ "prompt": "A minimal rocket ship launching with stars",
"width": 400, "height": 400, "style": "flat, monochrome" }{ "id": "utx_abc123def456",
"url": "https://api.utilix.tech/v1/svg/utx_abc123def456",
"svgContent": "<svg ...>...</svg>",
"tokensUsed": 843, "model": "gpt-4o" }<!-- Web Component -->
<script src="https://www.utilix.tech/sdk.js"></script>
<utilix-svg id="utx_abc123def456"></utilix-svg>
<!-- Plain img or direct URL (works in Markdown, Notion, Figma) -->
<img src="https://api.utilix.tech/v1/svg/utx_abc123def456" alt="rocket" />NL → Regex#
POST https://api.utilix.tech/v1/ai/regex
Authorization: Bearer utx_live_...
{ "description": "US phone numbers with dashes or dots" }{ "pattern": "\\(?(\\d{3})\\)?[-.\\s]?(\\d{3})[-.\\s]?(\\d{4})",
"flags": ["g"],
"explanation": "Matches US phone numbers with optional area code parentheses...",
"examples": { "matches": ["555-867-5309", "(555) 867.5309"] },
"model": "gpt-4o-mini", "tokensUsed": 312 }CLI Builder#
POST https://api.utilix.tech/v1/ai/cli
Authorization: Bearer utx_live_...
{ "task": "Find all .ts files changed in the last 7 days", "shell": "bash" }{ "command": "find . -name \"*.ts\" -mtime -7",
"breakdown": [
{ "part": "find .", "description": "Start search from current directory" },
{ "part": "-name \"*.ts\"", "description": "Match TypeScript files" },
{ "part": "-mtime -7", "description": "Modified within last 7 days" }
],
"model": "gpt-4o-mini", "tokensUsed": 284 }CSS Explainer#
POST https://api.utilix.tech/v1/ai/css
Authorization: Bearer utx_live_...
{ "css": ".card { display: flex; gap: 1rem; padding: 1.5rem; }" }{ "blocks": [{
"selector": ".card",
"summary": "A flex card with spacing and padding",
"properties": [
{ "property": "display", "value": "flex", "explanation": "Flex container: children lay out in a row" },
{ "property": "gap", "value": "1rem", "explanation": "16px space between each flex child" },
{ "property": "padding", "value": "1.5rem", "explanation": "24px inner space on all sides" }
]
}],
"suggestions": ["Consider overflow: hidden if children can break layout"],
"model": "gpt-4o-mini", "tokensUsed": 312 }JSON Schema Generator#
POST https://api.utilix.tech/v1/ai/json-schema
Authorization: Bearer utx_live_...
{ "description": "A user profile with name, email, age, and optional bio",
"example": "{ \"name\": \"Alice\", \"email\": \"alice@example.com\", \"age\": 28 }" }{ "schema": {
"type": "object",
"required": ["name", "email"],
"properties": {
"name": { "type": "string" },
"email": { "type": "string", "format": "email" },
"age": { "type": "integer", "minimum": 0 },
"bio": { "type": "string" }
}
},
"model": "gpt-4o-mini", "tokensUsed": 284 }Rate limits#
AI generation limits reset on the 1st of each month. API daily limits reset at midnight UTC. Rate limit headers: X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset.
Errors#
400Bad RequestMissing or invalid input field401UnauthorizedMissing or invalid API key403ForbiddenPlan limit reached: upgrade required404Not FoundResource does not exist429Too Many RequestsRate limit exceeded (daily API or monthly AI)502Bad GatewayAI provider returned an error// Standard error
{ "error": "prompt is required", "code": "validation_error" }
// 403 — free plan AI limit reached
{ "error": "Free plan includes 3 AI generations/month.",
"code": "upgrade_required",
"used": 3, "limit": 3,
"resets": "first of next month",
"upgradeUrl": "https://www.utilix.tech/pricing" }CLI#
Run any tool from the terminal. Works via npx with no install required.
npx @utilix-tech/cli json format '{"a":1}'
npx @utilix-tech/cli hash sha256 "hello world"
npx @utilix-tech/cli uuid