India API について
India API は、開発者や AI クライアント向けのインド関連データ・処理 API 集です。統一された JSON 形式で、API キーなしに利用でき、地域情報から文書処理、言語・音声まで 44 種類の API を提供します。
主な機能
- 01インドのデータ・処理 API 44 種
- 02統一された JSON レスポンス形式
- 03OCR・翻訳・音声処理
- 04PDF・画像・請求書の生成
- 05API キー不要
活用シーン
- 01インドの郵便番号・銀行・祝日の検索
- 02GST 請求書 PDF の生成
- 03インド言語のスキャン文書処理
- 04エージェントへのインドデータ提供
MCP 対応
認証不要の Streamable HTTP MCP サーバーを https://api.dharun.dev/mcp で提供します。各ツールは対応する REST エンドポイントと同じ結果を返し、AI クライアントから API を利用できます。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://api.dharun.dev/mcpclaude mcp add --transport http dharunashokkumar-india-api https://api.dharun.dev/mcp{"mcpServers":{"dharunashokkumar-india-api":{"type":"http","url":"https://api.dharun.dev/mcp"}}}Cursor で開く{"servers":{"dharunashokkumar-india-api":{"type":"http","url":"https://api.dharun.dev/mcp"}}}VS Code で開く{"mcpServers":{"dharunashokkumar-india-api":{"type":"http","url":"https://api.dharun.dev/mcp"}}}{"mcpServers":{"dharunashokkumar-india-api":{"serverUrl":"https://api.dharun.dev/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
80| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| symbol | string | はい | ティッカー、取引所付きティッカー、Yahoo シンボル、ISIN、または以前のティッカー。 |
| exchange | enum | いいえ | 取引所を指定します。取引所なしのティッカーでは NSE が優先されます。nse | bse |
詳細
India API
インドのデータを扱う、無料のオープンソース API です。 郵便番号、IFSC と銀行支店、GSTIN と PAN の確認、銀行・市場の休日、RTO コード、企業ロゴ、UPI QR コード、lakh と crore の単位での数値表記、PDF 形式の GST 請求書、インドの言語に対応した OCR、PDF・画像ツール、翻訳、音声テキスト変換、テキスト読み上げなど、統一された JSON 形式で 44 種類の API を提供します。API キーやサインアップは不要で、CORS はオープンです。AI アシスタントも利用できる MCP サーバーを備えています。
ドキュメント:api.dharun.dev · API リファレンス · ガイド · AI での利用 · OpenAPI · llms.txt
curl https://api.dharun.dev/v1/pincode/637001
{
"data": { "pincode": "637001", "district": "Namakkal", "stateCode": "TN", "state": "Tamil Nadu", "offices": [ ... ] },
"meta": { "source": { "name": "...", "licence": "...", "attribution": "..." } }
}
API
各名称は専用ページへのリンクです。すべてのパラメーター、実際のレスポンス、curl、JavaScript、Python のコードを確認できます。
| API | 例 | 得られる情報 |
|---|---|---|
| 企業ロゴ | /v1/logos/TCS, /v1/companies/RELIANCE | NSE または BSE 上場企業の SVG または PNG ロゴ(REIT と InvIT を含む)、セクター、ISIN、時価総額、指数。旧ティッカーも引き続き利用できます |
| 郵便番号 | /v1/pincode/637001, /v1/pincode/near?lat=&lng= | 郵便局、地区、州、座標、地点周辺の郵便番号 |
| IFSC と銀行 | /v1/ifsc/SBIN0000001, /v1/banks?q=gramin | 銀行、支店、住所、MICR、決済システム。銀行名から銀行とそのコードを検索 |
| RTO コード | /v1/rto/TN-28 | 車両登録を扱う運輸局 |
| 祝日 | /v1/holidays/2026?type=market | 銀行、中央政府、株式市場の祝日 |
| 営業日 | /v1/working-days/2026-01-16?calendar=bank&state=TN | 営業日かどうか、次の営業日、指定営業日数後の日付、T+1 決済日。NSE の開場状況 |
| HSN と SAC | /v1/hsn/0902, /v1/hsn?q=tea | 説明と章が付いた関税コード |
| 投資信託 | /v1/mutual-funds/122639 | ファンド名または運用会社による検索と、スキームの最新 NAV |
| 鉄道駅 | /v1/stations/MAS | 駅名、管区、州 |
| 空港 | /v1/airports/MAA | IATA および ICAO コード、都市、座標 |
| 電話番号 | /v1/phone/9500112345 | 有効かどうか、携帯電話か固定電話か、元の通信事業者とサークル |
| 選挙区 | /v1/constituency?pincode=637001 | 場所に対応する州議会選挙区と連邦議会選挙区 |
| パンチャンガム | /v1/panchang/2026-01-14?pincode=600001 | ティティ、ナクシャトラ、ヨーガ、カラナ、日の出、ラーフ・カーラム、タミル暦の月 |
| 太陽と月 | /v1/sun-moon/today?pincode=600001 | 日の出、日の入り、薄明、月の出、月相、照度 |
| 人工衛星の通過 | /v1/sat-pass?sat=ISS&pincode=600001 | ISS またはアマチュア無線衛星が上空を通過する時刻と、目視できるかどうか |
| HF 伝搬 | /v1/propagation | 太陽電波フラックス、K 指数と A 指数、NOAA スケール、各バンドの日中と夜間の評価 |
| ティルックラル | /v1/thirukkural/1 | 二行詩、音訳、2 種類の英訳。検索とランダム表示 |
| 音訳 | /v1/transliterate?to=tamil&text=..., /v1/transliterate/suggest?lang=ta&text=vanakkam | 9 種類のインド系文字体系、ISO 15919、IAST、ASCII 間の変換。モデルによるローマ字入力から 21 種類のインド系文字体系への変換 |
| 翻訳 | /v1/translate?from=en&to=ta&text=... | IndicTrans2 による英語と 22 種類のインド言語間の翻訳 |
| 埋め込みと再ランキング | /v1/embed?text=..., POST /v1/rerank | セマンティック検索向けの多言語ベクトルと、検索結果を並べ替える再ランキング機能 |
| タミル語のレガシーエンコーディング | /v1/tamil-font/convert?from=tscii&text=... | TSCII テキストと Unicode の相互変換 |
| IP 検索 | /v1/ip/8.8.8.8, /v1/ip | アドレスまたはリクエスト元の国、都市、ネットワーク |
| メールアドレスチェック | /v1/email/[email protected] | 構文、一時利用ドメインかどうか、ドメインがメールを受信できるかどうか |
| DNS チェック | /v1/dns/example.com?type=MX | 複数のパブリックリゾルバーから見たレコード |
| インドからのトレースルート | /v1/mtr/example.com | インド国内のサーバーからの MTR 形式の経路。各ホップのネットワーク、パケット損失、レイテンシ |
| Whois | /v1/whois/example.co.in, /v1/whois/AS55836 | ドメインのレジストラ、日付、ステータス、ネームサーバー。RDAP 経由で取得する、IP ネットワークまたは AS 番号の所有者と不正利用に関する連絡先 |
| TLS チェック | /v1/tls/example.com | 証明書の有効性、証明書チェーン、残り日数、TLS バージョン、脆弱な暗号スイートを問題のリストとして表示 |
| IPv6 チェック | /v1/ipv6/example.com | サイト、ネームサーバー、メールサーバーの IPv6 アドレス |
| インドからの HTTP プローブ | /v1/probe?url=https://example.com | インドからの DNS、接続、TLS、最初のバイトまでの所要時間、リダイレクト、ヘッダー、CDN エッジの都市 |
| ウェブサイトのアイコン | /v1/icon/github.com?size=64 | 任意のサイトのアイコンを正方形の PNG またはイニシャル入りタイルで取得 |
| QR、UPI QR、バーコード | /v1/qr?text=hello, /v1/upi-qr?pa=shop@okaxis&am=250, POST /v1/barcode/read | QR コード、UPI 決済用 QR コードとリンク、バーコード。写真からコードを読み取り |
| GST 請求書 | POST /v1/invoice | JSON から GST 税務請求書 PDF を作成。CGST と SGST または IGST、HSN サマリー、金額の英語表記、UPI QR |
| OCR | POST /v1/ocr?lang=eng+tam | 英語と 10 種類のインド言語に対応し、写真、スキャン画像、スキャン PDF からテキストを抽出 |
| 画像ツール | POST /v1/image/convert?format=webp&width=800 | リサイズと変換(WebP、AVIF、HEIC の入力に対応)、背景の削除、知覚ハッシュの生成 |
| PDF ツール | POST /v1/pdf/merge, /pages, /rotate, /compress, /text, /render | PDF の結合、分割、回転、圧縮、テキストの読み取り、ページの描画 |
| Typst から PDF へ | /v1/typst?text=... | インド系文字体系に対応した Typst ドキュメントから PDF または PNG への変換 |
| 音声 | POST /v1/stt, /v1/tts?text=...&voice=hi, POST /v1/audio/denoise | Whisper による音声のテキスト化と字幕作成。ヒンディー語、テルグ語、マラヤーラム語、英語のテキスト読み上げ。ノイズ除去 |
| 画像生成 | /v1/og-image?title=Hello | 10 種類の文字体系に対応したリンクプレビューカードとコード画像 |
| テキストツール | /v1/text/chunk, /redact, /moderate, /tokens, /language | 検索用のチャンク分割、PII と氏名のマスキング、Hinglish と Tanglish に対応したモデレーション、トークン数、言語検出 |
| 正規表現テスター | /v1/regex?pattern=...&text=... | すべての一致箇所とキャプチャグループ、置換結果、パターンの解説 |
| インドのダミーデータ | /v1/fake/companies?count=5 | 書式チェックに合格する PAN と GSTIN を含む、テスト用の人物データと企業データ |
| 数値の英語表記 | /v1/words/1,25,000?lang=ta | ラークとクロールの英語、ヒンディー語、タミル語での表記 |
| 形式チェック | /v1/validate/gstin/27AAPFU0939F1ZV | GSTIN、PAN、IFSC の構造とチェック文字 |
| 州 | /v1/states/TN | 州コード、GST コード、車両登録プレフィックス |
どこでも同じ形式
- すべての JSON レスポンスは
{ "data": ..., "meta": { ... } }です。dataはオブジェクトです。リスト用エンドポイントでは配列となり、meta.total、meta.limit、meta.offsetが追加されます。 meta.sourceには、データセット、そのバージョン、ライセンス、および求められるクレジットが記載されます。- エラーは
{ "error": { "code", "message" } }で、対応する HTTP ステータスが返されます。 - 各クライアントの利用上限は、1 分あたり 600 リクエストです。検索は 1 回分、実際に CPU 処理を行うリクエスト(画像のレンダリング、天文学、ライブ DNS)は 10 回分、ファイルのアップロードは 15 回分、ニューラルネットワークの処理(音声、音声のテキスト変換、翻訳、背景除去、ノイズ除去)は 30 回分として数えられます。埋め込み、再ランキング、モデレーションは CPU 処理として数えられます。
- テキストエンドポイントは
?text=、またはtext/plainか JSON{"text": "..."}の POST ボディを受け付けます。 - 画像エンドポイントは
<img>タグですぐに使える画像そのものを返します。PDF および音声エンドポイントはファイルを返します。 - ファイルエンドポイントでは、ファイルをボディとして POST するか、
multipart/form-dataで送信します。上限は 10 MB です。ファイルはレスポンスの送信後に削除され、保存されません。
AI アシスタントから利用する
1 つの MCP サーバー、1 つのエージェントスキル、1 つの Claude Code プラグインですべての API を利用できます。
# Claude Code: the MCP server
claude mcp add --transport http india-api https://api.dharun.dev/mcp
# Claude Code: the plugin (skill and MCP server together)
/plugin marketplace add dharunashokkumar/api.dharun.dev
/plugin install india-api@dharun-dev
# Any agent that reads Agent Skills (Claude Code, Codex, Copilot, Cursor, Gemini CLI)
npx skills add dharunashokkumar/api.dharun.dev
- MCP サーバー:
https://api.dharun.dev/mcp。Streamable HTTP、ステートレス、認証不要です。各ツールは対応する REST エンドポイントとまったく同じ内容を返します。Claude、ChatGPT、VS Code、Cursor、Windsurf、Gemini CLI、Codex のセットアップについては、api.dharun.dev/ai をご覧ください。MCP Registry ではio.github.dharunashokkumar/india-apiとして登録されています。 - エージェントスキル:
skills/india-api。 - Claude Code プラグイン:
plugins/india-api。マーケットプレイスは.claude-plugin/marketplace.jsonにあります。 - クローラーおよびエージェント向け:
/llms.txt、/llms-full.txt、すべてのページを Markdown 形式で提供(.mdを追加するか、Accept: text/markdownを送信)、/openapi.json、MCP サーバーカード、AI カタログ、API カタログを/.well-known/に用意しています。
スキル、プラグイン、server.json は internal/api/catalog.go のカタログから生成されます。コミット済みのコピーが最新でない場合、テストは失敗します。
ライセンス
- API の呼び出し: アプリにライセンス上の制約はありません。
- コード: GNU Affero General Public License v3.0(AGPL-3.0-only)の下でライセンスされています。改変したコピーをサービスとして他者に提供する場合、その改変内容も提供する必要があります。
- コード例、ガイドのコード、エージェントスキル、Claude Code プラグイン: MIT-0 です。クレジット表記は不要で、どこでも使用できます。
- データ: それぞれのデータソースのライセンス(以下参照)が適用されます。すべてのレスポンスにはクレジットが記載されます。
- サードパーティのコードおよびフォント: サーバーに組み込まれたものには、それぞれのライセンスが適用されます。たとえば、
internal/orbitの SGP4 コードには BSD-2-Clause、Noto フォントには OFL-1.1 が適用されます。リリースバンドルのNOTICESにすべて記載されています。 - 企業ロゴ: 各所有者の商標です。
セキュリティとプライバシー
脆弱性は非公開で報告してください:SECURITY.md をご覧ください。クライアントの IP アドレスがログに記録されることはなく、個人情報を受け取るエンドポイントでは入力値もログに記録されません。全一覧は api.dharun.dev/privacy にあります。各リリースにはビルド来歴のアテステーションが付属します。
gh attestation verify dharun-api-linux-amd64.tar.gz --repo dharunashokkumar/api.dharun.dev
貢献
バグ報告、データの修正、新しい API のリクエストは、Issue で歓迎しています。プルリクエストは受け付けていません。CONTRIBUTING.md をご覧ください。
データソース
| データセット | ソース | ライセンス | レコード数 |
|---|---|---|---|
| 郵便番号 | All India Pincode Directory, Department of Posts (data.gov.in) | Government Open Data License - India | 157,125 の郵便局 |
| IFSC | razorpay/ifsc、Reserve Bank of India と NPCI のリストを基に作成 | 公開者の記載によるとパブリックドメイン | 183,214 の支店 |
| RTO コード | Wikipedia、「List of Regional Transport Office districts in India」 | CC BY-SA 4.0(同じライセンスで共有) | 1,361 件のコード |
| 銀行休業日 | Reserve Bank of India の休業日一覧、34 の地域事務所 | 公式刊行物 | 2026 年 |
| 中央政府の休日 | Department of Personnel and Training の覚書 | 公式刊行物 | 2026 年、2027 年 |
| 市場および清算の休業日 | National Stock Exchange of India | 公式刊行物 | 2026 年 |
| HSN および SAC コード | GST ポータルのコードリスト。品目分類は Customs Tariff Act, 1975 および GST notification 11/2017 に基づく | 法令 | 22,614 件のコード |
| 投資信託の NAV | Association of Mutual Funds in India、NAVAll.txt | AMFI が毎日公開。クレジット表記あり | 14,375 のスキーム |
| 鉄道駅 | Wikipedia、「List of railway stations in India」 | CC BY-SA 4.0(同じライセンスで共有) | 3,975 駅 |
| 空港 | OurAirports | パブリックドメイン | 9,509 空港、うちインド国内は 622 |
| 電話番号シリーズ | Wikipedia、「Mobile telephone numbering in India」 | CC BY-SA 4.0(同じライセンスで共有) | 2,247 シリーズ |
| 選挙区 | DataMeet コミュニティの地図 | 州議会選挙区は CC BY 2.5 India、国会選挙区は CC0 | 州議会選挙区 4,182、国会選挙区 543 |
| ティルックラル | tk120404/thirukkural。G.U. Pope、および Drew と Lazarus による翻訳 | テキストはパブリックドメイン。編集物は Apache-2.0 | 1,330 の二行詩 |
| IP アドレス | DB-IP Lite | CC BY 4.0 | 各サーバーが取得 |
| Whois レジストリ | IANA RDAP ブートストラップレジストリ(RFC 9224)。各登録情報はレジストリからライブで取得 | CC0 1.0 | 1,201 のトップレベルドメイン。毎週更新 |
| 軌道要素 | CelesTrak。Space-Track.org 経由で US Space Force のデータを使用。計算された通過時刻と位置のみを公開 | 明記なし。USSPACECOM によると、クレジット表記があれば再配布可能 | 各サーバーが取得。111 衛星 |
| 宇宙天気 | NOAA Space Weather Prediction Center | パブリックドメイン(米国政府の著作物) | 各サーバーが取得。1 時間ごと |
| 音声 | Piper voices。各音声は独自の録音を使用して学習 | 音声ごとに、パブリックドメイン、CC BY 4.0、IIT Madras Indic TTS ライセンス、または CC BY-NC-SA 4.0(ヒンディー語音声 2 種、非商用) | 各サーバーが取得。10 音声 |
| 背景除去モデル | IS-Net(Qin ら)、rembg による ONNX エクスポート | Apache-2.0 | 各サーバーが取得 |
| 埋め込みとリランキング | multilingual-e5-small(Microsoft)、bge-reranker-v2-m3(BAAI) | MIT、Apache-2.0 | 各サーバーが取得 |
| 音声認識 | whisper.cpp 経由の Whisper small(OpenAI) | MIT | 各サーバーが取得 |
| 翻訳 | IndicTrans2 distilled 200M(AI4Bharat) | MIT | 各サーバーが取得 |
| 音訳モデル | IndicXlit(AI4Bharat)。ここで ONNX に変換 | MIT | 各サーバーが取得 |
| 名前検出 | IndicNER(AI4Bharat)、bert-base-NER | MIT | 各サーバーが取得 |
| モデレーション | Detoxify multilingual(Unitary)、Hinglish toxicity(Darel Philip、L3Cube HingRoBERTa を使用、CC BY 4.0)、Tanglish offensive language(Sean Benhur) | Apache-2.0、MIT、Apache-2.0 | 各サーバーが取得 |
| 使い捨てメールドメイン | disposable-email-domains | CC0 | 9,881 ドメイン |
| ロゴと企業情報 | TradingView から収集 | ロゴは、それぞれが示す企業の商標です | 5,599 社、うち 5,354 社はロゴあり |
正確なバージョン、取得日、チェックサムは data/sources.json | |||
(モデルは internal/dataset/aimodels.go でリビジョンとチェックサムを固定)に記載されています。また、すべてのレスポンスで meta.source にクレジットを記載しています。 | |||
PyTorch の重みのみ、またはフル精度で公開されたモデルは、tools/models/convert.py で ONNX と int8 に変換し、models-2026-10 リリースに添付しました。 |
既知の不足事項:
- 州政府の祝日は含まれていません。銀行休業日は州ごとに異なり、各州独自の通知に基づいています。
- アンダマン・ニコバル諸島の RTO コードはありません。ソース記事に該当するセクションがないためです。
- 郵便番号ファイルは、政府ポータルがスクリプトによるダウンロードを拒否するため、ミラー経由で取得しました。ファイルサイズはポータルに記載されているものと一致しています。
- 鉄道駅のデータはコミュニティのリストに基づいているため、一部の駅が欠落しており、いくつかのコードは古くなっています。
- 州議会選挙区の境界は、6 州で行われた最新の区割り変更より前のものです。該当する場合はレスポンスにその旨を記載しています。
- 電話事業者とサークルは、電話番号系列に最初に割り当てられた情報です。番号ポータビリティを利用した番号も系列は変わらないため、現在の事業者とは異なる場合があります。
- パンチャンの時刻は太陽と月の位置から計算されるため、印刷された暦と1分ほど異なる場合があります。
- タミル語の旧式エンコーディング:現時点では TSCII のみ対応しており、TAB、TAM、Bamini は今後対応予定です。
- ヒンディー語とタミル語の数詞は標準的な表記に従い、タミル語の複合数詞は別々の語として表記しています。修正のご提案を歓迎します。
ローカルで実行する
Go 1.26 以降が必要です。
go run ./cmd/apidata build -resvg none # build every dataset from data/ into seed/
go run ./cmd/api # http://127.0.0.1:8080/
go test ./...
PNG 出力(ロゴと生成画像)のレンダリングには
resvg を使用します。bash tools/fetch-resvg.sh <dir> で固定された Linux ビルドをダウンロードできます。これがなくても他の機能はすべて動作し、PNG リクエストには 501 が返されます。
設定は環境変数で行います。詳しくは
deploy/dharun-api.env.example を参照してください。
ROADMAP.md では、実装済みの機能、予定されている機能、採用されなかった機能を確認できます。
リポジトリの構成
cmd/api the server
cmd/apidata data tool: build, import, refresh, status
internal/api routing, endpoints, the website, MCP, metrics
internal/api/guides the guides, in Markdown
internal/api/templates the Markdown forms of the pages and the skill
internal/dataset one file per dataset: how it is built, fetched and checked
internal/typeset text shaping and the fonts for generated images
internal/panchang almanac calculations
internal/translit transliteration between scripts
internal/tamilfont Tamil 8-bit encodings
internal/textkit chunking, redaction, token counts, language detection
internal/fake test data
internal/words number to words
internal/validate GSTIN, PAN, IFSC and checksum rules
internal/india states and their codes
data/ one folder per dataset (logos included), and sources.json
skills/ the Agent Skill (generated from the catalog)
plugins/ the Claude Code plugin (generated); marketplace in .claude-plugin/
server.json the MCP Registry entry (generated)
deploy/ systemd units, installer, self-updater, monitoring
tools/ release build, smoke test, install test, resvg download, logo scraper
データの鮮度を保つ仕組み
各データセットは、それぞれ独立した読み取り専用 SQLite ファイルです。リリースには、data/ から作成したすべてのデータセットの シード コピーが含まれます。サーバーでは、apidata refresh が独立した短時間実行のジョブとして毎時実行されます。プログラムで取得できる各データセット(IFSC、RTO コード、銀行および市場の休業日、HSN、投資信託の NAV、空港、駅、IP アドレス、使い捨てドメイン)は、更新時期に達するとダウンロードされ、検証後、サーバー独自のデータディレクトリに新しいファイルとして構築されます。API は新しいほうのコピーを配信し、再起動せずに新しいファイルを読み込みます。デプロイではシードが置き換えられますが、サーバー独自のコピーには触れません。
プログラムで取得できないデータセットは手作業で更新し、プッシュ時に同梱します。
go run ./cmd/apidata import pincode -file pincode.csv # CSV saved from data.gov.in
python tools/scrape_logos.py --dry-run # logos: see new, renamed and delisted companies
python tools/scrape_logos.py # then download and write them
go run ./cmd/apidata status # which copy of each dataset is in use
中央政府の祝日は、通常は翌年分が7月に公開される年次覚書に基づき、data/holidays/central/<year>.json に入力します。
リリースとデプロイ
デプロイはプル型です。サーバーがリリースを取得するため、サーバーへの接続は発生しません。
mainにプッシュするたびに CI が実行されます。テスト、シェルの lint、リリース全体のビルド、完全なデータセットを使ったバンドルのスモークテスト、新規の Debian 13 へのインストールを行います。- CI が成功すると、バンドルはリリース
v1.1.<run number>として公開されます。 - サーバーでは、
dharun-api-update.timerが 2 分ごとにチェックします。新しいリリースをダウンロードし、チェックサムを検証して切り替えた後、/healthzをチェックします。新しいバージョンが起動しない場合は元に戻し、そのリリースを失敗として記録します。 - CI の完了後、
Productionワークフローは公開されている/healthzが新しいバージョンを報告するまで(最大 20 分)待機し、その後、スモークテストのルートチェックを稼働中のサイトに対して実行します。インストールされなかったリリースや、ロールバックされたリリースは実行失敗となります。GitHub では、この実行はproductionへのデプロイとして表示されます。
Debian 12 または 13 のマシンやコンテナでの初回セットアップは、root として次のように行います。
tar -C deploy -cz . | ssh <host> 'mkdir -p /root/api-deploy && tar -xz -C /root/api-deploy && sh /root/api-deploy/install.sh'
サーバーは、1 つの静的バイナリと、データセットごとのデータベースファイルで構成されています。非特権ユーザー dharun-api として読み取り専用ファイルシステム上で実行され、アイドル時のメモリ使用量は約 35 MB、負荷が集中しているときは約 150 MB です。アップデーターは root として実行され、install.sh を再実行したときにのみ置き換えられます。ファイアウォールでポート 8080 へのアクセスをプロキシに、ポート 9464 へのアクセスを Prometheus に制限してください。
監視
:9464/metricsでは、API とステータス別のリクエスト数、応答時間、ロゴの検索、メモリ、api_lifetime_requests_total、および各データセットについて使用中のコピー、その経過時間、最後の更新が成功したかどうかを含む Prometheus メトリクスを提供します。:9464/statsでは、累計値を JSON 形式で提供します。これらの値はディスクに保存され、再起動後も維持されます。deploy/monitoring/には、Prometheus のスクレイプジョブ、アラートルール(API の停止、繰り返し失敗する更新、データの陳腐化)、Grafana ダッシュボードがあります。- リクエストごとに、ルート、ステータス、処理時間、検索対象、国、ユーザーエージェントを 1 行の JSON として stdout に出力します。クライアントの IP アドレスは記録されず、形式チェックではチェック対象の値に関する情報は何も記録されません。
商標に関する注意
企業ロゴおよび商標は、それぞれの所有者に帰属します。このプロジェクトは、発見や利便性のためのインデックスです。本番環境で使用する前に、各社のブランドルールをご確認ください。ロゴの削除を希望する場合は、issue を作成してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。