Exact tools for agents: US tax, routing/EIN checks, business days, JSON, links, packages, citations.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Exact decimal arithmetic for an expression (no floating-point drift: 0.1+0.2 = 0.3; + − × ÷ ^ %, sqrt, ln, log, round, min, max, pi), summary statistics for a list of numbers, rounding with a chosen mode, and adult BMI from lb/in or kg/cm.
Pick your client. Values in capitals, like YOUR_TOKEN, are yours to fill in.
Run in a terminal
claude mcp add --transport http tools https://tools.cuelark.com/mcp
Tool list last changed Nov 10, 2026.
Exact decimal arithmetic for an expression (no floating-point drift: 0.1+0.2 = 0.3; + − × ÷ ^ %, sqrt, ln, log, round, min, max, pi), summary statistics for a list of numbers, rounding with a chosen mode, and adult BMI from lb/in or kg/cm.
| Argument | Type | Description |
|---|---|---|
| op | string | |
| mode | string | |
| value | string | number | |
| values | array | |
| decimals | integer | |
| height_cm | number | |
| height_in | number | |
| weight_kg | number | |
| weight_lb | number | |
| expression | string |
{
"type": "object",
"required": [],
"properties": {
"op": {
"enum": [
"expression",
"stats",
"round",
"bmi"
],
"type": "string",
"default": "expression"
},
"mode": {
"enum": [
"half_up",
"half_even",
"up",
"down",
"ceil",
"floor"
],
"type": "string",
"default": "half_up"
},
"value": {
"type": [
"string",
"number"
]
},
"values": {
"type": "array",
"items": {
"type": "number"
}
},
"decimals": {
"type": "integer",
"default": 2
},
"height_cm": {
"type": "number"
},
"height_in": {
"type": "number"
},
"weight_kg": {
"type": "number"
},
"weight_lb": {
"type": "number"
},
"expression": {
"type": "string",
"examples": [
"(1250 * 1.0825) / 12"
]
}
}
}Unit conversion (imperial and metric: length, weight, volume, area, speed, temperature, data, pressure, energy), color hex/rgb/hsl, WCAG contrast ratio, numbers in words and $ or lakh/crore formats, Markdown to HTML, pixels vs print size at a DPI, and CGPA to percentage (official formulas).
| Argument | Type | Description |
|---|---|---|
| bg | string | contrast: background color |
| fg | string | contrast: text color |
| op* | string | |
| to | string | units: e.g. km, kg, C, L |
| dpi | number | |
| cgpa | number | |
| from | string | units: e.g. mi, lb, F, gal |
| unit | string | |
| value | string | number | number, color, or Markdown text |
| width | number | |
| height | number | |
| scheme | string | |
| direction | string | |
| percentage | number |
{
"type": "object",
"required": [
"op"
],
"properties": {
"bg": {
"type": "string",
"description": "contrast: background color"
},
"fg": {
"type": "string",
"description": "contrast: text color"
},
"op": {
"enum": [
"units",
"color",
"contrast",
"number",
"markdown",
"print_size",
"cgpa"
],
"type": "string"
},
"to": {
"type": "string",
"description": "units: e.g. km, kg, C, L"
},
"dpi": {
"type": "number",
"default": 300
},
"cgpa": {
"type": "number"
},
"from": {
"type": "string",
"description": "units: e.g. mi, lb, F, gal"
},
"unit": {
"enum": [
"in",
"cm",
"mm"
],
"type": "string",
"default": "in"
},
"value": {
"type": [
"string",
"number"
],
"description": "number, color, or Markdown text"
},
"width": {
"type": "number"
},
"height": {
"type": "number"
},
"scheme": {
"enum": [
"cbse",
"vtu",
"anna"
],
"type": "string"
},
"direction": {
"enum": [
"pixels_to_size",
"size_to_pixels"
],
"type": "string"
},
"percentage": {
"type": "number"
}
}
}Calendar math: days between dates, add days/weeks/months/years, exact age (with exam cut-offs), business days skipping public holidays (US federal by default; UK, EU, CA, AU, IN, SG, AE), a country's holiday list, and cron schedules in plain English.
| Argument | Type | Description |
|---|---|---|
| op* | string | |
| end | string | YYYY-MM-DD or MM/DD/YYYY |
| exam | string | |
| unit | string | |
| year | integer | |
| as_on | string | YYYY-MM-DD or MM/DD/YYYY |
| start | string | YYYY-MM-DD or MM/DD/YYYY |
| amount | integer | add / business_add; negative goes back |
| country | string | US, GB, GB-ENG, GB-SCT, GB-NIR, CA, AU, IN, DE, FR, ES, IT, NL, IE, SG, AE |
| timezone | string | |
| birth_date | string | YYYY-MM-DD or MM/DD/YYYY |
| expression | string | cron, e.g. */15 9-17 * * MON-FRI |
| subdivision | string | GB: ENG, SCT, NIR |
{
"type": "object",
"required": [
"op"
],
"properties": {
"op": {
"enum": [
"between",
"add",
"age",
"business_add",
"business_between",
"holidays",
"cron"
],
"type": "string"
},
"end": {
"type": "string",
"description": "YYYY-MM-DD or MM/DD/YYYY"
},
"exam": {
"enum": [
"upsc-cse-2026",
"ssc-chsl-2025"
],
"type": "string"
},
"unit": {
"enum": [
"days",
"weeks",
"months",
"years"
],
"type": "string",
"default": "days"
},
"year": {
"type": "integer"
},
"as_on": {
"type": "string",
"description": "YYYY-MM-DD or MM/DD/YYYY"
},
"start": {
"type": "string",
"description": "YYYY-MM-DD or MM/DD/YYYY"
},
"amount": {
"type": "integer",
"description": "add / business_add; negative goes back"
},
"country": {
"type": "string",
"default": "US",
"description": "US, GB, GB-ENG, GB-SCT, GB-NIR, CA, AU, IN, DE, FR, ES, IT, NL, IE, SG, AE"
},
"timezone": {
"type": "string",
"default": "UTC"
},
"birth_date": {
"type": "string",
"description": "YYYY-MM-DD or MM/DD/YYYY"
},
"expression": {
"type": "string",
"description": "cron, e.g. */15 9-17 * * MON-FRI"
},
"subdivision": {
"type": "string",
"description": "GB: ENG, SCT, NIR"
}
}
}Base64 and URL encode/decode (UTF-8 safe), MD5/SHA-1/SHA-256/384/512 hashes, new UUID v4/v7 or ULID (or read a ULID's time), and decode a JWT's header and payload without verifying it.
| Argument | Type | Description |
|---|---|---|
| op* | string | |
| algo | string | |
| text | string | |
| count | integer | |
| version | integer | |
| url_safe | boolean |
{
"type": "object",
"required": [
"op"
],
"properties": {
"op": {
"enum": [
"base64_encode",
"base64_decode",
"url_encode",
"url_decode",
"hash",
"uuid",
"ulid",
"jwt_decode"
],
"type": "string"
},
"algo": {
"enum": [
"md5",
"sha1",
"sha256",
"sha384",
"sha512"
],
"type": "string",
"default": "sha256"
},
"text": {
"type": "string"
},
"count": {
"type": "integer",
"default": 1
},
"version": {
"enum": [
4,
7
],
"type": "integer",
"default": 4
},
"url_safe": {
"type": "boolean"
}
}
}Monthly loan payment (EMI) with a yearly amortization summary, simple and compound interest (with monthly contributions), percentage math (of, what percent, change, add, subtract), and tax added to or removed from a price at a given rate (VAT, sales tax, or India GST with CGST/SGST/IGST split).
| Argument | Type | Description |
|---|---|---|
| a | number | |
| b | number | |
| op* | string | |
| kind | string | |
| rate | number | annual % (or tax %) |
| years | number | |
| amount | number | |
| months | integer | |
| inclusive | boolean | sales_tax: amount already includes tax |
| percent_op | string | |
| compounding | string | |
| inter_state | boolean | |
| monthly_contribution | number |
{
"type": "object",
"required": [
"op"
],
"properties": {
"a": {
"type": "number"
},
"b": {
"type": "number"
},
"op": {
"enum": [
"loan",
"simple_interest",
"compound_interest",
"percent",
"sales_tax"
],
"type": "string"
},
"kind": {
"enum": [
"sales_tax",
"vat",
"gst"
],
"type": "string",
"default": "sales_tax"
},
"rate": {
"type": "number",
"description": "annual % (or tax %)"
},
"years": {
"type": "number"
},
"amount": {
"type": "number"
},
"months": {
"type": "integer"
},
"inclusive": {
"type": "boolean",
"description": "sales_tax: amount already includes tax"
},
"percent_op": {
"enum": [
"of",
"what_percent",
"change",
"add",
"subtract"
],
"type": "string"
},
"compounding": {
"enum": [
"yearly",
"half_yearly",
"quarterly",
"monthly",
"daily"
],
"type": "string",
"default": "monthly"
},
"inter_state": {
"type": "boolean"
},
"monthly_contribution": {
"type": "number"
}
}
}Bank, branch, address, MICR and NEFT/RTGS/IMPS/UPI support for an Indian IFSC code, from RBI's published lists via Razorpay's IFSC dataset.
| Argument | Type | Description |
|---|---|---|
| ifsc* | string |
{
"type": "object",
"required": [
"ifsc"
],
"properties": {
"ifsc": {
"type": "string",
"examples": [
"HDFC0000001"
]
}
}
}Estimate income tax from official tables. us_federal: 2025 or 2026 IRS brackets, standard deduction (with 65+/blind extras) or itemized, by filing status. india: FY 2025-26 or 2026-27, new vs old regime with 87A rebate, surcharge and cess. Each answer cites its source.
| Argument | Type | Description |
|---|---|---|
| fy | string | |
| op | string | |
| year | integer | |
| age65 | integer | |
| blind | integer | |
| income* | number | Annual gross income |
| age_band | string | |
| salaried | boolean | |
| deductions | number | us: itemized total (used if above standard) |
| filing_status | string | |
| deductions_old | number | india: 80C, 80D, HRA etc. total |
{
"type": "object",
"required": [
"income"
],
"properties": {
"fy": {
"enum": [
"2025-26",
"2026-27"
],
"type": "string",
"default": "2026-27"
},
"op": {
"enum": [
"us_federal",
"india"
],
"type": "string",
"default": "us_federal"
},
"year": {
"enum": [
2025,
2026
],
"type": "integer",
"default": 2026
},
"age65": {
"type": "integer",
"maximum": 2,
"minimum": 0
},
"blind": {
"type": "integer",
"maximum": 2,
"minimum": 0
},
"income": {
"type": "number",
"description": "Annual gross income"
},
"age_band": {
"enum": [
"below_60",
"60_to_79",
"80_plus"
],
"type": "string"
},
"salaried": {
"type": "boolean",
"default": true
},
"deductions": {
"type": "number",
"description": "us: itemized total (used if above standard)"
},
"filing_status": {
"enum": [
"single",
"married_joint",
"married_separate",
"head_of_household"
],
"type": "string",
"default": "single"
},
"deductions_old": {
"type": "number",
"description": "india: 80C, 80D, HRA etc. total"
}
}
}Validate and pretty-print or minify JSON (errors give line and column), or convert JSON to YAML or CSV, or CSV to JSON.
| Argument | Type | Description |
|---|---|---|
| op | string | |
| input* | string | JSON or CSV text |
| indent | integer | |
| sort_keys | boolean |
{
"type": "object",
"required": [
"input"
],
"properties": {
"op": {
"enum": [
"format",
"minify",
"to_yaml",
"to_csv",
"from_csv"
],
"type": "string",
"default": "format"
},
"input": {
"type": "string",
"description": "JSON or CSV text"
},
"indent": {
"type": "integer",
"default": 2
},
"sort_keys": {
"type": "boolean"
}
}
}Does this package exist (catches invented names)? Latest version, deprecation, license, repository, last publish, downloads, and the newest version matching a range. Ecosystems: npm, pypi, crates.
| Argument | Type | Description |
|---|---|---|
| name* | string | |
| ecosystem | string | |
| version_range | string | e.g. ^18, >=2.0,<3 |
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string"
},
"ecosystem": {
"enum": [
"npm",
"pypi",
"crates"
],
"type": "string",
"default": "npm"
},
"version_range": {
"type": "string",
"description": "e.g. ^18, >=2.0,<3"
}
}
}Exact text facts models get wrong: word/character/grapheme counts, whether text fits X, SMS, meta title/description or custom:N limits (with a truncated version), letter frequency, case conversion, slugs, JavaScript regex matches and replacements, lorem ipsum, and OpenAI token counts.
| Argument | Type | Description |
|---|---|---|
| op | string | |
| to | string | case target |
| text | string | |
| unit | string | lorem |
| count | integer | lorem amount |
| flags | string | |
| letter | string | fit: count this letter, e.g. r |
| pattern | string | regex pattern |
| replace | string | |
| targets | array | fit: x, sms, meta_title, meta_description, google_ads_headline, custom:N |
| encoding | string |
{
"type": "object",
"required": [],
"properties": {
"op": {
"enum": [
"count",
"fit",
"case",
"slug",
"regex",
"lorem",
"tokens"
],
"type": "string",
"default": "count"
},
"to": {
"enum": [
"lower",
"upper",
"title",
"sentence",
"camel",
"pascal",
"snake",
"kebab",
"constant",
"dot"
],
"type": "string",
"description": "case target"
},
"text": {
"type": "string"
},
"unit": {
"enum": [
"words",
"sentences",
"paragraphs"
],
"type": "string",
"description": "lorem"
},
"count": {
"type": "integer",
"description": "lorem amount"
},
"flags": {
"type": "string",
"default": "g"
},
"letter": {
"type": "string",
"description": "fit: count this letter, e.g. r"
},
"pattern": {
"type": "string",
"description": "regex pattern"
},
"replace": {
"type": "string"
},
"targets": {
"type": "array",
"items": {
"type": "string"
},
"description": "fit: x, sms, meta_title, meta_description, google_ads_headline, custom:N"
},
"encoding": {
"enum": [
"o200k_base",
"cl100k_base"
],
"type": "string",
"default": "o200k_base"
}
}
}Current time anywhere (with DST state and next clock change), convert a wall-clock time between zones, or convert Unix timestamps to and from dates. Accepts IANA zones or common names (ET, PT, UTC, London, IST).
| Argument | Type | Description |
|---|---|---|
| op | string | |
| date | string | YYYY-MM-DD or MM/DD/YYYY |
| time | string | HH:MM 24-hour, or h:mm AM/PM |
| zone | string | |
| value | string | timestamp: Unix seconds or ms, or an ISO date-time |
| to_zone | string | |
| from_zone | string |
{
"type": "object",
"required": [],
"properties": {
"op": {
"enum": [
"now",
"convert",
"timestamp"
],
"type": "string",
"default": "now"
},
"date": {
"type": "string",
"description": "YYYY-MM-DD or MM/DD/YYYY"
},
"time": {
"type": "string",
"description": "HH:MM 24-hour, or h:mm AM/PM"
},
"zone": {
"type": "string",
"default": "UTC"
},
"value": {
"type": "string",
"description": "timestamp: Unix seconds or ms, or an ISO date-time"
},
"to_zone": {
"type": "string"
},
"from_zone": {
"type": "string"
}
}
}Search the ui.cuelark.com shadcn/ui registry (React components, blocks, themes) and get the shadcn CLI install command for each match.
| Argument | Type | Description |
|---|---|---|
| limit | integer | |
| query* | string | e.g. chat input, button, theme |
{
"type": "object",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"default": 8
},
"query": {
"type": "string",
"description": "e.g. chat input, button, theme"
}
}
}Check an identifier's format and check digit: US ABA routing number, EIN, SSN (format rules only), ZIP; card numbers (Luhn) and IBAN; India GSTIN, PAN, IFSC, UPI ID, Aadhaar (Verhoeff) and PIN code. Proves a value is well formed, not that it's registered. Nothing is stored.
| Argument | Type | Description |
|---|---|---|
| type* | string | |
| value* | string |
{
"type": "object",
"required": [
"type",
"value"
],
"properties": {
"type": {
"enum": [
"aba_routing",
"ein",
"ssn",
"zip",
"luhn",
"iban",
"gstin",
"pan",
"ifsc",
"upi",
"aadhaar",
"pincode"
],
"type": "string"
},
"value": {
"type": "string"
}
}
}Check that a paper exists and get its canonical metadata (title, authors, year, venue, DOI link, retraction flag) by DOI, arXiv id, or title plus author. Uses Crossref, OpenAlex and arXiv. No abstracts.
| Argument | Type | Description |
|---|---|---|
| doi | string | DOI or arXiv id |
| year | integer | |
| title | string | |
| author | string | A surname helps |
{
"type": "object",
"required": [],
"properties": {
"doi": {
"type": "string",
"description": "DOI or arXiv id"
},
"year": {
"type": "integer"
},
"title": {
"type": "string"
},
"author": {
"type": "string",
"description": "A surname helps"
}
}
}Check up to 20 URLs live: HTTP status, redirects, final URL, page title and canonical, and optionally whether each page contains a quote. Respects robots.txt and refuses private addresses.
| Argument | Type | Description |
|---|---|---|
| urls* | array | |
| quote | string | Text the page should contain |
{
"type": "object",
"required": [
"urls"
],
"properties": {
"urls": {
"type": "array",
"items": {
"type": "string"
},
"maxItems": 20
},
"quote": {
"type": "string",
"description": "Text the page should contain"
}
}
}We read every tool's name, description and inputs the way the model will, looking for instructions hidden from you. A clean result means no warning signs, not a guarantee. Scanned Nov 10, 2026.
What changed in this server's tools since we started watching, newest first. Each change is scanned again.
Convert between pixels and physical size at a DPI: pixels → print size (mm/cm/in), or physical size → pixels needed.
Convert a wall-clock date and time from one IANA time zone to another with daylight saving for that date, and report each zone's next clock change.
Convert CGPA to percentage or back using only formulas the board or university publishes: cbse (Percentage = 9.5 × CGPA); vtu (Percentage = (CGPA − 0.75) × 10); anna (Percentage = CGPA × 10). Each result cites the source.
Count words (Unicode word rules, works for Japanese/Chinese/Hindi), characters as graphemes, sentences, paragraphs, reading time, X/Twitter weighted length, SMS segments, and platform limits.
Exact age in years, months and days on a date, and eligibility against an age limit ("attained min, not attained max"). Built-in exam presets from official notices: upsc-cse-2026 (UPSC Civil Services 2026), ssc-chsl-2025 (SSC CHSL 2025).
Days between two dates (with years/months/days and working days), or add/subtract days, weeks, months, years or working days. Month ends clamp (31 Jan + 1 month = 28/29 Feb).
Describe a cron expression in plain English and list its next run times in an IANA time zone. Accepts 5-field cron, @daily-style macros and pasted crontab lines.
Exact OpenAI token counts (o200k_base for GPT-4o/4.1/5 and o-series, cl100k_base for GPT-4/3.5) plus labelled estimates for Claude and Gemini.
Convert between JSON and YAML (JSON → YAML) or CSV (both directions; CSV needs a header row, JSON needs an array of objects).
Validate JSON and return it pretty-printed or minified, optionally with keys sorted. Errors give line and column.
Search the ui.cuelark.com shadcn/ui registry (React components, blocks andblocks, themes) and get the shadcn CLI install command for each match.
{
"type": "object",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"default": 8,
"maximum": 25,
"minimum": 1
},
"query": {
"type": "string",
"description": "e.g. chat input, button, theme"
}
},
"additionalProperties": false
}{
"type": "object",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"default": 8
},
"query": {
"type": "string",
"description": "e.g. chat input, button, theme"
}
}
}Check that a paper exists and get its canonical metadata (title, authors, year, venue, DOI link, retraction flag) by DOI, arXiv id, or title plus author. Uses Crossref, OpenAlex and arXiv. No abstracts.
Does this package exist (catches invented names)? Latest version, deprecation, license, repository, last publish, downloads, and the newest version matching a range. Ecosystems: npm, pypi, crates.
Check up to 20 URLs live: HTTP status, redirects, final URL, page title and canonical, and optionally whether each page contains a quote. Respects robots.txt and refuses private addresses.
Bank, branch, address, MICR and NEFT/RTGS/IMPS/UPI support for an Indian IFSC code, from RBI's published lists via Razorpay's IFSC dataset.
Check an identifier's format and check digit: US ABA routing number, EIN, SSN (format rules only), ZIP; card numbers (Luhn) and IBAN; India GSTIN, PAN, IFSC, UPI ID, Aadhaar (Verhoeff) and PIN code. Proves a value is well formed, not that it's registered. Nothing is stored.
Estimate income tax from official tables. us_federal: 2025 or 2026 IRS brackets, standard deduction (with 65+/blind extras) or itemized, by filing status. india: FY 2025-26 or 2026-27, new vs old regime with 87A rebate, surcharge and cess. Each answer cites its source.
Exact decimal arithmetic for an expression (no floating-point drift: 0.1+0.2 = 0.3; + − × ÷ ^ %, sqrt, ln, log, round, min, max, pi), summary statistics for a list of numbers, rounding with a chosen mode, and adult BMI from lb/in or kg/cm.
Monthly loan payment (EMI) with a yearly amortization summary, simple and compound interest (with monthly contributions), percentage math (of, what percent, change, add, subtract), and tax added to or removed from a price at a given rate (VAT, sales tax, or India GST with CGST/SGST/IGST split).
Unit conversion (imperial and metric: length, weight, volume, area, speed, temperature, data, pressure, energy), color hex/rgb/hsl, WCAG contrast ratio, numbers in words and $ or lakh/crore formats, Markdown to HTML, pixels vs print size at a DPI, and CGPA to percentage (official formulas).