Tool catalog

Everything on the belt.

Every tool your agent can call today, most used first. One connection gives it all of them, paid from one balance.

Tools
9
Uses
1
  • Calculate

    Popular

    calculate

    Evaluate an arithmetic expression and return a numeric result. Basic arithmetic and integer powers use exact rational arithmetic internally. Supports + - * / % ^ (or **), parentheses, the constants pi, e, tau and the functions abs, sqrt, cbrt, exp, ln, log, log2, log10, sin, cos, tan, asin, acos, atan, atan2, sinh, cosh, tanh, floor, ceil, round, trunc, min, max, pow, hypot. Scientific functions and constants are approximate; trigonometry uses radians. Numeric output is limited to native integers and doubles; nonzero underflow is rejected. round(x, precision) requires an integer precision from -308 to 308. Exact arithmetic is limited to 4096 digits.

    Read the guide
    Price
    $0.0025 per call
    Usage
    1 use
    Batches of 2–10
  • Convert units

    convert_units

    Convert a value between compatible units using exact rational arithmetic locally. Requires value, from, and to. Use decimal strings to preserve input precision. Result is a decimal string with at most precision decimal places (default 12, range 0–100), rounded half away from zero, with an explicit rounded flag; trailing fractional zeros are removed. Absolute temperatures (K, degC, degF) must be at least zero kelvin; differences use delta_K, delta_degC, delta_degF without offsets. International foot and avoirdupois mass; US liquid and imperial volumes use explicit suffixes. MB is 1000000 bytes; MiB is 1048576 bytes. Days are 86400 seconds; calendar months/years and arbitrary compound expressions are unsupported. Value strings are limited to 128 ASCII characters and scientific exponents to ±1000. One call unit per conversion; supports standard catalog batching. Case-sensitive symbols. length: nm, um, mm, cm, m, km, in, ft, yd, mi, nmi; mass: mg, g, kg, t, oz, lb, st; area: mm2, cm2, m2, km2, in2, ft2, yd2, acre, ha; volume: mL, L, m3, in3, ft3, gal_us, qt_us, pt_us, fl_oz_us, gal_imp, qt_imp, pt_imp, fl_oz_imp; duration: ms, s, min, h, d, wk; speed: m/s, km/h, ft/s, mph, kn; temperature: K, degC, degF; temperature_difference: delta_K, delta_degC, delta_degF; data: bit, B, kB, MB, GB, TB, PB, KiB, MiB, GiB, TiB, PiB.

    Price
    $0.0025 per call
    Usage
    0 uses
    Batches of 2–10
  • Date and time

    datetime

    Inspect dates (including weekday), add or subtract time, calculate differences, and convert timezones. Requires explicit IANA timezones and ISO dates or timestamps; never uses the current time. Years/months/weeks/days are calendar arithmetic preserving local time; hours/minutes/seconds are elapsed time. Month/year arithmetic clamps to the last day by default (or rejects with month_overflow=reject). Nonexistent local times are rejected; ambiguous times require ambiguity=earlier/later or a matching explicit offset. Difference is other_datetime minus datetime; exact seconds are returned as a decimal string. Years 0001–9999 and microsecond precision only. One unit per operation; supports the standard batch endpoint. Returns the runtime timezone database version.

    Read the guide
    Price
    $0.0025 per call
    Usage
    0 uses
    Batches of 2–10
  • Encoding and hashing

    encoding_hash

    Convert encodings or hash exact bytes locally. Requires operation (convert or hash), data, and input_encoding (utf8, base64, base64url, hex, url, url_form). convert requires output_encoding from the same list and forbids algorithm. hash requires algorithm (md5, sha1, sha256, sha384, sha512); output_encoding defaults to hex and may be hex, base64, or base64url. Base64 is canonical padded RFC 4648; Base64url is canonical unpadded; both reject whitespace and nonzero unused bits. Hex accepts either case, requires complete byte pairs, and outputs lowercase. url percent-encodes a single RFC 3986 component (space becomes %20, + stays + when decoding); url_form uses form encoding (space becomes +, + decodes to space). Both reject malformed percent escapes and decode once, accepting unescaped literals. UTF-8 output rejects invalid UTF-8; use hex or Base64 for arbitrary binary. No trimming, normalization, newline changes, BOM removal, URL parsing, or fetching. Empty data is allowed. Returns result, encodings, input_bytes (decoded bytes), result_bytes (encoded result bytes), and algorithm for hashes. Limits: 192 KiB input representation, 64 KiB decoded data, 512 KiB JSON output. One unit per call; supports the standard batch endpoint.

    Price
    $0.0025 per call
    Usage
    0 uses
    Batches of 2–10
  • Exact text operations

    text_process

    Measure length, count or find literal occurrences, replace literal text, or slice UTF-8 text. Requires operation, text, and unit (byte, codepoint, or grapheme). Case-sensitive, without normalization, regex, or locale rules. Unicode matches must start and end at boundaries of the selected unit. Positions are zero-based. count/find require a nonempty needle; overlap defaults to false. find returns an exact count and up to max_matches positions (default 100, maximum 1000), with truncated. replace requires needle and replacement, replaces all non-overlapping matches once, and returns replacements. slice requires start (negative counts from the end), with optional nonnegative length; overlong length clamps to the end, out-of-range start is rejected. Byte slices splitting UTF-8 code points are rejected. Limits: 64 KiB text, 16 KiB needle/replacement, 256 KiB result text, 512 KiB encoded output. Graphemes use ICU extended grapheme clusters with the root locale; icu_version and unicode_version are returned. One unit per call; supports the standard batch endpoint.

    Price
    $0.0025 per call
    Usage
    0 uses
    Batches of 2–10
  • JSON: diff and patch

    json_diff_patch

    Generate deterministic RFC 6902 JSON Patch from source to target (operation=diff), or atomically apply a patch to json (operation=patch). All documents and patch are JSON text strings, preserving empty objects and exact number tokens. Supports add, remove, replace, move, copy and test with RFC 6901 pointers; no implicit parents. Object order and number spelling do not affect equality; arrays are ordered, strings compare without normalization. Diff visits object keys in UTF-8 byte order, compares arrays by index, removes tails descending and appends additions; falls back to root replacement when granular edits exceed limits. No minimal-patch guarantee. Diff returns patch_json; patch returns result_json and document_exists (root removal is absence, distinct from JSON null). Both return changed and operation_count. Empty pointer selects root; ~0 escapes ~, ~1 escapes /. Array indices have no leading zeros; - appends for add/copy/move. Unknown operation members are ignored per RFC 6902. Errors include the zero-based operation index, and return no partial result. Limits: 256 KiB per document and every intermediate state, 64 container levels, 10000 values, 512 KiB patch, 1000 operations, 4096-byte pointers, 1024-byte number tokens, 1000000 work steps per diff/application phase, 1 MiB encoded output. Duplicate keys and member names beginning with a null character are rejected. One billable unit per call; standard batching applies.

    Price
    $0.0025 per call
    Usage
    0 uses
    Batches of 2–10
  • JSON: validate and query

    json_validate

    Check JSON syntax, optionally validate against a reference-free JSON Schema Draft 2020-12 profile, and extract fields using RFC 6901 JSON Pointers. Pass json and optional schema as JSON text. Returns valid, syntax_valid, schema_valid, errors with pointer paths, and queries with found and exact value_json fragments. Missing fields differ from null; empty pointer selects the root. No wildcards or URI fragments. Queries run even when schema validation fails. Duplicate object keys are rejected. Supports types, enum/const, object/array/string/number constraints, combinators and conditionals. References, custom keywords and other drafts are rejected; format is an annotation, defaults do not alter data. Schema validation uses native integers/doubles; out-of-range integers, overflow and nonzero underflow are rejected. Limits: 256 KiB JSON, 64 KiB schema, 64 levels, 10000 values, 512 subschemas, 50 pointers, 100 errors, 512 KiB output, and bounded validation/regex work. Billed once per call.

    Price
    $0.0025 per call
    Usage
    0 uses
    Batches of 2–10
  • List and table operations

    list_table

    Locally sort, deduplicate, filter, group, join, aggregate, or compare sets of JSON items. Paths are arrays of literal string segments; [] selects the whole item. Sort requires by rules with explicit numeric or lexical mode; ties retain input order. Equality is structural and type-sensitive (1 equals 1.0, but differs from "1" and true); object key order is ignored, array order matters. The gateway decodes empty objects and arrays identically, and numeric-key objects may become arrays; use ordinary named columns for rows. Numeric ordering and aggregation accept finite numbers or decimal strings, using exact decimal arithmetic; prefer strings to preserve precision. Lexical ordering is case-sensitive UTF-8 byte order without normalization or locale. Missing keys fail except in filters, where only missing matches them. Deduplication/sets keep first representatives; groups follow first appearance. Joins return left/right pairs with indices, preserving all duplicate matches; null keys do not match by default. Required fields by operation: sort: by; group: keys; filter: where; join: other, left_keys, right_keys; set: other, set_operation. Aggregate defaults to the whole item, rejects nulls unless null_policy=skip, and returns exact sum/min/max strings and a rounded mean (precision default 12). Limits: 1000 items per side, 256 KiB encoded input, 16 levels, 20000 values, 8 keys, 16 predicates, 5000 join pairs, 512 KiB encoded output; numeric literals 128 characters and exponents ±1000. One call unit per operation; supports catalog batching. See docs/list-table.md for the complete contract and examples.

    Price
    $0.0025 per call
    Usage
    0 uses
    Batches of 2–10
  • Validate identifiers and checksums

    identifier_validate

    Validate an identifier locally: type (uuid, iban, luhn, isbn10, isbn13, gtin) and value (string, at most 256 Unicode characters) are required. Returns valid, normalized, checksum_valid (null when unavailable or inapplicable), and errors with stable codes. Invalid identifiers are successful validation results. UUID: case-insensitive 8-4-4-4-12 hex, RFC 9562 variant and versions 1–8, plus Nil and Max; no braces or URN prefixes. IBAN: uppercase ASCII, national length and BBAN structure from SWIFT registry 103 (September 2026), canonical check digits 02–98 and MOD97-10. Luhn: 2–256 ASCII digits including the final check digit; checks only the generic algorithm, with no issuer or card rules. ISBN-10: nine digits and final digit or X, modulo 11. ISBN-13: thirteen digits, prefix 978 or 979, alternating 1/3 modulo 10. GTIN: 8, 12, 13 or 14 digits with GS1 modulo 10. normalize defaults to false. If true, UUID trims outer ASCII spaces; IBAN removes ASCII spaces and uppercases; ISBN removes ASCII spaces/hyphens and uppercases; Luhn/GTIN remove ASCII spaces/hyphens. UUID output is always lowercase. No Unicode normalization or removal of other whitespace/punctuation. Leading zeros are preserved. Passing does not prove assignment, uniqueness, ownership, account existence, or domestic bank checksums. One call unit; supports standard catalog batching.

    Read the guide
    Price
    $0.0025 per call
    Usage
    0 uses
    Batches of 2–10

Uses count successful calls, with each input of a batch counted once.

Give your agent the whole belt.

Add one MCP server and every tool above shows up in your agent. New ones appear as they are added.

https://mcptoolbelt.com/mcp
Get started