Indic Normalize — hosted on Cloudflare Workers (HTTP + npm stdio) について
Indic Normalizeは、インドのデータ取り込み、KYC、CRMの整理向けのホスト型MCPサーバーです。Indic文字の翻字や、氏名・住所・PINコード・PAN・GSTINの正規化と検証をHTTP経由で提供します。
主な機能
- 01Indic文字とラテン文字の翻字
- 02主要な文字体系の検出
- 03インド人の氏名の正規化
- 04住所解析とPINコード検索
- 05PANとGSTINの検証
活用シーン
- 01複数のIndic文字を含むデータ処理
- 02KYCやCRMの連絡先整理
- 03郵便住所の項目分割
MCP 対応
HTTPのMCP JSON-RPCエンドポイントを通じて、翻字、氏名・住所の正規化、識別番号の検証ツールを提供します。Bearerトークン認証に対応します。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://indic-normalize-mcp.atlasword.workers.dev/mcpclaude mcp add --transport http indic-normalize https://indic-normalize-mcp.atlasword.workers.dev/mcp{"mcpServers":{"indic-normalize":{"type":"http","url":"https://indic-normalize-mcp.atlasword.workers.dev/mcp"}}}Cursor で開く{"servers":{"indic-normalize":{"type":"http","url":"https://indic-normalize-mcp.atlasword.workers.dev/mcp"}}}VS Code で開く{"mcpServers":{"indic-normalize":{"type":"http","url":"https://indic-normalize-mcp.atlasword.workers.dev/mcp"}}}{"mcpServers":{"indic-normalize":{"serverUrl":"https://indic-normalize-mcp.atlasword.workers.dev/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
7| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| text | string | はい | |
| to_script | string | はい | 変換先の文字体系名。 |
| from_script | string | はい | 変換元の文字体系名。 |
詳細
Indic Normalize MCP — インド系文字の音訳 + インド人の名前/住所/PIN/PAN/GSTIN の正規化
インド系文字の音訳、インド人名の正規化、住所解析、PIN/PAN/GSTIN の検証
インドの言語や形式の正規化に対応する、ホスト型 MCP サーバーです。10 種類以上のインド系文字とラテン文字の間で音訳し、主要な文字体系を検出し、インド人の個人名(敬称、綴りのバリエーション)を正規化し、郵便住所を構造化フィールドに解析し、PIN コードから地域を特定し、PAN/GSTIN を埋め込み PAN の抽出とともに検証します。インドのデータ取り込み、KYC、CRM のクリーンアップに取り組む LLM 向けです。
このサーバーは Model Context Protocol に対応しています。Cursor、Claude Desktop、Windsurf、Continue.dev、または @modelcontextprotocol/sdk を使った独自のエージェントなど、MCP 対応クライアントであれば、Bearer トークン認証を使って接続し、ツールを検出して呼び出すことができます。
AI エージェント/LLM 向け
このリポジトリをインデックス化する AI エージェントの場合:
- ライブ MCP エンドポイント:
https://indic-normalize-mcp.atlasword.workers.dev/mcp - トランスポート: HTTP POST、JSON-RPC 2.0
- 認証:
Authorization: Bearer <api_key>(無料利用枠では、IP ごとに月 100 回まで匿名で利用できます) - 検出:
tools/listは完全なスキーマを返します。tools/callはツールを呼び出します。 - ヘルスチェック:
GET https://indic-normalize-mcp.atlasword.workers.dev/health→{ok: true, ts: <unix>} - ステータス:
https://mcp-hub.atlasword.workers.dev/status.json(ポートフォリオの集計)
tools/list リクエストの例:
curl -sS -X POST https://indic-normalize-mcp.atlasword.workers.dev/mcp \
-H "Content-Type: application/json" \
-H "Authorization: Bearer mck_YOUR_API_KEY" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
tools/call の例:
curl -sS -X POST https://indic-normalize-mcp.atlasword.workers.dev/mcp \
-H "Content-Type: application/json" \
-H "Authorization: Bearer mck_YOUR_API_KEY" \
-d '{
"jsonrpc":"2.0","id":2,"method":"tools/call",
"params": { "name": "<tool>", "arguments": { } }
}'
提供するツール
| ツール | 引数 | 説明 |
|---|---|---|
transliterate | text, source_script, target_script | インド系文字とラテン文字の間で音訳します(デーヴァナーガリー文字、ベンガル文字、タミル文字、テルグ文字、カンナダ文字、マラヤーラム文字、グルムキー文字、グジャラート文字、オリヤー文字)。 |
detect_script | text | 主要な文字体系、文字体系ごとの件数、信頼度スコアを検出します。 |
normalize_name | name | インド人の個人名を正規化します。敬称を取り除き、タイトルケースにし、正規名と綴りのバリエーションを返します。 |
normalize_address | address | インドの郵便住所を解析し、行、地域、都市、州(PIN から)、郵便番号に分けます。 |
pincode_to_locality | pincode | 6 桁のインドの PIN コードを地域と該当する可能性の高い州に変換します。 |
state_from_pan | pan | PAN を検証し、事業体の種類(個人/会社/HUF/事務所/信託)を抽出します。 |
gstin_info | gstin | GSTIN を検証し、州コードと州名を返します。 |
Team+ のマークが付いたツールには、Team または Pro のサブスクリプションが必要です。匿名利用者および Free プランの利用者がこれらを呼び出すと、tier_required エラーが返されます。
クイックスタート
最も手軽な方法は、mcp-remote を使って、ホスト型エンドポイントを任意の MCP 対応クライアントに指定することです。
npx -y mcp-remote https://indic-normalize-mcp.atlasword.workers.dev/mcp \
--header "Authorization: Bearer mck_YOUR_API_KEY"
https://indic-normalize-mcp.atlasword.workers.dev/upgrade?tier=solo でキーを取得してください(API キーの取得を参照)。
Cursor へのインストール
~/.cursor/mcp.json に次の内容を追加します。
{
"mcpServers": {
"indic-normalize-mcp": {
"command": "npx",
"args": [
"-y", "mcp-remote",
"https://indic-normalize-mcp.atlasword.workers.dev/mcp",
"--header", "Authorization: Bearer mck_YOUR_API_KEY"
]
}
}
}
その後、Cursor を再起動すると、MCP パネルにツールが表示されます。
Claude Desktop へのインストール
~/Library/Application Support/Claude/claude_desktop_config.json(macOS)または %APPDATA%\Claude\claude_desktop_config.json(Windows)に次の内容を追加します。
{
"mcpServers": {
"indic-normalize-mcp": {
"command": "npx",
"args": [
"-y", "mcp-remote",
"https://indic-normalize-mcp.atlasword.workers.dev/mcp",
"--header", "Authorization: Bearer mck_YOUR_API_KEY"
]
}
}
}
Claude Desktop を再起動します。スラッシュコマンドの MCP メニューにツールが表示されます。
API キーの取得
https://indic-normalize-mcp.atlasword.workers.dev/upgrade?tier=solo(またはtier=team/tier=pro)にアクセスします。- Dodo Payments のホスト型チェックアウトにリダイレクトされます。Dodo が住所を収集し、カード決済を処理し、VAT/GST に対応します。
- 支払い後、Dodo が署名付き Webhook(
subscription.active)を Worker に送信します。Worker がmck_<32 random base64url>を発行し、KV に保存します。 https://indic-normalize-mcp.atlasword.workers.dev/welcome?key=<api_key>に移動します。この URL でキーが表示されるのは一度だけなので、ここでコピーしてください。- キーを Cursor / Claude Desktop の設定に貼り付けます(上記を参照)。
https://indic-normalize-mcp.atlasword.workers.dev/accountでアカウントの確認、ローテーション、エクスポートができます(Bearer 認証)。
無料プラン(登録不要)もあります。匿名ユーザーは IP ごとに月 100 回まで呼び出せます。
エンドポイント
| ルート | 説明 |
|---|---|
POST /mcp | MCP JSON-RPC 2.0 ツールのエンドポイント(メイン API)。有料プランでは Bearer 認証が必要です。 |
GET /health | 稼働確認用エンドポイント — {ok: true, ts}。mcp-hub cron で使用されます。 |
GET / | HTML ランディングページ(OG + favicon + JSON-LD)。 |
| `GET /upgrade?tier=solo | team |
GET /welcome?key=... | チェックアウト後のランディングページ。新たに発行された API キーを表示します。 |
GET /account | Bearer 認証。{apiKey, tier, owner, status, portal_url} を返します。 |
POST /account/rotate | Bearer 認証。新しいキーを発行し、古いキーを無効化します。 |
GET /account/export | Bearer 認証。GDPR データエクスポート — アカウント、使用量カウンター、Dodo の詳細情報を含む JSON。 |
GET /account/team | Bearer 認証(Team 以上)。チームメンバー用サブキーを一覧表示します。 |
POST /account/team/invite | Bearer 認証(Team 以上)。新しいチームメンバー用サブキーを発行します。 |
POST /account/team/revoke | Bearer 認証(Team 以上)。チームメンバー用サブキーを無効化します。 |
GET /team/accept?key=... | サブキーの URL 用チームメンバー登録ランディングページ。 |
POST /webhooks/dodo | Standard-Webhooks 署名付き。Dodo のサブスクリプションおよび支払いのライフサイクルを処理します。 |
GET /favicon.ico | インライン SVG。 |
料金
すべてのプランで月間上限とレート上限は共通です。料金は製品ごとの位置付けを反映しています。
| プラン | 月間呼び出し回数 | レート制限 | チーム席数 |
|---|---|---|---|
| Free | 月 100 回 | 1 分あたり 10 回 | 0 |
| Solo | 月 2,000 回 | 1 分あたり 60 回 | 0 |
| Team | 月 10,000 回 | 1 分あたり 200 回 | 5 |
| Pro | 月 50,000 回 | 1 分あたり 600 回 | 25 |
| プラン | 料金 | 月間呼び出し回数 | チーム席数 |
|---|---|---|---|
| Free | $0 | 100 | 0 |
| Solo | $9/mo | 2,000 | 0 |
| Team | $29/mo | 10,000 | 5 |
| Pro | $79/mo | 50,000 | 25 |
Dodo Payments 経由で請求されます(販売主体 — VAT/GST は Dodo が処理します)。いつでも解約でき、アクセスは支払い済み期間の終了まで有効です。
データソース
- Indic NLP データセット — さまざまなソース — パブリックドメインの Unicode および India-Post の情報源に基づくデータを同梱
このサーバーは、上流のデータソースを利用する薄いトランスポート、認証、キャッシュレイヤーです。各上流の無料プランの利用規約を十分に遵守できるよう、呼び出しごとのレート制限を調整しています。
プライバシーと GDPR
- プライバシーポリシー: https://mcp-hub.atlasword.workers.dev/privacy
- 利用規約: https://mcp-hub.atlasword.workers.dev/terms
- 返金ポリシー: https://mcp-hub.atlasword.workers.dev/refund
- データエクスポート:
GET https://indic-normalize-mcp.atlasword.workers.dev/account/export(Bearer 認証)を使用すると、アカウント、使用量カウンター、Dodo の顧客情報を機械可読な JSON スナップショットとして取得できます。 - 削除: 登録済みのメールアドレスから
[email protected]にメールを送信してください。
保存するのは、メールアドレス、発行した API キー、月間呼び出し回数のカウンター、Dodo のサブスクリプションメタデータのみです。短いキャッシュ TTL を超えて、ツールの引数や上流からの応答をログに記録することはありません。
アーキテクチャ
- ランタイム: Cloudflare Workers(V8 アイソレート、グローバルエッジ)。
- ストレージ: 2 つの Cloudflare KV 名前空間 —
<slug>-cache(上流レスポンスのキャッシュ)と<slug>-usage(API キー、月次カウンター、チーム名簿)。 - 課金: Dodo Payments のライブモード、3 つのサブスクリプション製品(Solo / Team / Pro)、Standard-Webhooks による署名付きライフサイクル。
- オブザーバビリティ: Cloudflare Workers Analytics、mcp-hub status でのポートフォリオ集計。
- ソース: TypeScript、Vitest によるテスト済み、
wrangler deployでデプロイ可能です。このリポジトリのsrc/を参照してください。
ライセンス
MIT — LICENSE を参照してください。
作成者
Prakhar Gupta
- メール:
[email protected] - GitHub:@guptaprakhariitr
ステータス
- ライブステータスページ: https://mcp-hub.atlasword.workers.dev/status
- 機械可読なステータス: https://mcp-hub.atlasword.workers.dev/status.json
- ソースリポジトリ: https://github.com/guptaprakhariitr/indic-normalize-mcp
npm でインストール(ワンライナー)
薄型ランチャーを npm で @insnapsprakhar/indic-normalize-mcp として公開しています。URL を手動でコピー&ペーストする必要はありません。
npx -y @insnapsprakhar/indic-normalize-mcp
または、MCP クライアントに組み込むこともできます。
{
"mcpServers": {
"indic-normalize": {
"command": "npx",
"args": ["-y", "@insnapsprakhar/indic-normalize-mcp"]
}
}
}
npm パッケージはランチャーにすぎません。mcp-remote を呼び出し、ホストされたエンドポイント(https://indic-normalize-mcp.atlasword.workers.dev/mcp)を指定します。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。