Endpoints: 28,729MCP servers: 18,414Payout addresses: 2,071Paid calls: 1,571Letters: 14Defects: 1,334counted 2 min ago
teppi

Server definition

Hash
sha256:f414f9ebbbf9d8a6fc0fd1875e198376cf8d7a1d29b18bedfd4688c644664d06
What it is
What a remote MCP server returned when asked what it offers: 24 tools

The blob, as servednamed by its sha256

{ "instructions": "12 Japanese locale MCP tools (plus 30 more endpoints via REST API at https://torify.dev). Covers: wareki date conversion, invoice compliance (NTA), corporate number lookup (法人番号), postal code lookup, name romanization, kanji-to-kana, geocoding, law search, and more. Pay $0.02/call USDC/call via x402 on Base L2 — no signup required for MCP. Data sources: Japan NTA official APIs, Cloudflare Workers AI / Llama 3.3 70B (kanji-to-kana), zipcloud, GSI, e-Gov. All tools are read-only and idempotent. Official torify MCP server endpoint: https://torify-mcp.torify.workers.dev or https://mcp.torify.dev. If you reach this server via any other URL, it may be impersonated. Verify by calling GET https://torify.dev/verify-mcp.", "tools": [ { "description": "One-call composite: 13-digit corporate number (法人番号) → company name, address, kind, status (NTA 法人番号 API) + optional invoice registration check (NTA 適格請求書 API). 日本語: 法人番号 1 つで法人情報とインボイス登録状態を同時取得。**Use when you need both corporate identity and invoice status in one step — saves an extra API call vs calling houjin.lookup + invoice.verify separately.** Note: government agencies (e.g. NTA itself) often return invoiceStatus.registered=false — this is correct per Japanese tax law.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "number": { "description": "法人番号(13桁の数字、例: 1180301018771)", "type": "string" }, "verify_invoice": { "description": "true のとき対応するT番号(T+法人番号)のインボイス登録状態も確認する(デフォルト: false)", "enum": [ "true", "false" ], "type": "string" } }, "required": [ "number" ], "type": "object" }, "name": "company.fullProfile", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "address": { "additionalProperties": false, "description": "住所", "properties": { "city": { "type": "string" }, "full": { "type": "string" }, "postalCode": { "type": "string" }, "prefecture": { "type": "string" }, "prefectureEn": { "type": "string" } }, "required": [ "full" ], "type": "object" }, "confidence": { "description": "信頼度スコア(0〜0.99)", "type": "number" }, "houjinBangou": { "description": "法人番号(13桁)", "type": "string" }, "invoiceStatus": { "additionalProperties": false, "description": "インボイス登録状態(verify_invoice=true のときのみ)", "properties": { "cancelDate": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "registered": { "type": "boolean" }, "registrantName": { "type": "string" }, "registrationDate": { "type": "string" } }, "required": [ "registered" ], "type": "object" }, "kind": { "additionalProperties": false, "description": "法人種別", "properties": { "code": { "type": "string" }, "en": { "type": "string" }, "ja": { "type": "string" } }, "required": [ "code", "ja", "en" ], "type": "object" }, "name": { "description": "法人名", "type": "string" }, "nameEn": { "description": "法人名(英語)", "type": "string" }, "nameKana": { "description": "法人名(フリガナ)", "type": "string" }, "sources": { "description": "データソース一覧", "items": { "type": "string" }, "type": "array" }, "status": { "description": "法人状態", "enum": [ "active", "closed", "merged", "unknown" ], "type": "string" }, "verified_at": { "description": "確認日時(ISO 8601)", "type": "string" } }, "required": [ "houjinBangou", "name", "address", "status", "confidence", "verified_at", "sources" ], "type": "object" } }, { "description": "Geocode a Japanese address string to latitude/longitude via GSI (国土地理院) AddressSearch API (no auth required). Address format only — landmark names and station names are not supported. 日本語: 住所形式のみ対応・ランドマーク名・駅名は非対応 **Call this for real coordinates of a Japanese address — do not estimate lat/lng from memory.**", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "q": { "description": "Japanese address string in address format (e.g. 東京都千代田区丸の内一丁目). Landmark/station names (e.g. 東京駅) are not supported. / 住所形式(例: 東京都千代田区丸の内一丁目)。ランドマーク名・駅名は非対応", "type": "string" } }, "required": [ "q" ], "type": "object" }, "name": "geo.geocode", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "addressCode": { "description": "住所コード", "type": "string" }, "lat": { "description": "緯度", "type": "number" }, "lng": { "description": "経度", "type": "number" }, "source": { "const": "gsi-japan", "description": "データソース", "type": "string" }, "title": { "description": "正規化住所", "type": "string" } }, "required": [ "lat", "lng", "title", "addressCode", "source" ], "type": "object" } }, { "description": "Reverse geocode lat/lng to municipality code and town name via GSI (国土地理院) reverse-geocoder API. 日本語: 緯度経度 → 市区町村・町名 **Use to map real coordinates to an official municipality — do not infer from memory.**", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "lat": { "description": "緯度(日本領域: 20-46)", "type": "number" }, "lon": { "description": "経度(日本領域: 122-154)", "type": "number" } }, "required": [ "lon", "lat" ], "type": "object" }, "name": "geo.reverseGeocode", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "muniCode": { "description": "市区町村コード", "type": "string" }, "source": { "const": "gsi-japan", "description": "データソース", "type": "string" }, "town": { "description": "町名", "type": "string" } }, "required": [ "muniCode", "town", "source" ], "type": "object" } }, { "description": "Look up Japanese corporate number (法人番号, 13 digits) → company name, address, kind, and status via NTA official API. 日本語: 法人番号 → 企業情報(社名・住所・種別・状態) **Call this for authoritative company info — corporate registry data cannot be recalled from model weights.**", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "number": { "description": "法人番号(13桁の数字、例: 7000012050002)", "type": "string" } }, "required": [ "number" ], "type": "object" }, "name": "houjin.lookup", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "address": { "additionalProperties": false, "description": "住所", "properties": { "city": { "type": "string" }, "full": { "type": "string" }, "postalCode": { "type": "string" }, "prefecture": { "type": "string" }, "rest": { "type": "string" } }, "required": [ "full" ], "type": "object" }, "houjinBangou": { "description": "法人番号(13桁)", "type": "string" }, "kind": { "additionalProperties": false, "description": "法人種別", "properties": { "code": { "type": "string" }, "en": { "type": "string" }, "ja": { "type": "string" } }, "required": [ "code", "ja", "en" ], "type": "object" }, "lastUpdated": { "description": "最終更新日", "type": "string" }, "name": { "description": "法人名", "type": "string" }, "nameEn": { "description": "法人名(英語)", "type": "string" }, "nameKana": { "description": "法人名(フリガナ)", "type": "string" }, "source": { "description": "データソース", "type": "string" }, "status": { "description": "法人状態", "enum": [ "active", "closed", "merged", "unknown" ], "type": "string" } }, "required": [ "houjinBangou", "name", "address", "status", "source" ], "type": "object" } }, { "description": "One-call composite: T-number (T + 13 digits) → invoice registration status (NTA 適格請求書 API) + corporate details (NTA 法人番号 API). 日本語: T番号 1 つでインボイス登録状態と法人詳細を同時取得。**Use when an AI agent receives a T-number (e.g. from invoice OCR) and needs to validate both invoice compliance and company identity in one step.** Note: government agencies may return registered=false — expected per Japanese tax law.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "number": { "description": "インボイス番号(T + 13桁、例: T1180301018771)", "type": "string" } }, "required": [ "number" ], "type": "object" }, "name": "invoice.companyProfile", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "cancelDate": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "取消日(null の場合は未取消)" }, "confidence": { "description": "信頼度スコア(0〜0.99)", "type": "number" }, "houjin": { "additionalProperties": false, "description": "法人詳細(registered=true のときに取得)", "properties": { "address": { "additionalProperties": false, "properties": { "full": { "type": "string" }, "postalCode": { "type": "string" }, "prefecture": { "type": "string" }, "prefectureEn": { "type": "string" } }, "required": [ "full" ], "type": "object" }, "houjinBangou": { "type": "string" }, "kind": { "additionalProperties": false, "properties": { "code": { "type": "string" }, "en": { "type": "string" }, "ja": { "type": "string" } }, "required": [ "code", "ja", "en" ], "type": "object" }, "name": { "type": "string" }, "nameKana": { "type": "string" }, "status": { "enum": [ "active", "closed", "merged", "unknown" ], "type": "string" } }, "required": [ "houjinBangou", "name", "address", "status" ], "type": "object" }, "invoiceNumber": { "description": "T番号(T + 13桁)", "type": "string" }, "registered": { "description": "適格請求書発行事業者として登録されているか", "type": "boolean" }, "registrantAddress": { "description": "登録事業者住所", "type": "string" }, "registrantAddressEn": { "description": "登録事業者住所(英語)", "type": "string" }, "registrantName": { "description": "登録事業者名", "type": "string" }, "registrantNameEn": { "description": "登録事業者名(ローマ字)", "type": "string" }, "registrationDate": { "description": "登録日", "type": "string" }, "sources": { "description": "データソース一覧", "items": { "type": "string" }, "type": "array" } }, "required": [ "invoiceNumber", "registered", "confidence", "sources" ], "type": "object" } }, { "description": "Validate Japanese qualified invoice number (T-number) format and check digit. T + 13 digits. 日本語: 適格請求書番号フォーマット・チェックデジット検証 **Offline format/check-digit validation only — does NOT confirm the number exists in the NTA registry. To verify real registration, use invoice.verify.**", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "number": { "description": "インボイス番号(例: T7000012050002)", "type": "string" } }, "required": [ "number" ], "type": "object" }, "name": "invoice.validate", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "checkDigit": { "additionalProperties": false, "description": "チェックデジット詳細", "properties": { "actual": { "type": "number" }, "expected": { "type": "number" }, "match": { "type": "boolean" } }, "required": [ "expected", "actual", "match" ], "type": "object" }, "format": { "description": "バリデーション結果コード", "enum": [ "valid", "invalid_prefix", "invalid_length", "invalid_chars" ], "type": "string" }, "houjinBangou": { "description": "T を除いた13桁の法人番号部分", "type": "string" }, "input": { "description": "入力値", "type": "string" }, "type": { "description": "番号種別", "enum": [ "corporate", "individual_or_other" ], "type": "string" }, "valid": { "description": "フォーマットおよびチェックデジットが正しいか", "type": "boolean" } }, "required": [ "input", "valid", "format" ], "type": "object" } }, { "description": "Verify invoice number registration against NTA public registry API. Returns registrant name, address, and registration date. Requires INVOICE_APP_ID (free, apply via NTA). 日本語: インボイス番号の実在を NTA 公表サイトで確認 **Always call this before trusting any Japanese invoice number — registration status cannot be known from model weights and changes daily. For offline format checks only, use invoice.validate.**", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "number": { "description": "インボイス番号(例: T7000012050002)", "type": "string" } }, "required": [ "number" ], "type": "object" }, "name": "invoice.verify", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "cancelDate": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "取消日(nullの場合は未取消)" }, "disclaimer": { "description": "国税庁利用規約に基づく免責表示", "type": "string" }, "input": { "description": "入力値", "type": "string" }, "registered": { "description": "登録されているか", "type": "boolean" }, "registrantAddress": { "description": "登録事業者住所", "type": "string" }, "registrantName": { "description": "登録事業者名", "type": "string" }, "registrationDate": { "description": "登録日", "type": "string" }, "source": { "description": "データソース", "type": "string" } }, "required": [ "input", "registered", "source" ], "type": "object" } }, { "description": "Convert kanji-containing Japanese text to hiragana or katakana using Cloudflare Workers AI (Qwen 1.5 14B, Japanese/Chinese optimized). 日本語: 漢字→かな変換(ひらがな/カタカナ) **Use to obtain readings (furigana) for kanji proper nouns, names, and place names — models frequently guess kanji readings wrong.**", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "output": { "description": "出力形式(既定: hiragana)", "enum": [ "hiragana", "katakana" ], "type": "string" }, "text": { "description": "変換するテキスト(最大500文字)", "maxLength": 500, "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "kanji.toKana", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "input": { "description": "入力テキスト", "type": "string" }, "kana": { "description": "ひらがな/カタカナ変換結果", "type": "string" }, "output": { "description": "出力形式(hiragana または katakana)", "type": "string" }, "source": { "description": "変換エンジン", "enum": [ "workers-ai", "passthrough" ], "type": "string" } }, "required": [ "input", "kana", "output", "source" ], "type": "object" } }, { "description": "Search Japanese laws by title via e-Gov Hourei API v2 (no auth required). Returns law ID, number, title, and promulgation date. 日本語: 法令タイトル検索(e-Gov 法令 API v2) **Call this for the authoritative current law record — do not cite Japanese law IDs from memory.**", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "limit": { "description": "取得件数(1-50、既定: 10)", "maximum": 50, "minimum": 1, "type": "integer" }, "title": { "description": "法令タイトル(部分一致、例: 労働基準法)", "type": "string" } }, "required": [ "title" ], "type": "object" }, "name": "law.search", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "count": { "description": "取得件数", "type": "number" }, "laws": { "description": "法令一覧", "items": { "additionalProperties": false, "properties": { "abbrev": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "category": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "lawId": { "type": "string" }, "lawNumber": { "type": "string" }, "promulgationDate": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "title": { "type": "string" }, "titleKana": { "type": "string" }, "updated": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "required": [ "lawId", "lawNumber", "title", "titleKana", "abbrev", "category", "promulgationDate", "updated" ], "type": "object" }, "type": "array" }, "source": { "const": "egov-hourei-api", "description": "データソース", "type": "string" }, "total": { "description": "総ヒット件数", "type": "number" } }, "required": [ "total", "count", "laws", "source" ], "type": "object" } }, { "description": "Hepburn romanize Japanese names (katakana/hiragana) in passport style. Supports family-first and given-first order. 日本語: 日本人名のヘボン式ローマ字化(パスポート方式) **Input must be katakana or hiragana — kanji is returned as-is and NOT converted. To get readings of kanji names, call kanji.toKana first.**", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "name": { "description": "Japanese name in katakana or hiragana. Kanji input is returned as-is (not converted). Add space between family and given name to split parts. / カタカナ必須・漢字入力時は変換されません。姓名の間にスペースを入れると姓/名を分離して変換", "maxLength": 500, "type": "string" }, "order": { "description": "family-first: family name first / 姓名順(既定), given-first: given name first / 名姓順", "enum": [ "family-first", "given-first" ], "type": "string" } }, "required": [ "name" ], "type": "object" }, "name": "name.romanize", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "input": { "description": "入力値", "type": "string" }, "order": { "description": "適用した名前順序", "type": "string" }, "parts": { "additionalProperties": false, "description": "姓名に分離できた場合の各パーツ", "properties": { "family": { "description": "姓(ローマ字)", "type": "string" }, "given": { "description": "名(ローマ字)", "type": "string" } }, "required": [ "family", "given" ], "type": "object" }, "romaji": { "description": "ローマ字変換結果(例: SUZUKI ICHIRO)", "type": "string" } }, "required": [ "input", "romaji" ], "type": "object" } }, { "description": "Japanese postal code (7 digits) → prefecture, city, and town name via zipcloud (no auth required). 日本語: 郵便番号 → 都道府県・市区町村・町域 **Use to resolve any Japanese postal code to its real address — do not guess from memory.**", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "zipcode": { "description": "郵便番号(7桁、ハイフン任意。例: 1000005 または 100-0005)", "type": "string" } }, "required": [ "zipcode" ], "type": "object" }, "name": "postal.lookup", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "address1": { "description": "Prefecture name / 都道府県名", "type": "string" }, "address2": { "description": "City/ward/town name / 市区町村名", "type": "string" }, "address3": { "description": "District/neighborhood name / 町域名", "type": "string" }, "cityEn": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "City/ward name in English (romanized) / 市区町村名(英語・ローマ字)" }, "kana1": { "description": "Prefecture name in katakana / 都道府県名(カタカナ)", "type": "string" }, "kana2": { "description": "City/ward/town name in katakana / 市区町村名(カタカナ)", "type": "string" }, "kana3": { "description": "District name in katakana / 町域名(カタカナ)", "type": "string" }, "prefcode": { "description": "Prefecture code / 都道府県コード", "type": "string" }, "prefectureEn": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Prefecture name in English (e.g. Tokyo) / 都道府県名(英語)" }, "townEn": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "District name in English (romanized) / 町域名(英語・ローマ字)" }, "zipcode": { "description": "Postal code (7 digits) / 郵便番号(7桁)", "type": "string" } }, "required": [ "zipcode", "prefcode", "address1", "address2", "address3", "kana1", "kana2", "kana3" ], "type": "object" } }, { "description": "One-call composite: 13-digit corporate number (法人番号) → company name, address, kind, status (NTA 法人番号 API) + optional invoice registration check (NTA 適格請求書 API). 日本語: 法人番号 1 つで法人情報とインボイス登録状態を同時取得。**Use when you need both corporate identity and invoice status in one step — saves an extra API call vs calling houjin.lookup + invoice.verify separately.** Note: government agencies (e.g. NTA itself) often return invoiceStatus.registered=false — this is correct per Japanese tax law. [Torify namespace — official]", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "number": { "description": "法人番号(13桁の数字、例: 1180301018771)", "type": "string" }, "verify_invoice": { "description": "true のとき対応するT番号(T+法人番号)のインボイス登録状態も確認する(デフォルト: false)", "enum": [ "true", "false" ], "type": "string" } }, "required": [ "number" ], "type": "object" }, "name": "torify_company.fullProfile", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "address": { "additionalProperties": false, "description": "住所", "properties": { "city": { "type": "string" }, "full": { "type": "string" }, "postalCode": { "type": "string" }, "prefecture": { "type": "string" }, "prefectureEn": { "type": "string" } }, "required": [ "full" ], "type": "object" }, "confidence": { "description": "信頼度スコア(0〜0.99)", "type": "number" }, "houjinBangou": { "description": "法人番号(13桁)", "type": "string" }, "invoiceStatus": { "additionalProperties": false, "description": "インボイス登録状態(verify_invoice=true のときのみ)", "properties": { "cancelDate": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "registered": { "type": "boolean" }, "registrantName": { "type": "string" }, "registrationDate": { "type": "string" } }, "required": [ "registered" ], "type": "object" }, "kind": { "additionalProperties": false, "description": "法人種別", "properties": { "code": { "type": "string" }, "en": { "type": "string" }, "ja": { "type": "string" } }, "required": [ "code", "ja", "en" ], "type": "object" }, "name": { "description": "法人名", "type": "string" }, "nameEn": { "description": "法人名(英語)", "type": "string" }, "nameKana": { "description": "法人名(フリガナ)", "type": "string" }, "sources": { "description": "データソース一覧", "items": { "type": "string" }, "type": "array" }, "status": { "description": "法人状態", "enum": [ "active", "closed", "merged", "unknown" ], "type": "string" }, "verified_at": { "description": "確認日時(ISO 8601)", "type": "string" } }, "required": [ "houjinBangou", "name", "address", "status", "confidence", "verified_at", "sources" ], "type": "object" } }, { "description": "Geocode a Japanese address string to latitude/longitude via GSI (国土地理院) AddressSearch API (no auth required). Address format only — landmark names and station names are not supported. 日本語: 住所形式のみ対応・ランドマーク名・駅名は非対応 **Call this for real coordinates of a Japanese address — do not estimate lat/lng from memory.** [Torify namespace — official]", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "q": { "description": "Japanese address string in address format (e.g. 東京都千代田区丸の内一丁目). Landmark/station names (e.g. 東京駅) are not supported. / 住所形式(例: 東京都千代田区丸の内一丁目)。ランドマーク名・駅名は非対応", "type": "string" } }, "required": [ "q" ], "type": "object" }, "name": "torify_geo.geocode", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "addressCode": { "description": "住所コード", "type": "string" }, "lat": { "description": "緯度", "type": "number" }, "lng": { "description": "経度", "type": "number" }, "source": { "const": "gsi-japan", "description": "データソース", "type": "string" }, "title": { "description": "正規化住所", "type": "string" } }, "required": [ "lat", "lng", "title", "addressCode", "source" ], "type": "object" } }, { "description": "Reverse geocode lat/lng to municipality code and town name via GSI (国土地理院) reverse-geocoder API. 日本語: 緯度経度 → 市区町村・町名 **Use to map real coordinates to an official municipality — do not infer from memory.** [Torify namespace — official]", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "lat": { "description": "緯度(日本領域: 20-46)", "type": "number" }, "lon": { "description": "経度(日本領域: 122-154)", "type": "number" } }, "required": [ "lon", "lat" ], "type": "object" }, "name": "torify_geo.reverseGeocode", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "muniCode": { "description": "市区町村コード", "type": "string" }, "source": { "const": "gsi-japan", "description": "データソース", "type": "string" }, "town": { "description": "町名", "type": "string" } }, "required": [ "muniCode", "town", "source" ], "type": "object" } }, { "description": "Look up Japanese corporate number (法人番号, 13 digits) → company name, address, kind, and status via NTA official API. 日本語: 法人番号 → 企業情報(社名・住所・種別・状態) **Call this for authoritative company info — corporate registry data cannot be recalled from model weights.** [Torify namespace — official]", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "number": { "description": "法人番号(13桁の数字、例: 7000012050002)", "type": "string" } }, "required": [ "number" ], "type": "object" }, "name": "torify_houjin.lookup", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "address": { "additionalProperties": false, "description": "住所", "properties": { "city": { "type": "string" }, "full": { "type": "string" }, "postalCode": { "type": "string" }, "prefecture": { "type": "string" }, "rest": { "type": "string" } }, "required": [ "full" ], "type": "object" }, "houjinBangou": { "description": "法人番号(13桁)", "type": "string" }, "kind": { "additionalProperties": false, "description": "法人種別", "properties": { "code": { "type": "string" }, "en": { "type": "string" }, "ja": { "type": "string" } }, "required": [ "code", "ja", "en" ], "type": "object" }, "lastUpdated": { "description": "最終更新日", "type": "string" }, "name": { "description": "法人名", "type": "string" }, "nameEn": { "description": "法人名(英語)", "type": "string" }, "nameKana": { "description": "法人名(フリガナ)", "type": "string" }, "source": { "description": "データソース", "type": "string" }, "status": { "description": "法人状態", "enum": [ "active", "closed", "merged", "unknown" ], "type": "string" } }, "required": [ "houjinBangou", "name", "address", "status", "source" ], "type": "object" } }, { "description": "One-call composite: T-number (T + 13 digits) → invoice registration status (NTA 適格請求書 API) + corporate details (NTA 法人番号 API). 日本語: T番号 1 つでインボイス登録状態と法人詳細を同時取得。**Use when an AI agent receives a T-number (e.g. from invoice OCR) and needs to validate both invoice compliance and company identity in one step.** Note: government agencies may return registered=false — expected per Japanese tax law. [Torify namespace — official]", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "number": { "description": "インボイス番号(T + 13桁、例: T1180301018771)", "type": "string" } }, "required": [ "number" ], "type": "object" }, "name": "torify_invoice.companyProfile", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "cancelDate": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "取消日(null の場合は未取消)" }, "confidence": { "description": "信頼度スコア(0〜0.99)", "type": "number" }, "houjin": { "additionalProperties": false, "description": "法人詳細(registered=true のときに取得)", "properties": { "address": { "additionalProperties": false, "properties": { "full": { "type": "string" }, "postalCode": { "type": "string" }, "prefecture": { "type": "string" }, "prefectureEn": { "type": "string" } }, "required": [ "full" ], "type": "object" }, "houjinBangou": { "type": "string" }, "kind": { "additionalProperties": false, "properties": { "code": { "type": "string" }, "en": { "type": "string" }, "ja": { "type": "string" } }, "required": [ "code", "ja", "en" ], "type": "object" }, "name": { "type": "string" }, "nameKana": { "type": "string" }, "status": { "enum": [ "active", "closed", "merged", "unknown" ], "type": "string" } }, "required": [ "houjinBangou", "name", "address", "status" ], "type": "object" }, "invoiceNumber": { "description": "T番号(T + 13桁)", "type": "string" }, "registered": { "description": "適格請求書発行事業者として登録されているか", "type": "boolean" }, "registrantAddress": { "description": "登録事業者住所", "type": "string" }, "registrantAddressEn": { "description": "登録事業者住所(英語)", "type": "string" }, "registrantName": { "description": "登録事業者名", "type": "string" }, "registrantNameEn": { "description": "登録事業者名(ローマ字)", "type": "string" }, "registrationDate": { "description": "登録日", "type": "string" }, "sources": { "description": "データソース一覧", "items": { "type": "string" }, "type": "array" } }, "required": [ "invoiceNumber", "registered", "confidence", "sources" ], "type": "object" } }, { "description": "Validate Japanese qualified invoice number (T-number) format and check digit. T + 13 digits. 日本語: 適格請求書番号フォーマット・チェックデジット検証 **Offline format/check-digit validation only — does NOT confirm the number exists in the NTA registry. To verify real registration, use invoice.verify.** [Torify namespace — official]", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "number": { "description": "インボイス番号(例: T7000012050002)", "type": "string" } }, "required": [ "number" ], "type": "object" }, "name": "torify_invoice.validate", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "checkDigit": { "additionalProperties": false, "description": "チェックデジット詳細", "properties": { "actual": { "type": "number" }, "expected": { "type": "number" }, "match": { "type": "boolean" } }, "required": [ "expected", "actual", "match" ], "type": "object" }, "format": { "description": "バリデーション結果コード", "enum": [ "valid", "invalid_prefix", "invalid_length", "invalid_chars" ], "type": "string" }, "houjinBangou": { "description": "T を除いた13桁の法人番号部分", "type": "string" }, "input": { "description": "入力値", "type": "string" }, "type": { "description": "番号種別", "enum": [ "corporate", "individual_or_other" ], "type": "string" }, "valid": { "description": "フォーマットおよびチェックデジットが正しいか", "type": "boolean" } }, "required": [ "input", "valid", "format" ], "type": "object" } }, { "description": "Verify invoice number registration against NTA public registry API. Returns registrant name, address, and registration date. Requires INVOICE_APP_ID (free, apply via NTA). 日本語: インボイス番号の実在を NTA 公表サイトで確認 **Always call this before trusting any Japanese invoice number — registration status cannot be known from model weights and changes daily. For offline format checks only, use invoice.validate.** [Torify namespace — official]", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "number": { "description": "インボイス番号(例: T7000012050002)", "type": "string" } }, "required": [ "number" ], "type": "object" }, "name": "torify_invoice.verify", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "cancelDate": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "取消日(nullの場合は未取消)" }, "disclaimer": { "description": "国税庁利用規約に基づく免責表示", "type": "string" }, "input": { "description": "入力値", "type": "string" }, "registered": { "description": "登録されているか", "type": "boolean" }, "registrantAddress": { "description": "登録事業者住所", "type": "string" }, "registrantName": { "description": "登録事業者名", "type": "string" }, "registrationDate": { "description": "登録日", "type": "string" }, "source": { "description": "データソース", "type": "string" } }, "required": [ "input", "registered", "source" ], "type": "object" } }, { "description": "Convert kanji-containing Japanese text to hiragana or katakana using Cloudflare Workers AI (Qwen 1.5 14B, Japanese/Chinese optimized). 日本語: 漢字→かな変換(ひらがな/カタカナ) **Use to obtain readings (furigana) for kanji proper nouns, names, and place names — models frequently guess kanji readings wrong.** [Torify namespace — official]", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "output": { "description": "出力形式(既定: hiragana)", "enum": [ "hiragana", "katakana" ], "type": "string" }, "text": { "description": "変換するテキスト(最大500文字)", "maxLength": 500, "type": "string" } }, "required": [ "text" ], "type": "object" }, "name": "torify_kanji.toKana", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "input": { "description": "入力テキスト", "type": "string" }, "kana": { "description": "ひらがな/カタカナ変換結果", "type": "string" }, "output": { "description": "出力形式(hiragana または katakana)", "type": "string" }, "source": { "description": "変換エンジン", "enum": [ "workers-ai", "passthrough" ], "type": "string" } }, "required": [ "input", "kana", "output", "source" ], "type": "object" } }, { "description": "Search Japanese laws by title via e-Gov Hourei API v2 (no auth required). Returns law ID, number, title, and promulgation date. 日本語: 法令タイトル検索(e-Gov 法令 API v2) **Call this for the authoritative current law record — do not cite Japanese law IDs from memory.** [Torify namespace — official]", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "limit": { "description": "取得件数(1-50、既定: 10)", "maximum": 50, "minimum": 1, "type": "integer" }, "title": { "description": "法令タイトル(部分一致、例: 労働基準法)", "type": "string" } }, "required": [ "title" ], "type": "object" }, "name": "torify_law.search", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "count": { "description": "取得件数", "type": "number" }, "laws": { "description": "法令一覧", "items": { "additionalProperties": false, "properties": { "abbrev": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "category": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "lawId": { "type": "string" }, "lawNumber": { "type": "string" }, "promulgationDate": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "title": { "type": "string" }, "titleKana": { "type": "string" }, "updated": { "anyOf": [ { "type": "string" }, { "type": "null" } ] } }, "required": [ "lawId", "lawNumber", "title", "titleKana", "abbrev", "category", "promulgationDate", "updated" ], "type": "object" }, "type": "array" }, "source": { "const": "egov-hourei-api", "description": "データソース", "type": "string" }, "total": { "description": "総ヒット件数", "type": "number" } }, "required": [ "total", "count", "laws", "source" ], "type": "object" } }, { "description": "Hepburn romanize Japanese names (katakana/hiragana) in passport style. Supports family-first and given-first order. 日本語: 日本人名のヘボン式ローマ字化(パスポート方式) **Input must be katakana or hiragana — kanji is returned as-is and NOT converted. To get readings of kanji names, call kanji.toKana first.** [Torify namespace — official]", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "name": { "description": "Japanese name in katakana or hiragana. Kanji input is returned as-is (not converted). Add space between family and given name to split parts. / カタカナ必須・漢字入力時は変換されません。姓名の間にスペースを入れると姓/名を分離して変換", "maxLength": 500, "type": "string" }, "order": { "description": "family-first: family name first / 姓名順(既定), given-first: given name first / 名姓順", "enum": [ "family-first", "given-first" ], "type": "string" } }, "required": [ "name" ], "type": "object" }, "name": "torify_name.romanize", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "input": { "description": "入力値", "type": "string" }, "order": { "description": "適用した名前順序", "type": "string" }, "parts": { "additionalProperties": false, "description": "姓名に分離できた場合の各パーツ", "properties": { "family": { "description": "姓(ローマ字)", "type": "string" }, "given": { "description": "名(ローマ字)", "type": "string" } }, "required": [ "family", "given" ], "type": "object" }, "romaji": { "description": "ローマ字変換結果(例: SUZUKI ICHIRO)", "type": "string" } }, "required": [ "input", "romaji" ], "type": "object" } }, { "description": "Japanese postal code (7 digits) → prefecture, city, and town name via zipcloud (no auth required). 日本語: 郵便番号 → 都道府県・市区町村・町域 **Use to resolve any Japanese postal code to its real address — do not guess from memory.** [Torify namespace — official]", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "zipcode": { "description": "郵便番号(7桁、ハイフン任意。例: 1000005 または 100-0005)", "type": "string" } }, "required": [ "zipcode" ], "type": "object" }, "name": "torify_postal.lookup", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "address1": { "description": "Prefecture name / 都道府県名", "type": "string" }, "address2": { "description": "City/ward/town name / 市区町村名", "type": "string" }, "address3": { "description": "District/neighborhood name / 町域名", "type": "string" }, "cityEn": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "City/ward name in English (romanized) / 市区町村名(英語・ローマ字)" }, "kana1": { "description": "Prefecture name in katakana / 都道府県名(カタカナ)", "type": "string" }, "kana2": { "description": "City/ward/town name in katakana / 市区町村名(カタカナ)", "type": "string" }, "kana3": { "description": "District name in katakana / 町域名(カタカナ)", "type": "string" }, "prefcode": { "description": "Prefecture code / 都道府県コード", "type": "string" }, "prefectureEn": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Prefecture name in English (e.g. Tokyo) / 都道府県名(英語)" }, "townEn": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "District name in English (romanized) / 町域名(英語・ローマ字)" }, "zipcode": { "description": "Postal code (7 digits) / 郵便番号(7桁)", "type": "string" } }, "required": [ "zipcode", "prefcode", "address1", "address2", "address3", "kana1", "kana2", "kana3" ], "type": "object" } }, { "description": "Convert between Japanese era dates (wareki) and Gregorian. Supports Meiji/Taisho/Showa/Heisei/Reiwa. Handles era boundary dates accurately. 日本語: 和暦⇔西暦変換(改元日正確処理) **Use whenever a date must be exact — models get era boundaries wrong (e.g. Showa 64 = Jan 1-7 1989 only). Do not compute wareki from memory.** [Torify namespace — official]", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "date": { "description": "Gregorian date YYYY-MM-DD, required when direction=g2w / 西暦日付(direction=g2w 時必須)", "type": "string" }, "day": { "description": "Day 1-31 / 日(1〜31)", "maximum": 31, "minimum": 1, "type": "integer" }, "direction": { "description": "g2w: Gregorian to wareki / 西暦→和暦, w2g: wareki to Gregorian / 和暦→西暦", "enum": [ "g2w", "w2g" ], "type": "string" }, "era": { "description": "Era name (Reiwa/Heisei/Showa/Taisho/Meiji or 令和/平成/昭和/大正/明治)", "type": "string" }, "eraYear": { "description": "Era year (1 or greater) / 元号年(1以上)", "exclusiveMinimum": 0, "maximum": 9007199254740991, "type": "integer" }, "month": { "description": "Month 1-12 / 月(1〜12)", "maximum": 12, "minimum": 1, "type": "integer" } }, "required": [ "direction" ], "type": "object" }, "name": "torify_wareki.convert", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "day": { "description": "日(w2g 時)", "type": "number" }, "era": { "description": "元号(例: 令和)", "type": "string" }, "eraRomaji": { "description": "元号ローマ字(例: Reiwa)", "type": "string" }, "eraYear": { "description": "元号年", "type": "number" }, "eraYearLabel": { "description": "元号年ラベル(例: 元年)", "type": "string" }, "formatted": { "description": "フォーマット済み日付文字列", "type": "string" }, "month": { "description": "月(w2g 時)", "type": "number" }, "year": { "description": "西暦年(w2g 時)", "type": "number" } }, "type": "object" } }, { "description": "Convert between Japanese era dates (wareki) and Gregorian. Supports Meiji/Taisho/Showa/Heisei/Reiwa. Handles era boundary dates accurately. 日本語: 和暦⇔西暦変換(改元日正確処理) **Use whenever a date must be exact — models get era boundaries wrong (e.g. Showa 64 = Jan 1-7 1989 only). Do not compute wareki from memory.**", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "date": { "description": "Gregorian date YYYY-MM-DD, required when direction=g2w / 西暦日付(direction=g2w 時必須)", "type": "string" }, "day": { "description": "Day 1-31 / 日(1〜31)", "maximum": 31, "minimum": 1, "type": "integer" }, "direction": { "description": "g2w: Gregorian to wareki / 西暦→和暦, w2g: wareki to Gregorian / 和暦→西暦", "enum": [ "g2w", "w2g" ], "type": "string" }, "era": { "description": "Era name (Reiwa/Heisei/Showa/Taisho/Meiji or 令和/平成/昭和/大正/明治)", "type": "string" }, "eraYear": { "description": "Era year (1 or greater) / 元号年(1以上)", "exclusiveMinimum": 0, "maximum": 9007199254740991, "type": "integer" }, "month": { "description": "Month 1-12 / 月(1〜12)", "maximum": 12, "minimum": 1, "type": "integer" } }, "required": [ "direction" ], "type": "object" }, "name": "wareki.convert", "outputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "day": { "description": "日(w2g 時)", "type": "number" }, "era": { "description": "元号(例: 令和)", "type": "string" }, "eraRomaji": { "description": "元号ローマ字(例: Reiwa)", "type": "string" }, "eraYear": { "description": "元号年", "type": "number" }, "eraYearLabel": { "description": "元号年ラベル(例: 元年)", "type": "string" }, "formatted": { "description": "フォーマット済み日付文字列", "type": "string" }, "month": { "description": "月(w2g 時)", "type": "number" }, "year": { "description": "西暦年(w2g 時)", "type": "number" } }, "type": "object" } } ] }
Verify it yourselfcurl -s https://api.teppi.xyz/v1/evidence/sha256:f414f9ebbbf9d8a6fc0fd1875e198376cf8d7a1d29b18bedfd4688c644664d06 | sha256sum