Kitbench

Exact Japanese text & date tools: char count, business days with JP holidays, era, tax, units.

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
98%
Naming quality
94%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~2,890Tokens (tool definitions)
~2.3 KBTypical response size
Significant attention impact (2.26% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "kitbench": {
      "url": "https://kitbench.net/mcp"
    }
  }
}

Remote endpoints

https://kitbench.net/mcpstreamable-http

What it can do

Tool inventory

Tools (7)

🟒 Read-only🟑 WriteπŸ”΄ Deleteβšͺ Unknown
🟒count_characters(text, limit)

Count characters in a text exactly as KitBench's character counter does. Counts user-perceived characters (grapheme clusters: emoji sequences, combining marks and flags count as 1), plus counts excluding newlines and whitespace, half-width characters counted as 0.5, lines, paragraphs, Japanese manuscript paper (genkō yōshi, 20x20) sheets, UTF-8 bytes, English words, and a breakdown into hiragana, katakana, kanji, Latin letters, digits and other. Strong for Japanese text and character limits. Text up to 200,000 characters.

Input Schema

{
  "type": "object",
  "properties": {
    "text": {
      "type": "string",
      "description": "The text to count (max 200,000 characters)."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "description": "Optional character limit; the result then shows how many characters remain or are over."
    }
  },
  "required": [
    "text"
  ],
  "additionalProperties": false
}
🟒days_between(start_date, end_date, include_start_day, lang)

Count the days between two dates: total days (optionally including the start day), weeks and days, years/months/days, Japanese business days (excluding weekends and Japanese national holidays from the Cabinet Office list) and weekdays (Mon-Fri). Exact calendar arithmetic, no time zones. Dates 1873-01-01 to 2200-12-31.

Input Schema

{
  "type": "object",
  "properties": {
    "start_date": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "Date in YYYY-MM-DD (1873-01-01 to 2200-12-31)"
    },
    "end_date": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "Date in YYYY-MM-DD (1873-01-01 to 2200-12-31)"
    },
    "include_start_day": {
      "type": "boolean",
      "description": "Count the start day too (e.g. 2026-01-01 to 2026-01-01 = 1 day). Default false."
    },
    "lang": {
      "type": "string",
      "enum": [
        "ja",
        "en"
      ],
      "description": "Language of the user. Use \"ja\" when the user writes in Japanese (affects the source link and notes). Default \"en\"."
    }
  },
  "required": [
    "start_date",
    "end_date"
  ],
  "additionalProperties": false
}
🟒add_days(start_date, days, direction, unit, lang)

Find the date N days (or N business days) after or before a date, with its weekday and Japanese era date (wareki). unit "business" skips Saturdays, Sundays and Japanese national holidays; "weekdays" skips only weekends. Good for deadlines in Japan. N from 0 to 100,000.

Input Schema

{
  "type": "object",
  "properties": {
    "start_date": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "Date in YYYY-MM-DD (1873-01-01 to 2200-12-31)"
    },
    "days": {
      "type": "integer",
      "minimum": 0,
      "maximum": 100000,
      "description": "How many days to move."
    },
    "direction": {
      "type": "string",
      "enum": [
        "after",
        "before"
      ],
      "description": "Default \"after\"."
    },
    "unit": {
      "type": "string",
      "enum": [
        "calendar",
        "business",
        "weekdays"
      ],
      "description": "\"calendar\" (default), \"business\" (Japan: skip weekends and national holidays) or \"weekdays\" (skip weekends only)."
    },
    "lang": {
      "type": "string",
      "enum": [
        "ja",
        "en"
      ],
      "description": "Language of the user. Use \"ja\" when the user writes in Japanese (affects the source link and notes). Default \"en\"."
    }
  },
  "required": [
    "start_date",
    "days"
  ],
  "additionalProperties": false
}
🟒calculate_age(birth_date, reference_date, lang)

Calculate exact age from a birth date: age in years, years/months/days, Japanese kazoedoshi (traditional age), days since birth, next birthday and days until it, weekday of birth, Japanese era (wareki) of the birth date and the zodiac animal (eto). February 29 birthdays move to March 1 in non-leap years. Reference date defaults to today in Japan.

Input Schema

{
  "type": "object",
  "properties": {
    "birth_date": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "Date in YYYY-MM-DD (1873-01-01 to 2200-12-31)"
    },
    "reference_date": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "Date in YYYY-MM-DD (1873-01-01 to 2200-12-31)"
    },
    "lang": {
      "type": "string",
      "enum": [
        "ja",
        "en"
      ],
      "description": "Language of the user. Use \"ja\" when the user writes in Japanese (affects the source link and notes). Default \"en\"."
    }
  },
  "required": [
    "birth_date"
  ],
  "additionalProperties": false
}
🟒convert_japanese_era(date, wareki, era, year, month, ...)

Convert between Western (Gregorian) dates and Japanese era dates (wareki: Meiji, Taisho, Showa, Heisei, Reiwa), using exact era start dates and "gannen" (ε…ƒεΉ΄) for year 1. Give either date (YYYY-MM-DD), or wareki such as "δ»€ε’Œε…ƒεΉ΄5月1ζ—₯" / "R1.5.1", or era + year + month + day. Rejects dates that do not exist in that era (e.g. Heisei 31-05-01). Range 1873-01-01 to 2200-12-31.

Input Schema

{
  "type": "object",
  "properties": {
    "date": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "Date in YYYY-MM-DD (1873-01-01 to 2200-12-31)"
    },
    "wareki": {
      "type": "string",
      "description": "Japanese era date to convert to Western, e.g. \"δ»€ε’Œε…ƒεΉ΄5月1ζ—₯\", \"平成31εΉ΄4月30ζ—₯\", \"S64.1.7\"."
    },
    "era": {
      "type": "string",
      "description": "明治/ε€§ζ­£/ζ˜­ε’Œ/平成/δ»€ε’Œ or Meiji/Taisho/Showa/Heisei/Reiwa (use with year, month, day)."
    },
    "year": {
      "type": [
        "integer",
        "string"
      ],
      "description": "Year in the era (1 or \"ε…ƒ\" for the first year)."
    },
    "month": {
      "type": "integer",
      "minimum": 1,
      "maximum": 12
    },
    "day": {
      "type": "integer",
      "minimum": 1,
      "maximum": 31
    }
  },
  "additionalProperties": false
}
🟒consumption_tax(amount, amount_type, rate, rounding)

Calculate Japanese consumption tax with exact integer arithmetic: tax-excluded to tax-included or tax-included to tax-excluded, at 10% (standard), 8% (reduced) or any rate from 0 to 100 with up to 2 decimals, rounding down (floor, default), half up (round) or up (ceil). Returns the tax amount, both prices and the formula. Amounts are whole yen up to 13 digits.

Input Schema

{
  "type": "object",
  "properties": {
    "amount": {
      "type": [
        "integer",
        "string"
      ],
      "description": "Amount in yen (whole number, up to 13 digits)."
    },
    "amount_type": {
      "type": "string",
      "enum": [
        "excluding_tax",
        "including_tax"
      ],
      "description": "Is amount tax-excluded (default; adds tax) or tax-included (extracts tax)?"
    },
    "rate": {
      "type": [
        "number",
        "string"
      ],
      "description": "Tax rate in percent. Default 10. 8 for the reduced rate (food, newspapers)."
    },
    "rounding": {
      "type": "string",
      "enum": [
        "floor",
        "round",
        "ceil"
      ],
      "description": "How to round fractions of a yen in the tax. Default \"floor\" (most common in Japan)."
    }
  },
  "required": [
    "amount"
  ],
  "additionalProperties": false
}
🟒convert_units(value, from, to, category, significant_digits, ...)

Convert units with official exact factors (NIST etc.), including Japanese units (tsubo, jo/tatami, shaku, sun, go, Japanese cups and spoons), temperature and fuel economy. Returns the exact result, a rounded display value, the factor, and extras such as feet-and-inches, inch fractions (1/16) and pounds-and-ounces. Unit ids by category - length: mm, cm, m, km, in, ft, yd, mi, nmi, shaku, sun; mass: mg, g, kg, t, oz, lb, st, ons, kwintal; temp: c, f, k; volume: ml, l, m3, tsp, tbsp, floz, cup, pt, qt, gal, flozuk, galuk, cupjp, tbspjp, tspjp, go; area: cm2, m2, ha, km2, sqin, sqft, sqyd, ac, sqmi, tsubo, jo, donum; speed: mps, kmh, mph, kn, fps; fuel: kml, l100, mpg, mpguk; pressure: pa, kpa, mpa, bar, psi, atm, mmhg; energy: j, kj, cal, kcal, wh, kwh, btu; power: w, kw, hp, ps; data: b, kb, mb, gb, tb, kib, mib, gib, tib.

Input Schema

{
  "type": "object",
  "properties": {
    "value": {
      "type": [
        "number",
        "string"
      ],
      "description": "Number to convert. Strings may use \",\" as thousands separator or fractions like \"5 1/4\"."
    },
    "from": {
      "type": "string",
      "enum": [
        "mm",
        "cm",
        "m",
        "km",
        "in",
        "ft",
        "yd",
        "mi",
        "nmi",
        "shaku",
        "sun",
        "mg",
        "g",
        "kg",
        "t",
        "oz",
        "lb",
        "st",
        "ons",
        "kwintal",
        "c",
        "f",
        "k",
        "ml",
        "l",
        "m3",
        "tsp",
        "tbsp",
        "floz",
        "cup",
        "pt",
        "qt",
        "gal",
        "flozuk",
        "galuk",
        "cupjp",
        "tbspjp",
        "tspjp",
        "go",
        "cm2",
        "m2",
        "ha",
        "km2",
        "sqin",
        "sqft",
        "sqyd",
        "ac",
        "sqmi",
        "tsubo",
        "jo",
        "donum",
        "mps",
        "kmh",
        "mph",
        "kn",
        "fps",
        "kml",
        "l100",
        "mpg",
        "mpguk",
        "pa",
        "kpa",
        "mpa",
        "bar",
        "psi",
        "atm",
        "mmhg",
        "j",
        "kj",
        "cal",
        "kcal",
        "wh",
        "kwh",
        "btu",
        "w",
        "kw",
        "hp",
        "ps",
        "b",
        "kb",
        "mb",
        "gb",
        "tb",
        "kib",
        "mib",
        "gib",
        "tib"
      ],
      "description": "Unit id to convert from."
    },
    "to": {
      "type": "string",
      "enum": [
        "mm",
        "cm",
        "m",
        "km",
        "in",
        "ft",
        "yd",
        "mi",
        "nmi",
        "shaku",
        "sun",
        "mg",
        "g",
        "kg",
        "t",
        "oz",
        "lb",
        "st",
        "ons",
        "kwintal",
        "c",
        "f",
        "k",
        "ml",
        "l",
        "m3",
        "tsp",
        "tbsp",
        "floz",
        "cup",
        "pt",
        "qt",
        "gal",
        "flozuk",
        "galuk",
        "cupjp",
        "tbspjp",
        "tspjp",
        "go",
        "cm2",
        "m2",
        "ha",
        "km2",
        "sqin",
        "sqft",
        "sqyd",
        "ac",
        "sqmi",
        "tsubo",
        "jo",
        "donum",
        "mps",
        "kmh",
        "mph",
        "kn",
        "fps",
        "kml",
        "l100",
        "mpg",
        "mpguk",
        "pa",
        "kpa",
        "mpa",
        "bar",
        "psi",
        "atm",
        "mmhg",
        "j",
        "kj",
        "cal",
        "kcal",
        "wh",
        "kwh",
        "btu",
        "w",
        "kw",
        "hp",
        "ps",
        "b",
        "kb",
        "mb",
        "gb",
        "tb",
        "kib",
        "mib",
        "gib",
        "tib"
      ],
      "description": "Unit id to convert to (same category)."
    },
    "category": {
      "type": "string",
      "enum": [
        "length",
        "mass",
        "temp",
        "volume",
        "area",
        "speed",
        "fuel",
        "pressure",
        "energy",
        "power",
        "data"
      ],
      "description": "Optional; inferred from the units."
    },
    "significant_digits": {
      "type": "integer",
      "minimum": 1,
      "maximum": 15,
      "description": "Significant digits of result_formatted. Default 6."
    },
    "lang": {
      "type": "string",
      "enum": [
        "ja",
        "en"
      ],
      "description": "Language of the user. Use \"ja\" when the user writes in Japanese (affects the source link and notes). Default \"en\"."
    }
  },
  "required": [
    "value",
    "from",
    "to"
  ],
  "additionalProperties": false
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded7 tools