{"name":"io.github.brentspore/buildutilities-mcp","slug":"brentspore-buildutilities-mcp","title":null,"description":"Deterministic dev utilities: UUIDs, hashes, encoding, JWT, cron, regex. No network, no API key.","url":"https://mcp.market/server/brentspore-buildutilities-mcp","rating":null,"grade":"A","score":92,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":27,"stars":0,"forks":0,"downloads_week":57,"last_push_at":"2026-09-09T05:27:44.000Z","license":"MIT"},"uptime":null,"claimed":false,"transport":"npm","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/brentspore/buildutilities-mcp","website":"https://buildutilities.com","version":"0.1.2","remotes":[],"packages":[{"registryType":"npm","identifier":"buildutilities-mcp","version":"0.1.2","transport":{"type":"stdio"}}],"tools":[{"name":"analyze_text","description":"Exact counts for a text: characters, words, lines, sentences, paragraphs, bytes. Use this rather than estimating — counting long text is a classic model failure.","write_action":false,"price_micros":0,"input_schema":null},{"name":"base64_decode","description":"Decode Base64 (standard or URL-safe) back to text. Reports whether the input was valid rather than returning mojibake.","write_action":false,"price_micros":0,"input_schema":null},{"name":"base64_encode","description":"Encode text to Base64. Set urlSafe for the URL/filename-safe alphabet (-_ instead of +/, no padding).","write_action":false,"price_micros":0,"input_schema":null},{"name":"check_color_contrast","description":"Compute the exact WCAG 2.2 contrast ratio between two colours and report which AA/AAA thresholds it passes. This is a specific formula, not a judgement call — do not estimate it.","write_action":false,"price_micros":0,"input_schema":null},{"name":"convert_timestamp","description":"Convert between Unix epoch and human-readable time, in any IANA timezone. Auto-detects seconds vs milliseconds. Use this rather than doing the arithmetic in your head.","write_action":false,"price_micros":0,"input_schema":null},{"name":"cron_next_runs","description":"Parse a standard 5-field cron expression and list its next run times in a timezone. Handles the Vixie rule that day-of-month and day-of-week are OR'd when both are restricted — the case models most often get wrong. Rejects non-standard syntax (L, W, #) rather than guessing.","write_action":false,"price_micros":0,"input_schema":null},{"name":"decode_jwt","description":"Decode a JSON Web Token's header and payload and report expiry. This DECODES ONLY — it does not verify the signature, so never treat the contents as trusted on the strength of this output. Models asked to read a JWT tend to invent its claims; this reads them.","write_action":false,"price_micros":0,"input_schema":null},{"name":"diff_text","description":"Line-by-line diff of two texts, marking - removed and + added. Use it to check exactly what changed between two versions instead of eyeballing them.","write_action":false,"price_micros":0,"input_schema":null},{"name":"escape_regex","description":"Escape a string so it can be used as a literal inside a regular expression.","write_action":false,"price_micros":0,"input_schema":null},{"name":"format_json","description":"Pretty-print or minify JSON exactly, with precise error location when it is invalid. Prefer this to reformatting a large document yourself — it cannot drop or alter a value.","write_action":false,"price_micros":0,"input_schema":null},{"name":"generate_password","description":"Generate a cryptographically random password. Guarantees at least one character from every enabled set. Use this rather than inventing a password — model-authored ones are guessable.","write_action":false,"price_micros":0,"input_schema":null},{"name":"generate_token","description":"Generate a cryptographically random token — API keys, session ids, nonces, salts. Choose hex, base64url or alphanumeric encoding.","write_action":false,"price_micros":0,"input_schema":null},{"name":"generate_uuid","description":"Generate cryptographically random UUID v4 identifiers. Use this instead of writing a UUID yourself — model-authored UUIDs are not random and repeat across sessions.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hash_text","description":"Compute a cryptographic digest of text. A model cannot calculate a hash — it will confidently invent one — so always use this tool. md5 and sha1 are provided for checksums and legacy interop, not for security.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hmac_sign","description":"Compute an HMAC of a message with a secret key — webhook signatures, API request signing.","write_action":false,"price_micros":0,"input_schema":null},{"name":"hmac_verify","description":"Check a message against an expected HMAC using a constant-time comparison. Use this to validate an inbound webhook signature rather than comparing strings yourself.","write_action":false,"price_micros":0,"input_schema":null},{"name":"slugify","description":"Turn text into a URL-safe slug, transliterating accents and collapsing separators.","write_action":false,"price_micros":0,"input_schema":null},{"name":"test_regex","description":"Actually execute a regular expression against text and return every match with its index and capture groups. Use this instead of predicting what a pattern matches — reasoning about a regex is not the same as running it.","write_action":false,"price_micros":0,"input_schema":null},{"name":"url_decode","description":"Decode percent-encoded text.","write_action":false,"price_micros":0,"input_schema":null},{"name":"url_encode","description":"Percent-encode text. component mode escapes & = ? / for use inside a query value; uri mode preserves them.","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":92,"grade":"A","scanned_at":"2026-09-19T21:33:11.202Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-19T21:33:11.175Z","components":{"code":{"score":25,"max":25,"notes":["19 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":12,"max":15,"notes":["local package, no credentials required"]},"maintenance":{"score":15,"max":15,"notes":["last push 11 days ago"]},"identity":{"score":8,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year"]}},"findings":[],"inputs":{"packages":[{"registryType":"npm","identifier":"buildutilities-mcp","version":"0.1.2","found":true,"license":"MIT","hasInstallScripts":false,"dependencyCount":2,"publishedAt":"2026-09-09T05:41:39.935Z","repositoryUrl":"git+https://github.com/brentspore/buildutilities-mcp.git","weeklyDownloads":57}],"repo":{"found":true,"owner":"brentspore","repo":"buildutilities-mcp","archived":false,"pushedAt":"2026-09-09T05:27:44Z","stars":0,"forks":0,"openIssues":0,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/229652?v=4","ownerCreatedAt":"2010-03-24T18:29:51Z","license":"MIT"},"icon":{"url":"https://buildutilities.com/favicon.svg","source":"site"},"presence":{"stars":0,"forks":0,"downloadsWeek":57,"license":"MIT","lastPushAt":"2026-09-09T05:27:44.000Z","score":27}}}},"grade_history":[],"reviews":[]}