# Thousand API (remote · mcp.thousand-api.com)

Certainty for AI Agents. Deterministic MCP tools for dates, crypto, finance. 84 tools.

- Trust score: 69/100 (medium)
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-08-03

## Components

- remote · `mcp.thousand-api.com`: 23/100, [markdown](https://verifymcp.io/servers/com-thousand-api-thousand-api/group-mcp.md), [page](https://verifymcp.io/servers/com-thousand-api-thousand-api/group-mcp)
- remote · `mcp.thousand-api.com`: 69/100 (this document), [markdown](https://verifymcp.io/servers/com-thousand-api-thousand-api/mcp.md), [page](https://verifymcp.io/servers/com-thousand-api-thousand-api/mcp)

## Channel facts

- Endpoint: `https://mcp.thousand-api.com/mcp`
- Transports: `streamable-http`
- Auth: `required`
- Version: `1.2.0`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-08-03.

- **Endpoint Security**: 74/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - No authorisation is required to call this server. Every tool declares its destructiveHint and none is destructive, so open access doesn't expose one.
  - HTTPS is enforced; there's no plaintext access path.
  - HSTS check failed: the Strict-Transport-Security header is absent.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
- **Transport & Reachability**: 100/100
  - Verified streamable-http transport via a live MCP handshake.
- **Schema Quality & AI Usability**: 72/100
  - 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).
  - AI-judged instruction clarity (good).
  - Context-footprint check failed: tool/resource definitions use about 13048 tokens (~153/item across 85 items; 84 tools + 1 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 3/100
  - Stability observed for 1 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 100/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 100% of tool parameters carry a description.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

## Install

### Claude

```bash
claude mcp add --transport http com-thousand-api-thousand-api https://mcp.thousand-api.com/mcp
```

### Codex

```toml
[mcp_servers.com-thousand-api-thousand-api]
url = "https://mcp.thousand-api.com/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "com-thousand-api-thousand-api": {
      "type": "remote",
      "url": "https://mcp.thousand-api.com/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add com-thousand-api-thousand-api --url https://mcp.thousand-api.com/mcp --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  com-thousand-api-thousand-api:
    url: "https://mcp.thousand-api.com/mcp"
```

### Other

```json
{
  "mcpServers": {
    "com-thousand-api-thousand-api": {
      "type": "http",
      "url": "https://mcp.thousand-api.com/mcp"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-08-03 (score 69, 0)

- [functional improvement] Stability: unverified → 0.03

### 2026-08-02 (score 69)

First indexed and scored.

## MCP tools (84)

### `utility.search_tools` (~136 tokens)

Search Tools

[utility] キーワード・カテゴリで MCP ツールを検索（無効ツールは除外） / Searches Thousand API MCP tools by keyword and category; disabled tools are excluded. [use_cases: tool_discovery]

Input parameters:

- `category` (string): カテゴリで絞り込み（datetime / text / convert / data / network / security / utility）
- `limit` (integer): 最大件数（1〜50、デフォルト 10）
- `query` (string): 検索キーワード（日本語・英語・ツール名）。省略時はカテゴリ内一覧

### `utility.get_tool_schema` (~81 tokens)

Get Tool Schema

[utility] 指定ツールの inputSchema・outputSchema をオンデマンド取得 / Returns inputSchema and outputSchema for one tool on demand (tools/list omits outputSchema). [use_cases: tool_discovery]

Input parameters:

- `tool` (string, required): スキーマを取得する MCP ツール名（例: data.validate_json）

### `utility.get_usage` (~63 tokens)

Get Usage

[utility] プランと月次クォータの使用状況（残量・リセット時刻）を返す / Returns the current API key plan and monthly quota usage before hitting limit_exceeded (429). [use_cases: quota, billing]

### `utility.diagnose_mcp` (~90 tokens)

Diagnose MCP

[utility] API疎通・APIキー有効性・無効ツール件数を一括診断（クォータ消費なし） / Runs MCP self-diagnostics: API health via GET /v1/health (no quota), API key check via tool-settings (no quota), and disabled tool counts. [use_cases: tool_discovery, billing]

### `data.execute_batch` (~540 tokens)

Execute Batch

[data] 【複数ツール連続の前に検討】tools:[{id,tool,args}] で MCP ツールを最大10件順次実行。{{stepId.field}} で前ステップ結果を参照。関連ツール3〜5本を個別呼び出しすると往復3〜5回＋ツール呼び出しオーバーヘッドが重複するが、execute_batch で1回にまとめコンテキスト消費を大幅削減（概算）。Examples: (1) 今日の日時→祝日→為替 tools:[{id:now,tool:datetime.get_current_datetime,args:{timezone:Asia/Tokyo}},{id:holiday,tool:datetime.is_holiday,args:{country:JP,date:{{now.date}}}},{id:rate,tool:network.get_exchange_rate,args:{from:USD,to:JPY}}] (2) JSON検証→マージ→統計 tools:[validate:data.validate_json,merge:data.merge_json,stats:data.calc_stats] (3) スラッグ→Base64→HMAC tools:[slug:text.generate_slug,b64:convert.base64,hmac:security.generate_hmac]。詳細は tool-catalog の execute_batch_presets 参照 / Prefer before chaining MCP tools: run up to 10 tools via tools:[{id,tool,args}] with {{stepId.field}} refs. Calling 3-5 related tools individually costs ~3-5 round trips plus repeated tool-call overhead; execute_batch combines them into one call, cutting context usage significantly (approx.). Ex1 today→holiday→rate: tools:[{id:now,tool:datetime.get_current_datetime,args:{timezone:Asia/Tokyo}},{id:holiday,tool:datetime.is_holiday,args:{country:JP,date:{{now.date}}}},{id:rate,tool:network.get_exchange_rate,args:{from:USD,to:JPY}}]. Ex2 validate JSON→merge→stats. Ex3 slug→base64→HMAC. See execute_batch_presets in the tool-catalog MCP Resource. [use_cases: workflow, batch]

Input parameters:

- `steps` (array): Steps to execute in order. Alternatively, use tools with MCP tool names instead of HTTP paths.
- `stop_on_error` (boolean): Stop executing remaining steps after first failure (default: true)
- `tools` (array): MCPツール名ベースのステップ指定（steps の代替）。各要素は { id, tool, args }

### `datetime.get_holidays` (~170 tokens)

Get Holidays

[datetime] 指定した国・年の祝日一覧を取得します。日程調整や営業日計算の前処理として使えます。レスポンスに cache_ttl（推奨キャッシュ保持秒数）と cached_at（データ取得時刻）を含み、再取得の要否判断に使えます。 / Returns public holidays for a country and year. Responses include cache_ttl (recommended cache duration in seconds) and cached_at (fetch time) to decide whether to refetch. [use_cases: calendar, business_planning]

Input parameters:

- `country` (string, required): 国コード（JP: 日本 / US: アメリカ）
- `year` (integer): 対象年（省略時は当年）

### `datetime.get_calendar_month` (~116 tokens)

Get Calendar Month

[datetime] 指定した年月の月間カレンダー（曜日・祝日・営業日サマリー） / Returns a monthly calendar with weekday, holiday, and business-day summary for a year and month. [use_cases: calendar, business_planning]

Input parameters:

- `country` (string): 国コード（JP: 日本 / US: アメリカ・デフォルト: JP）
- `month` (integer, required): 月（1〜12）
- `year` (integer, required): 年（例: 2026）

### `datetime.is_holiday` (~149 tokens)

Is Holiday

[datetime] 指定した国・日付が祝日かどうかを判定します。祝日名も返します。レスポンスに cache_ttl（推奨キャッシュ保持秒数）と cached_at（データ取得時刻）を含み、再取得の要否判断に使えます。 / Checks whether a date is a public holiday in the given country and returns the holiday name. Responses include cache_ttl and cached_at for refetch decisions. [use_cases: calendar, business_planning]

Input parameters:

- `country` (string, required): 国コード
- `date` (string, required): 判定したい日付（YYYY-MM-DD形式）

### `datetime.add_business_days` (~163 tokens)

Add Business Days

[datetime] 指定した日付からN営業日後（または前）の日付を計算します。土日・祝日を自動的にスキップします。例: 「3営業日後の納期」「5営業日以内に返答」などの計算に使います。 / Calculates a date N business days after (or before) a start date, skipping weekends and holidays. [use_cases: calendar, business_planning]

Input parameters:

- `country` (string, required): 国コード（祝日の基準国）
- `days` (integer, required): 追加する営業日数。負の値で過去方向に計算できます。
- `from` (string, required): 起算日（YYYY-MM-DD形式）

### `datetime.add_calendar_days` (~109 tokens)

Add Calendar Days

[datetime] 暦日（カレンダー日）の加算・減算（SQL ヒント付き） / Add or subtract calendar days from a date and return a SQL DATE_ADD/DATE_SUB hint. [use_cases: calendar, testing]

Input parameters:

- `date` (string, required): Base date (YYYY-MM-DD)
- `days` (integer, required): Number of calendar days to add (negative to subtract)
- `timezone` (string): IANA timezone (default: Asia/Tokyo)

### `datetime.generate_test_dates` (~190 tokens)

Generate Test Dates

[datetime] テストデータ・DBシーディング用に基準日から複数オフセット（±N日）の日付セットを一括生成（ラベル・SQL INSERT ヒント付き）。datetime.add_calendar_days は単発加算、本ツールは複数オフセットの一括生成 / Generate multiple labeled test dates from one base date and day offsets (batch seeding). Unlike datetime.add_calendar_days (single offset), returns SQL INSERT VALUES hints for factories. [use_cases: testing, calendar]

Input parameters:

- `base_date` (string, required): Base date (YYYY-MM-DD) or "today"
- `format` (string): Output date format (default: iso)
- `offsets` (array, required): Day offsets from base_date (max 100 items)
- `timezone` (string): IANA timezone (default: Asia/Tokyo)

### `datetime.check_business_hours` (~160 tokens)

Check Business Hours

[datetime] 営業時間内かどうかを判定（タイムゾーン・祝日対応・デフォルト: Asia/Tokyo） / Checks whether a datetime falls within configured business hours, holidays, and timezone rules. [use_cases: business_planning, scheduling]

Input parameters:

- `country` (string): Optional country code for public holiday checks
- `datetime` (string, required): Date and time to check (ISO 8601, e.g. 2025-12-25T10:00:00+09:00)
- `hours` (object, required): Business hours per day of week (mon–sun). null = closed.
- `timezone` (string): IANA timezone (default: Asia/Tokyo)

### `datetime.check_custom_holidays` (~162 tokens)

Check Custom Holidays

[datetime] 法定祝日＋カスタム休業日をまとめて判定（複数日・週末対応） / Checks multiple dates against public holidays plus custom non-working days. Returns holiday status, reason (legal/custom/weekend), and name per date. Optionally treats weekends as holidays. [use_cases: batch_test_date, calendar, business_planning]

Input parameters:

- `country` (string): Country code for public holidays (default: JP)
- `custom_holidays` (array): Custom non-working days (max 100 items)
- `dates` (array, required): Dates to check (YYYY-MM-DD, max 100 items)
- `include_weekends` (boolean): Treat Saturdays and Sundays as holidays (default: false)

### `datetime.calc_schedule` (~248 tokens)

Calc Schedule

[datetime] タイムゾーン変換・DST考慮のスケジュール計算 / Converts datetimes across timezones with DST support; add hours, next business day, or next weekday. [use_cases: timezone, scheduling]

Input parameters:

- `at_time` (string): next_weekday 時の時刻（HH:MM、from_timezone基準）
- `base_time` (string, required): 基点日時（ISO 8601。例: 2026-05-21T15:00:00Z または 2026-05-21T15:00:00）
- `country` (string): next_business_day 時の祝日基準国
- `from_timezone` (string, required): 基点タイムゾーン（IANA。例: Asia/Tokyo）
- `operation` (string, required): 操作種別
- `to_timezone` (string, required): 変換先タイムゾーン（IANA。例: America/New_York）
- `value` (string): add_hours: 時間数、next_business_day: 営業日数（省略時1）、next_weekday: 曜日名

### `datetime.get_cron_next` (~163 tokens)

Get Cron Next

[datetime] Cron式を解析して次回実行日時を計算（人間向け説明付き・デフォルト: Asia/Tokyo） / Parses a cron expression and returns upcoming run times with a human-readable explanation. [use_cases: scheduling, cron]

Input parameters:

- `count` (integer): 次のN回分を返す（省略時は1）
- `expression` (string, required): Cron式（例: 0 9 * * 1-5）
- `from` (string): 基準日時（ISO 8601）。省略時は現在時刻
- `timezone` (string): IANAタイムゾーン（例: Asia/Tokyo）。省略時は Asia/Tokyo

### `datetime.parse_laravel_schedule` (~134 tokens)

Parse Laravel Schedule

[datetime] Laravel スケジュール式を Cron 式に変換し次回実行時刻を計算 / Parses Laravel scheduler expressions and returns cron equivalents with next run times. [use_cases: scheduling, cron]

Input parameters:

- `base_datetime` (string): Base datetime (ISO 8601). Defaults to now
- `count` (integer): Number of next runs to return (default: 3)
- `expression` (string, required): Laravel schedule expression (e.g. dailyAt('03:30'))
- `timezone` (string): IANA timezone (default: Asia/Tokyo)

### `network.get_exchange_rate` (~202 tokens)

Get Exchange Rate

[network] 2通貨間の為替レートを取得し、指定金額の換算結果を返します。from（基準通貨）から to（換算先通貨）へのレート・換算額・取得時刻を含みます。レスポンスに cache_ttl（推奨キャッシュ保持秒数）と cached_at（データ取得時刻）を含み、再取得の要否判断に使えます。 / Fetches the exchange rate between two currencies and converts an optional amount. Responses include cache_ttl and cached_at for refetch decisions. [use_cases: finance]

Input parameters:

- `amount` (number): 基準通貨での金額。省略時は 1
- `from` (string, required): 基準通貨（ISO 4217）
- `to` (string, required): 換算先通貨（ISO 4217）

### `network.lookup_postal_code` (~211 tokens)

Lookup Postal Code

[network] 日本の郵便番号↔住所の正引き・逆引き（日本郵便公式データ・最大50件）。レスポンスに cache_ttl（推奨キャッシュ保持秒数）と cached_at（データ取得時刻）を含み、再取得の要否判断に使えます。 / Bidirectional Japanese postal code lookup using official Japan Post data. Responses include cache_ttl and cached_at for refetch decisions. [use_cases: localization, address]

Input parameters:

- `address` (string): Address keyword for reverse lookup (partial match on prefecture, city, town, or kana)
- `code` (string): Postal code for forward lookup (e.g. "100-0001" or "1000001")
- `country` (string): Country code (default: JP). Currently only JP is supported.
- `limit` (integer): Max results for reverse lookup (default: 10, max: 50)

### `network.get_page_meta` (~129 tokens)

Get Page Meta

[network] URLのページ情報（タイトル・説明・OGP・favicon）を取得します。ユーザーが共有したURLの内容確認、リンクの要約、SNSプレビューの生成などに使えます。AIが直接アクセスできないURLの情報を取得する際に有効です。 / Fetches page title, description, OGP tags, and favicon for a URL when the agent cannot browse directly. [use_cases: url_check, scraping]

Input parameters:

- `url` (string, required): 情報を取得したいページのURL（http/httpsのみ）

### `utility.get_distance` (~200 tokens)

Get Distance

[utility] 2地点の緯度・経度間の地上距離（メートル）を計算します。座標は「緯度,経度」の文字列で1点ずつ渡します。アルゴリズムは hubeny（既定・高速）・球面三角法・測地線航法から選択できます。 / Calculates geodesic distance in meters between two latitude/longitude coordinate pairs. [use_cases: geo, mapping]

Input parameters:

- `p1` (string, required): 始点の座標。形式は「緯度,経度」（例: 35.681236,139.767125）
- `p2` (string, required): 終点の座標。形式は「緯度,経度」
- `type` (string): 計算方法。省略時は hubeny（ヒュベニの公式）

### `utility.convert_coordinates` (~176 tokens)

Convert Coordinates

[utility] Convert geographic coordinates between WGS84 (GPS), Tokyo Datum (旧日本測地系), JGD2011 (測地成果2011), and map tile coordinates (XYZ tile scheme used by GSI, OpenStreetMap, and Google Maps). Essential for Japanese map applications where GPS data and legacy coordinate systems diverge by up to 450 meters. / Convert Coordinates. Developer utilities for calculations and checks. [use_cases: geo, mapping]

Input parameters:

- `from` (string, required): Source coordinate system
- `lat` (number, required): Latitude (-90 to 90)
- `lng` (number, required): Longitude (-180 to 180)
- `to` (string, required): Target coordinate system (use tile for map tile XYZ coordinates)
- `zoom` (integer): Zoom level (0-25). Required when to is tile

### `convert.get_qrcode` (~311 tokens)

Get QR Code

[convert] テキストやURLからQRコード画像を生成します。PNG・JPEG・SVG・EPS形式に対応し、サイズや前景色・背景色を指定できます。MCPでは画像を image コンテンツとして返します。コンテキスト節約のため return: "metadata_only" でサイズ・形式のみ取得できます。 / Generates a QR code image (PNG, JPEG, SVG, EPS) from text or a URL with size and color options. [use_cases: media, data_conversion]

Input parameters:

- `bg_color` (string): 背景色を6桁の16進数で指定（例: ffffff）。省略時は ffffff
- `data` (string, required): QRコードに埋め込むデータ（URLやテキストなど）
- `fg_color` (string): 前景色（QRのドット）を6桁の16進数で指定（例: 00ff00）。省略時は 000000
- `format` (string, required): 出力画像のフォーマット
- `return` (string): full: 画像データを含む完全なレスポンス（デフォルト）。metadata_only: サイズ・形式等のメタデータのみ（コンテキスト節約）
- `size` (integer): 画像サイズ（正方形の一辺、ピクセル）。省略時は 250

### `network.get_ip_info` (~75 tokens)

Get IP Info

[network] IPアドレスの地理情報を取得 / Looks up geographic information for an IP address; omit address to use the caller IP. [use_cases: network]

Input parameters:

- `address` (string): 検索するIPアドレス（省略時はリクエスト元のIP）

### `text.extract_text_from_html` (~124 tokens)

Extract Text from HTML

[text] HTMLからプレーンテキストを抽出（タグ除去・エンティティデコード・空白正規化・リンク一覧オプション） / Extracts plain text from HTML with tag removal and entity decoding. [use_cases: text_processing]

Input parameters:

- `html` (string, required): HTML text to extract plain text from (max 1MB)
- `max_length` (integer): Optional maximum character count for the output text
- `preserve_links` (boolean): When true, include a list of anchor text and href values

### `text.get_text_stats` (~109 tokens)

Get Text Stats

[text] テキストの文字数・単語数・段落数・推定読了時間を計算（ja / en） / Counts characters, words, paragraphs, and estimated reading time for Japanese or English text. [use_cases: text_processing]

Input parameters:

- `lang` (string): 言語コード（ja: 日本語 / en: 英語・デフォルトen）
- `text` (string, required): 解析するテキスト（最大100KB）

### `text.estimate_tokens` (~157 tokens)

Estimate Tokens

[text] テキストのLLMトークン数を近似計算。TOKENを節約するため、HTMLや長文をLLMに渡す前に消費トークン数を事前確認できる / Approximates LLM token usage from text before sending it to a model—save tokens by checking HTML or long documents upfront. Character-type heuristics only; not exact tokenizer output. [use_cases: text_processing, token_estimation]

Input parameters:

- `model_hint` (string): モデルヒント（claude / gpt / generic・デフォルトgeneric）
- `text` (string, required): トークン数を見積もるテキスト（最大1MB）

### `text.split_text` (~251 tokens)

Split Text

[text] 長文を文・段落の境界を保ったままチャンク分割（LLMコンテキスト・RAG前処理用、overlap対応） / Splits long text into chunks without breaking sentence/paragraph boundaries. Useful for preparing text for LLM context windows or RAG chunking. Combine with text.estimate_tokens to size chunks by token budget (character-based sizing only for now). [use_cases: text_processing, rag, token_estimation]

Input parameters:

- `boundary` (string): Split unit: sentence (default, splits on 。．.!！?？), paragraph (splits on blank lines), or char (fixed-size slices). Oversized units fall back to finer boundaries automatically.
- `max_chars` (integer, required): Maximum characters per chunk, counted in Unicode code points (integer >= 1)
- `overlap` (integer): Characters repeated from the end of the previous chunk at the start of the next (0 <= overlap < max_chars, default 0). Useful for keeping context between RAG chunks.
- `text` (string, required): Text to split into chunks (max 1MB). An empty string returns chunk_count: 0.

### `text.mask_pii` (~254 tokens)

Mask PII

[text] テキスト内の個人情報（メール・日本の電話番号・クレジットカード）を正規表現＋Luhnで検出してマスキング。固定長マスクで元の長さを漏らさない。正規表現ベースのため偽陽性/偽陰性あり（専用DLPの代替ではない） / Detects and masks PII (email addresses, Japanese phone numbers, credit card numbers) in text using regex + Luhn validation for cards. Uses fixed-length masking (not length-preserving) so masked output doesn't leak the original length. Note: regex-based detection has inherent false-positive/false-negative tradeoffs — not a substitute for a dedicated DLP solution. [use_cases: security, text_processing]

Input parameters:

- `mask_char` (string): Single character used for masking (default "*"). Must be exactly one character (surrogate pairs are not allowed).
- `text` (string, required): Text to scan and mask (max 50,000 characters)
- `types` (array): PII types to detect. Defaults to all of email, phone_jp, and credit_card when omitted.

### `text.diff_text` (~132 tokens)

Diff Text

[text] 2つのテキストを比較し、unified diff または JSON 形式で差分を返す / Compares two texts and returns unified diff or structured JSON differences. [use_cases: text_processing]

Input parameters:

- `context_lines` (integer): Number of context lines around changes in unified format (default 3)
- `format` (string): Output format: unified diff string or structured JSON chunks (default unified)
- `modified` (string, required): Modified text to compare against (max 256KB)
- `original` (string, required): Original text to compare (max 256KB)

### `text.diff_markdown_tables` (~134 tokens)

Diff Markdown Tables

[text] 2つの Markdown テーブルをセル単位で比較し、列・行の追加削除とセル変更を構造化して返す / Compares two Markdown tables at the cell level with structured added/changed/removed rows. [use_cases: design_review, text_processing]

Input parameters:

- `after` (string, required): Modified Markdown table string to compare against (max 100KB)
- `before` (string, required): Original Markdown table string to compare (max 100KB)
- `key_column`: Column name or zero-based index used as row identity key (default: first column)

### `text.calc_text_similarity` (~138 tokens)

Calc Text Similarity

[text] 2つのテキストの類似度を Levenshtein・Jaro-Winkler・Jaccard で数値スコア（0〜1）として返す / Returns Levenshtein, Jaro-Winkler, and Jaccard similarity scores for two texts. [use_cases: text_processing]

Input parameters:

- `algorithms` (array): Algorithms to run (default: all three)
- `text1` (string, required): First text to compare (max 10,000 characters)
- `text2` (string, required): Second text to compare against (max 10,000 characters)

### `network.resolve_url` (~85 tokens)

Resolve URL

[network] URLの最終リダイレクト先を追跡（短縮URL・アフィリエイトURLの実体確認） / Follows redirects to resolve the final URL—useful for short links and affiliate URLs. [use_cases: url_check]

Input parameters:

- `url` (string, required): 追跡するURL（http/httpsのみ）

### `convert.markdown` (~103 tokens)

Convert Markdown

[convert] MarkdownテキストをHTMLに変換（GFM対応・XSSサニタイズ） / Converts Markdown to HTML with optional GFM support and XSS sanitization. [use_cases: data_conversion]

Input parameters:

- `markdown` (string, required): 変換するMarkdownテキスト（最大100KB）
- `sanitize` (boolean): HTMLをサニタイズしてXSSを防ぐ（デフォルトtrue・推奨）

### `utility.generate_color_palette` (~110 tokens)

Generate Color Palette

[utility] 基準カラーコードからカラーパレットを生成（補色・類似色・トライアド等） / Generates mathematically accurate palettes (complementary, analogous, triad, etc.) from a base color. [use_cases: design]

Input parameters:

- `color` (string, required): 基準カラーコード（#RRGGBB形式 例: #1976D2）
- `type` (string): パレット種別（デフォルト: complementary）

### `utility.calc_color_contrast` (~119 tokens)

Calc Color Contrast

[utility] 2色間のWCAG 2.1コントラスト比とAA/AAA適合判定を計算 / Calculates WCAG 2.1 contrast ratio and AA/AAA compliance between two colors. [use_cases: design]

Input parameters:

- `background` (string, required): Background color HEX (#RRGGBB, RRGGBB, or 3-digit shorthand)
- `foreground` (string, required): Foreground color HEX (#RRGGBB, RRGGBB, or 3-digit shorthand)

### `convert.color` (~93 tokens)

Convert Color

[convert] HEX/RGB/HSL/HSV/CMYK間の色空間変換（RGB中継で一貫性を保証） / Converts colors between HEX, RGB, HSL, HSV, and CMYK via RGB. [use_cases: data_conversion]

Input parameters:

- `color` (string, required): Color value to convert (format depends on from)
- `from` (string, required): Source color format

### `network.inspect_url` (~81 tokens)

Inspect URL

[network] URLのヘルスチェック（ステータス・レスポンスタイム・SSL・ヘッダー） / Checks URL health: HTTP status, response time, SSL certificate, and response headers. [use_cases: url_check, network]

Input parameters:

- `url` (string, required): 検査するURL（http/httpsのみ）

### `security.decode_jwt` (~74 tokens)

Decode JWT

[security] JWTをデコード（署名検証なし・ヘッダー・ペイロード・有効期限） / Decodes a JWT header and payload without signature verification; returns expiry metadata. [use_cases: security, auth]

Input parameters:

- `token` (string, required): デコードするJWTトークン

### `convert.unit` (~130 tokens)

Convert Unit

[convert] 長さ・重さ・温度・面積・体積・速度・データ量の単位変換（mathjs） / Converts numeric values across length, weight, temperature, area, volume, speed, and data units. [use_cases: data_conversion]

Input parameters:

- `from` (string, required): 変換元単位（例: km, kg, celsius, GB）
- `to` (string, required): 変換先単位（例: mile, lb, fahrenheit, MiB）
- `value` (number, required): 変換する数値

### `security.generate_hash` (~110 tokens)

Generate Hash

[security] テキストからMD5・SHA-1・SHA-256・SHA-512のハッシュ値を生成 / Generates MD5, SHA-1, SHA-256, or SHA-512 hashes from text for checksums and integrity checks. [use_cases: security, crypto]

Input parameters:

- `algorithm` (string): ハッシュアルゴリズム（デフォルト: sha256）
- `text` (string, required): ハッシュ化するテキスト（最大100KB）

### `security.generate_uuid` (~133 tokens)

Generate UUID

[security] 暗号学的に安全な UUID v4 を1件以上生成（最大100件） / Generate one or more cryptographically secure UUID v4 strings. Unlike LLM-generated UUIDs, these are guaranteed to be RFC 4122-compliant with proper version and variant bits. Use for database primary keys, job IDs, and any context requiring unique identifiers. [use_cases: security, validation]

Input parameters:

- `count` (integer): Number of UUIDs to generate (default: 1)
- `version` (string): UUID version (only v4 is supported; default: v4)

### `security.validate_uuid` (~102 tokens)

Validate UUID

[security] UUID形式の検証とバージョン（v1-v5）・variant の判定 / Validate whether strings are properly formatted UUIDs and identify their version (v1-v5). Useful for checking user input, validating IDs from external systems, or verifying AI-generated UUIDs before using them as database keys. [use_cases: security, validation]

Input parameters:

- `values` (array, required): Strings to validate as UUIDs (max 100)

### `security.validate_barcode` (~110 tokens)

Validate Barcode

[security] ISBN/JANバーコードの検証とISBN-10/ISBN-13変換 / Validates and normalizes barcode formats such as EAN-13, UPC, and ISBN. [use_cases: validation, ecommerce]

Input parameters:

- `code` (string, required): Barcode to validate (hyphens optional, max 100 chars)
- `type` (string): Optional type hint: ISBN-10, ISBN-13, JAN-13, EAN-13, or UPC-A

### `security.validate_luhn` (~103 tokens)

Validate Luhn

[security] Luhn（mod 10）チェックディジット検証（クレジットカード・IMEI等） / Validates Luhn check digits for credit cards, IMEI, and similar identifiers. [use_cases: validation, ecommerce]

Input parameters:

- `format` (string): Optional format hint for digit-count validation (default: generic)
- `value` (string, required): Number to validate (hyphens and spaces optional, max 200 chars)

### `security.generate_hmac` (~149 tokens)

Generate HMAC

[security] HMAC署名の生成・検証（SHA-256/512/1/MD5・timing-safe compare） / Generates or verifies HMAC signatures for common hash algorithms. [use_cases: security, crypto]

Input parameters:

- `algorithm` (string, required): HMAC algorithm
- `encoding` (string): Output encoding (default: hex)
- `message` (string, required): Message to sign or verify (max 64KB)
- `mode` (string, required): sign to generate a signature, verify to compare one
- `secret` (string, required): Secret key for HMAC (max 64KB)
- `signature` (string): Signature to verify (required when mode is verify)

### `security.generate_totp` (~347 tokens)

Generate TOTP

[security] RFC 6238準拠のTOTPコード生成・検証（2FA向け・HMAC-SHA1。任意のtimestampで評価時刻を固定可。QR/otpauthはスコープ外） / Generates or validates RFC 6238 TOTP (time-based one-time password) codes for 2FA implementations. Exact HMAC-SHA1 computation and time-step math are error-prone for LLMs to do by hand. Optional timestamp (UNIX seconds) overrides evaluation time for deterministic tests. QR code / otpauth:// URI generation is out of scope — pair with a QR code tool if needed. [use_cases: security, auth, crypto]

Input parameters:

- `action` (string, required): generate a TOTP code, or validate a user-supplied code
- `code` (string): TOTP code to verify (required when action is validate; digit count must match digits)
- `digits` (integer): Code length: 6, 7, or 8 (default: 6)
- `period` (integer): Time-step size in seconds (default: 30)
- `secret` (string, required): Shared secret in Base32 encoding (A-Z, 2-7; padding/spaces/lowercase allowed). Never returned in responses.
- `timestamp` (number): UNIX time in seconds to evaluate (optional). Omit to use the current time. Useful for RFC 6238 test vectors and deterministic replay.
- `window` (integer): Allowed time-step skew when validating (±N steps). Default 1 allows about ±30s with period=30. Max 10.

### `convert.csv` (~203 tokens)

Convert CSV

[convert] CSVとJSONの相互変換（ヘッダー・区切り文字・UTF-8 BOM対応・最大1MB） / Converts CSV to JSON or JSON to CSV with delimiter and header options. [use_cases: data_conversion]

Input parameters:

- `bom` (boolean): CSV出力時にUTF-8 BOM（U+FEFF）を先頭に付与する（デフォルト: false）。Excelで開く場合は true を推奨
- `delimiter` (string): CSVの区切り文字（デフォルト: カンマ）
- `from` (string, required): 変換元形式
- `has_header` (boolean): CSVの1行目をヘッダーとして扱う（デフォルト: true）
- `input` (string, required): 変換するデータ（CSVまたはJSON文字列・最大1MB）
- `to` (string, required): 変換先形式

### `convert.yaml` (~126 tokens)

Convert YAML

[convert] YAMLとJSONの相互変換（JSON出力時のインデント指定・最大1MB） / Converts between YAML and JSON deterministically. [use_cases: data_conversion]

Input parameters:

- `from` (string, required): 変換元形式
- `indent` (integer): JSON出力時のインデント数（0〜10・デフォルト: 2）
- `input` (string, required): 変換するデータ（YAMLまたはJSON文字列・最大1MB）
- `to` (string, required): 変換先形式

### `convert.toml` (~125 tokens)

Convert TOML

[convert] TOMLとJSONの相互変換（ネストテーブル・テーブル配列対応・最大1MB） / Converts between TOML and JSON. [use_cases: data_conversion]

Input parameters:

- `direction` (string, required): Conversion direction: to_json parses TOML to JSON; to_toml serializes JSON to TOML
- `indent` (integer): JSON output indentation when direction is to_json (0–8, default 2)
- `input` (string, required): String to convert (TOML or JSON text, max 1MB)

### `convert.xml` (~141 tokens)

Convert XML

[convert] XMLとJSONの相互変換（属性プレフィックス・ネスト要素対応・最大1MB） / Converts between XML and JSON. [use_cases: data_conversion]

Input parameters:

- `attribute_prefix` (string): Attribute key prefix when direction is to_json (default @)
- `direction` (string, required): Conversion direction: to_json parses XML to JSON; to_xml serializes JSON to XML
- `indent` (integer): Output indentation (0–8, default 2). JSON spacing when to_json; XML indent when to_xml
- `input` (string, required): String to convert (XML or JSON text, max 1MB)

### `convert.base64` (~131 tokens)

Convert Base64

[convert] Base64エンコード/デコード（URL-safe対応・UTF-8/hex/base64入力） / Encodes or decodes Base64 with optional URL-safe mode and input encodings. [use_cases: data_conversion]

Input parameters:

- `data` (string, required): String to encode or decode (max 512KB)
- `direction` (string, required): Processing direction: encode or decode
- `input_encoding` (string): Input encoding when direction is encode (default: utf8)
- `url_safe` (boolean): Use URL-safe Base64 (+ → -, / → _, strip padding on encode)

### `convert.url_encoding` (~206 tokens)

URL Encode/Decode

[convert] URLパーセントエンコード/デコード（component=encodeURIComponent / uri=encodeURI・不正%シーケンスは明確なエラー） / Encodes or decodes URL percent-encoding (encodeURIComponent/decodeURIComponent or encodeURI/decodeURI). Handles multi-byte UTF-8 characters (e.g. Japanese) correctly and returns a clear error on malformed percent-sequences instead of throwing. [use_cases: data_conversion]

Input parameters:

- `component` (string): Encoding scope (default: component). "component" uses encodeURIComponent/decodeURIComponent and encodes reserved characters such as ?, =, &, /, #. "uri" uses encodeURI/decodeURI and preserves URL str…
- `direction` (string, required): Processing direction: encode or decode
- `text` (string, required): String to encode or decode (max 100,000 characters). Empty string is allowed.

### `convert.format` (~215 tokens)

Convert Format

[convert] JSONハブで CSV/YAML/TOML/XML/Base64 を相互変換（convert_csv 等の統合代替） / Convert between JSON and CSV, YAML, TOML, XML, or Base64 in one tool. All conversions go through JSON (no direct csv→yaml). Can replace convert_csv, convert_yaml, convert_toml, convert_xml, and JSON↔Base64 workflows. Consolidates per-format conversion tools into a single interface; individual tools remain available for now. [use_cases: data_conversion]

Input parameters:

- `data` (required): Data to convert (string for to_json; JSON object or string for from_json)
- `direction` (string, required): to_json: parse format string to JSON; from_json: serialize JSON to format string
- `format` (string, required): Target format: csv, yaml, toml, xml, or base64
- `options` (object): Format-specific options (has_header, delimiter, bom, indent, attribute_prefix, url_safe, etc.)

### `utility.calc_expression` (~100 tokens)

Calc Expression

[utility] 数式・計算式の安全な評価（mathjs・変数バインディング・精度指定） / Safely evaluates mathematical expressions with optional variables. [use_cases: dev]

Input parameters:

- `expression` (string, required): Mathematical expression to evaluate (max 500 characters)
- `precision` (integer): Decimal places for numeric results (0–15, optional)
- `variables` (object): Optional variable bindings for the expression

### `utility.calc_tax` (~181 tokens)

Calc Tax

[utility] 日本の消費税計算（標準10%・軽減8%・端数処理・複数品目合算・税抜↔税込変換） / Calculates Japanese consumption tax with configurable rates, rounding, and multi-item totals. [use_cases: accounting, billing]

Input parameters:

- `amount` (number): Single amount in yen (mutually exclusive with items)
- `direction` (string): exclusive_to_inclusive: net→gross (default). inclusive_to_exclusive: gross→net.
- `items` (array): Multiple line items with optional per-item rates (mutually exclusive with amount)
- `rate` (number): Tax rate in percent (default: 10). Used as fallback when item.rate is omitted.
- `rounding` (string): Rounding mode for tax amounts (default: floor)

### `utility.calc_loan` (~240 tokens)

Calc Loan

[utility] ローン返済計算（元利均等・元金均等・返済計画表・円単位端数調整） / Calculates loan repayment (equal payment or equal principal method), including monthly breakdown of principal/interest. LLMs frequently make rounding errors in compound interest math; this returns exact yen-rounded figures with correct final-month adjustment. [use_cases: finance, billing]

Input parameters:

- `annual_rate` (number, required): Annual interest rate in percent (e.g. 3.5 means 3.5% per year, not 0.035)
- `include_schedule` (boolean): When true, include the full amortization schedule. Omitted / false returns summary totals only (default: false).
- `method` (string): equal_payment = fixed monthly payment (元利均等, default). equal_principal = fixed monthly principal (元金均等; payment varies by month).
- `principal` (number, required): Loan principal amount in yen (must be positive)
- `term_months` (integer, required): Repayment term in months (1–600; 600 = 50 years)

### `utility.compare_versions` (~142 tokens)

Compare Versions

[utility] Semverバージョン比較・ソート・レンジ判定 / Compares semantic version strings and reports ordering. [use_cases: dev]

Input parameters:

- `against` (string): Target version for comparison (must be paired with compare)
- `compare` (string): Source version for comparison (must be paired with against)
- `include_prerelease` (boolean): Include prerelease versions in sorted/latest (default: false)
- `satisfies` (object): Map of range pattern to version to check (key=range, value=version)
- `versions` (array): List of versions to sort and find latest from (max 100 items)

### `utility.calc_pagination` (~132 tokens)

Calc Pagination

[utility] ページネーション計算（offset/limit/from/to/page_range 等を一括算出） / Calculates pagination offsets, page counts, and slice boundaries. [use_cases: dev]

Input parameters:

- `current_page` (integer, required): Current page number (1-based). Named current_page because some MCP clients reject a property named page.
- `per_page` (integer): Items per page (default: 20)
- `total_items` (integer, required): Total number of items across all pages
- `window_size` (integer): Number of page numbers to include in page_range (default: 5)

### `network.dns_lookup` (~107 tokens)

DNS Lookup

[network] ドメインのDNSレコード取得（A / AAAA / CNAME / MX / TXT / NS・type=all対応） / Resolves DNS records (A, AAAA, MX, TXT, etc.) for a domain or hostname. [use_cases: network]

Input parameters:

- `domain` (string, required): 検索するドメイン名（例: example.com）
- `type` (string): レコードタイプ（デフォルト: all）

### `network.calc_cidr` (~90 tokens)

Calc CIDR

[network] IPv4 CIDR/IPレンジ計算（ネットワーク・ブロードキャスト・マスク・ホスト数） / Calculates network address, broadcast, host range, and subnet details from CIDR notation. [use_cases: network]

Input parameters:

- `cidr` (string, required): IPv4 CIDR notation (e.g. "192.168.1.0/24")

### `network.check_ip_in_range` (~176 tokens)

Check IP In Range

[network] 指定IPv4が複数CIDRレンジに含まれるかをビット演算で判定。calc_cidrでレンジ情報取得→check_ip_in_rangeでIP判定の連携が可能。セキュリティグループルール検証・VPC設計支援向け / Checks whether an IPv4 address falls within one or more CIDR blocks using bit-mask arithmetic. [use_cases: network]

Input parameters:

- `ip` (string, required): IPv4 address to check (e.g. "192.168.1.100")
- `ranges` (string, required): Comma-separated CIDR notations, max 100 (e.g. "192.168.1.0/24,10.0.0.0/8")

### `network.check_domain_format` (~191 tokens)

Check Domain Format

[network] ドメイン名のRFC 1035/1123形式検証（ラベル・TLD・IDN/Punycode）。DNS解決は行わない（解決はnetwork.dns_lookup）。tldは末尾ラベルのみ（PSL非対応） / Validates whether a string is a well-formed domain name per RFC 1035/1123 (label length, character set, IDN/Punycode). Format validation only — does NOT perform DNS resolution (use network.dns_lookup for that). TLD field is the raw last label, not a public-suffix-list-aware effective TLD. [use_cases: validation, network]

Input parameters:

- `domain` (string, required): Domain name to validate (e.g. "example.com", "例え.com"). Format check only — does not resolve DNS (use network.dns_lookup for lookup).

### `network.http_fetch` (~207 tokens)

HTTP Fetch

[network] 外部URLへHTTPリクエストを送信しレスポンスを返す。GET/POST/PUT/PATCH/DELETE/HEAD対応。認証付きAPI呼び出し向け。Starterプラン以上が必要 / Send an HTTP request to an external URL and return the response. Supports GET/POST/PUT/PATCH/DELETE/HEAD methods with custom headers and body. Useful for calling authenticated APIs on behalf of the agent. Requires Starter plan or above. [use_cases: network]

Input parameters:

- `body` (string): Optional request body for POST/PUT/PATCH
- `headers` (object): Optional request headers (Host, X-Forwarded-* are stripped)
- `method` (string): HTTP method (default: GET)
- `timeout_ms` (integer): Request timeout in milliseconds (default: 10000, max: 30000)
- `url` (string, required): Request URL (http:// or https:// only)

### `data.query_json` (~120 tokens)

Query JSON

[data] JSONPathクエリでJSONデータから値を抽出（フィルタ式対応・最大1MB） / Extracts values from JSON using JSONPath, including filter expressions. [use_cases: json_validation, data_extraction]

Input parameters:

- `json` (required): クエリ対象のJSONデータ（オブジェクト・配列・最大1MB）
- `query` (string, required): JSONPathクエリ（例: $.users[*].name / $.items[?(@.price < 100)].name）

### `data.calc_stats` (~104 tokens)

Calc Stats

[data] 数値配列の統計値を計算（平均・中央値・最頻値・分散・標準偏差・パーセンタイル・最大1000要素） / Computes mean, median, standard deviation, percentiles, and related stats for numeric arrays. [use_cases: data_extraction, analytics]

Input parameters:

- `values` (array, required): 統計計算する数値配列（最大1000要素）

### `data.validate_format` (~98 tokens)

Validate Format

[data] IPv4/IPv6/CIDR・メール・URL・クレジットカード・日本の電話番号の形式検証 / Validates IPv4/IPv6/CIDR, email, URL, credit card, and Japanese phone formats. [use_cases: validation, schema_check]

Input parameters:

- `type` (string, required): バリデーションの種類
- `value` (string, required): バリデーションする値

### `convert.data_size` (~86 tokens)

Convert Data Size

[convert] データサイズ単位変換（SI 1000進 / binary 1024進を一括換算） / Converts data sizes between SI (1000-based) and binary (1024-based) units. [use_cases: data_conversion]

Input parameters:

- `from` (string, required): Source data size unit
- `value` (number, required): Numeric value to convert

### `convert.format_number` (~215 tokens)

Format Number

[convert] 数値のロケール別フォーマット（通貨・パーセント・単位付き） / Formats numbers with locale, currency, percent, and precision options. [use_cases: data_conversion]

Input parameters:

- `currency` (string): 通貨コード（style=currencyの場合必須 例: JPY / USD / EUR）
- `locale` (string): ロケール（例: ja-JP / en-US / de-DE・デフォルト: en-US）
- `maximum_fraction_digits` (integer): 小数点以下の最大桁数（0〜20）
- `minimum_fraction_digits` (integer): 小数点以下の最小桁数（0〜20）
- `style` (string): フォーマットスタイル（デフォルト: decimal）
- `unit` (string): 単位（style=unitの場合必須 例: kilometer / celsius / byte）
- `value` (number, required): フォーマットする数値

### `text.convert_japanese` (~119 tokens)

Convert Japanese

[text] 日本語テキストをひらがな・カタカナ・ローマ字に変換（kuromoji） / Converts Japanese text between hiragana, katakana, and half-width forms. [use_cases: text_processing]

Input parameters:

- `text` (string, required): 変換する日本語テキスト（最大1000文字）
- `to` (string, required): 変換先（hiragana: ひらがな / katakana: カタカナ / romaji: ローマ字）

### `text.generate_slug` (~153 tokens)

Generate Slug

[text] テキスト（日本語含む）をURLセーフなスラッグに変換（ヘボン式ローマ字化 + 正規化） / Generates URL-safe slugs from text with locale-aware rules. [use_cases: text_processing]

Input parameters:

- `locale` (string): Locale (default: ja). Use ja to romanize Japanese first; en or other skips romanization.
- `lowercase` (boolean): Lowercase the slug (default: true)
- `max_length` (integer): Maximum slug length (1–200)
- `separator` (string): Word separator (default: -)
- `text` (string, required): Text to slugify (max 1000 characters)

### `datetime.get_current_datetime` (~116 tokens)

Get Current Datetime

[datetime] 指定タイムゾーンの現在日時（ISO / Unix / 曜日・デフォルト: Asia/Tokyo） / Returns the current date and time in a given IANA timezone for accurate "today" calculations. [use_cases: timezone, scheduling]

Input parameters:

- `format` (string): 返却フォーマット（デフォルト: all）
- `timezone` (string): IANAタイムゾーン（例: Asia/Tokyo・デフォルト: Asia/Tokyo）

### `datetime.calc_datetime_diff` (~144 tokens)

Calc Datetime Diff

[datetime] 2つの日時の差分を年・月・週・日・時間・分・秒で計算（デフォルト: Asia/Tokyo） / Calculates the difference between two datetimes in multiple units. [use_cases: timezone, scheduling]

Input parameters:

- `from` (string, required): 開始日時（ISO8601形式 例: 2026-01-01T00:00:00Z）
- `timezone` (string): タイムゾーン（例: Asia/Tokyo・デフォルト: Asia/Tokyo）
- `to` (string, required): 終了日時（ISO8601形式）

### `datetime.format_relative_time` (~202 tokens)

Format Relative Time

[datetime] 絶対日時を「3時間前」「昨日」等の相対・自然言語表現に変換（7日超は絶対日付） / Formats an absolute datetime as locale-aware relative phrases like "3 hours ago", with absolute-date fallback beyond 7 days. [use_cases: timezone, scheduling, localization]

Input parameters:

- `datetime` (string, required): 対象日時（ISO 8601）
- `locale` (string): BCP 47 ロケール（デフォルト: ja-JP）
- `reference` (string): 基準日時（ISO 8601・省略時はサーバー現在時刻）
- `style` (string): 相対表現のスタイル（デフォルト: long）
- `timezone` (string): IANA タイムゾーン（7日超フォールバック時の日付表示用・デフォルト: Asia/Tokyo）

### `datetime.convert_japanese_era` (~199 tokens)

Convert Japanese Era

[datetime] 和暦↔西暦変換（明治・大正・昭和・平成・令和、元号境界日対応） / Converts between Japanese era names and Gregorian dates. [use_cases: calendar, localization]

Input parameters:

- `date` (string): Gregorian date YYYY-MM-DD. Required for to_japanese_era
- `day` (integer): Day (1-31, default 1). Used for to_gregorian
- `direction` (string, required): Conversion direction
- `era` (string): Era name (reiwa/heisei/showa/taisho/meiji or Japanese labels). Required for to_gregorian
- `era_year` (integer): Era year (1-based; year 1 = 元年). Required for to_gregorian
- `month` (integer): Month (1-12, default 1). Used for to_gregorian

### `datetime.convert_iso_duration` (~247 tokens)

Convert ISO Duration

[datetime] ISO 8601 Duration のパース・フォーマット（PT1H30M ↔ 成分・秒数） / Converts ISO 8601 duration strings to and from human-readable forms. [use_cases: scheduling, data_conversion]

Input parameters:

- `days` (number): Days component. Used when direction is format
- `direction` (string, required): Conversion direction
- `duration` (string): ISO 8601 duration string. Required when direction is parse
- `hours` (number): Hours component. Used when direction is format
- `include_months_years` (boolean): Allow calendar-dependent years/months (approximate: 1 year = 365 days, 1 month = 30 days). Default false
- `minutes` (number): Minutes component. Used when direction is format
- `months` (number): Months component (calendar-dependent). Used when direction is format with include_months_years
- `seconds` (number): Seconds component (decimals allowed, max 3 places). Used when direction is format
- `years` (number): Years component (calendar-dependent). Used when direction is format with include_months_years

### `text.convert_string_case` (~115 tokens)

Convert String Case

[text] 文字列ケース変換（camel / snake / kebab / pascal 等・入力ケース自動検出・to=all 対応） / Converts string case (camelCase, snake_case, kebab-case, etc.). [use_cases: text_processing]

Input parameters:

- `text` (string, required): 変換する文字列（例: helloWorld / hello_world / hello-world）
- `to` (string, required): 変換先ケース。"all"で全ケースを一括取得。

### `text.generate_random_string` (~118 tokens)

Generate Random String

[text] 暗号学的に安全なランダム文字列生成（文字セット・長さ・個数指定） / Generates random strings with configurable charset and length. [use_cases: text_processing]

Input parameters:

- `charset` (string): 文字セット（デフォルト: alphanumeric）
- `count` (integer): 生成する個数（デフォルト: 1・最大: 10）
- `length` (integer): 文字数（デフォルト: 16・最大: 128）

### `data.validate_json` (~128 tokens)

Validate JSON

[data] JSON文字列のパース・JSON Schema（Draft-07）検証・構文エラーの自動修復 / Parses JSON and optionally validates against Draft-07 JSON Schema with optional auto-repair. [use_cases: json_validation, schema_check]

Input parameters:

- `auto_repair` (boolean): 構文エラーの自動修復（デフォルト false）
- `json_str` (string, required): 検証するJSON文字列
- `schema` (object): JSON Schemaオブジェクト（省略時はパースのみ）

### `data.validate_schema` (~142 tokens)

Validate Schema

[data] パース済みJSONデータの本格的なJSON Schema（Draft-07）検証（format/pattern/min-max等・schema_path付きエラー）。data.validate_json（構文チェック+自動修復）とは別。2段階: validate_json→validate_schema / Validate Schema. Structured data validation, query, and transformation. [use_cases: data_processing]

Input parameters:

- `all_errors` (boolean): Return all validation errors (default false: first error only)
- `data` (required): JSON data to validate (any JSON value; null is allowed)
- `schema` (object, required): JSON Schema object (Draft-07)

### `data.validate_all` (~170 tokens)

Validate All

[data] JSON/UUID/Luhn/バーコードを type で指定して統合検証（個別 validate_* の代替） / Unified validation for JSON, UUID, Luhn checksum, and barcodes (ISBN/JAN/UPC). Specify type and value; pass type-specific options (schema, format, type hint). Can replace validate_json, validate_uuid, validate_luhn, and validate_barcode. Consolidates per-type validators into one interface; individual tools remain available for now. [use_cases: data_processing]

Input parameters:

- `options` (object): Type-specific options (schema, auto_repair, format, type/barcode hint)
- `type` (string, required): Validation target: json, uuid, luhn, or barcode
- `value` (string, required): Value to validate

### `data.merge_json` (~176 tokens)

Merge JSON

[data] JSONオブジェクトのdeep mergeまたはRFC 6902 JSON Patch適用（変更キー一覧付き） / Deep-merges two JSON objects or applies RFC 6902 JSON Patch operations. [use_cases: json_validation, workflow]

Input parameters:

- `array_strategy` (string): How to merge arrays in merge mode (default replace)
- `base` (required): Base JSON value (object for merge mode; any JSON for patch mode)
- `mode` (string, required): merge: deep merge two objects; patch: RFC 6902 JSON Patch
- `null_overwrites` (boolean): Whether patch null overwrites base values (default true)
- `operations` (array): RFC 6902 operations (required when mode is patch)
- `patch` (object): Object to merge into base (required when mode is merge)

### `data.diff_arrays` (~137 tokens)

Diff Arrays

[data] 2つの配列を比較し added / removed / unchanged を返す（プリミティブ配列・key指定オブジェクト配列・順序無視比較） / Compares two arrays and returns added, removed, and unchanged elements. [use_cases: data_extraction, workflow]

Input parameters:

- `after` (array, required): Target array to compare to
- `before` (array, required): Source array to compare from
- `ignore_order` (boolean): Compare as sets ignoring element order (default false)
- `key` (string): Object key field for ID-based comparison (omit for primitive arrays)

### `data.sort_json` (~161 tokens)

Sort JSON

[data] JSONオブジェクト配列を複数キー・昇順/降順混在で安定ソート（ドット記法のネストキー対応・欠損/null/型不一致は末尾） / Sorts an array of JSON objects by one or more keys, with independent ascending/descending order per key. Uses a stable sort, so LLMs no longer need to hand-write multi-key comparator logic (a common source of bugs). [use_cases: data_processing, workflow]

Input parameters:

- `items` (array, required): Array of JSON objects to sort (max 1000 elements)
- `sort_keys` (array, required): Sort keys evaluated in order; earlier keys take precedence, later keys break ties

### `convert.transform_image` (~229 tokens)

Transform Image

[convert] URLから画像を取得しWebP/JPEG/PNG/AVIF変換・リサイズ・圧縮（MCPはimageコンテンツ返却。return: metadata_onlyでコンテキスト節約可） / Fetches an image from a URL and converts format, resizes, or compresses it to Base64. [use_cases: media, data_conversion]

Input parameters:

- `fit` (string): Resize fit mode when width and/or height are set (default: inside)
- `format` (string): Output format (default: webp)
- `height` (integer): Target height in pixels
- `quality` (integer): Compression quality for webp/jpeg/avif (default: 80)
- `return` (string): full: 画像データを含む完全なレスポンス（デフォルト）。metadata_only: サイズ・形式等のメタデータのみ（コンテキスト節約）
- `url` (string, required): HTTPS URL of the source image
- `width` (integer): Target width in pixels

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/com-thousand-api-thousand-api/mcp#diagnostics

## Score history

- 2026-08-03: 69
- 2026-08-02: 69

## Links

- Remote endpoint: https://mcp.thousand-api.com/mcp
- Authorisation metadata: https://mcp.thousand-api.com/.well-known/oauth-protected-resource/mcp
- Repository: https://github.com/Redwing-Software/thousand-api
- Website: https://www.thousand-api.com/
- Changelog RSS feed: https://verifymcp.io/servers/com-thousand-api-thousand-api/mcp/changelog.xml
- Changelog JSON feed: https://verifymcp.io/servers/com-thousand-api-thousand-api/mcp/changelog.json
- HTML version of this page: https://verifymcp.io/servers/com-thousand-api-thousand-api/mcp
