firmfind について
firmfindは、公式の企業登記から会社を探し、記録を取得するCompanyDataサービス向けクライアントです。詳細な検索条件、IDによる全記録のエクスポート、都市候補の検索に対応し、サービスの応答を加工せず返します。
主な機能
- 01詳細な条件で会社を検索
- 02IDで会社の全記録をエクスポート
- 03地名から都市候補を検索
- 04サービス応答をそのまま返却
活用シーン
- 01地域や業種で会社を検索
- 02指定した連絡先情報を持つ記録の特定
- 03会社の完全な登記記録の取得
- 04検索前に曖昧な都市名を確認
MCP 対応
会社検索、全記録のエクスポート、都市検索というCompanyData連携の3つのツールをMCPクライアントに公開します。リクエストにはCompanyData APIキーが必要です。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
3掲載時のツール一覧 · 1 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| ID | string | いいえ | この呼び出しの識別子。 |
| page | integer | いいえ | ページ分割された結果のページ番号(任意)。 |
| string | いいえ | メールアドレス。 | |
| search | string | いいえ | 検索テキストフィルター(省略可)。 |
| website | string | いいえ | ウェブサイトの URL(任意)。 |
| cityName | string | いいえ | この呼び出しの市区町村名。 |
| hasEmail | boolean | いいえ | メールアドレスを含むレコードに絞り込みます(任意)。 |
| hasPhone | boolean | いいえ | 電話番号を含むレコードに絞り込みます(任意)。 |
| pageSize | integer | いいえ | この呼び出しのページサイズ。 |
| hasCEOName | boolean | いいえ | CEO の氏名を含むレコードに絞り込みます(任意)。 |
| hasWebsite | boolean | いいえ | ウェブサイトを含むレコードに絞り込みます(任意)。 |
| nationalId | string | いいえ | 国民 ID の値(任意)。 |
| postalCode | string | いいえ | この呼び出しの郵便番号。 |
| regionName | string | いいえ | この呼び出しの地域名。 |
| sic4Digits | string | いいえ | この呼び出しの SIC 4 桁コード。 |
| statusCode | string | いいえ | この呼び出しのステータスコード。 |
| streetName | string | いいえ | この呼び出しの通り名。 |
| countryCode | string | いいえ | この呼び出しの国コード。 |
| countryName | string | いいえ | この呼び出しの国名。 |
| legalStatus | string | いいえ | この呼び出しの法的ステータス。 |
| phoneNumber | string | いいえ | 電話番号(任意)。 |
| provinceName | string | いいえ | この呼び出しの州名。 |
| hasNationalID | boolean | いいえ | 国民 ID を持つレコードに絞り込みます(任意)。 |
| strictCountry | boolean | いいえ | 国の厳密な一致を必須にします(任意)。 |
| annualSalesMax | integer | いいえ | この呼び出しの年間売上高の上限。 |
| annualSalesMin | integer | いいえ | この呼び出しの年間売上高の下限。 |
| subsidiaryCode | string | いいえ | この呼び出しの子会社コード。 |
| employeesHereMax | integer | いいえ | この呼び出しの従業員数(事業所)の上限。 |
| employeesHereMin | integer | いいえ | この呼び出しの従業員数(事業所)の下限。 |
| foundingYearsMax | integer | いいえ | この呼び出しの設立年数の上限。 |
| foundingYearsMin | integer | いいえ | この呼び出しの設立年数の下限。 |
| hasMarketability | boolean | いいえ | 市場性のあるレコードに絞り込みます(任意)。 |
| importExportCode | string | いいえ | この呼び出しの輸出入コード。 |
| employeesTotalMax | integer | いいえ | この呼び出しの従業員総数の上限。 |
| employeesTotalMin | integer | いいえ | この呼び出しの従業員総数の下限。 |
| postalCodeIntegerMax | integer | いいえ | この呼び出しでの郵便番号の整数の最大値。 |
| postalCodeIntegerMin | integer | いいえ | この呼び出しでの郵便番号の整数の最小値。 |
| worldwideHeadquarterID | string | いいえ | この呼び出しでのグローバル本社識別子。 |
詳細
firmfind
公式の企業登記簿から企業を検索し、目的の企業の完全な記録を取得します。firmfind は CompanyData サービス用の小さなクライアントです。登記簿を名前、所在地、業種コード、企業規模、設立年数、およびメールアドレス、電話番号、ウェブサイト、または CEO の氏名が記録されているかどうかで検索できます。ID を指定して特定企業の完全なエントリーをエクスポートしたり、うろ覚えの地名を市区町村の候補に変換してから検索に使ったりすることもできます。
サービスから返された内容は、送信されたとおりにそのまま返されます。途中で切り詰めたり、名前を変更したり、要約したりすることはありません。
設定
COMPANYDATA_API_KEY(必須)— リクエストごとにx-api-keyヘッダーとして送信されます。設定されていない場合、すべてのツールはCOMPANYDATA_API_KEY is not setで失敗し、リクエストは送信されません。COMPANYDATA_API_BASE_URL(任意)— API のベース URL です。デフォルトはhttps://app.companydata.comです。
ツール
company_search— 企業を名前、所在地、業種、規模、連絡先の条件で検索します。38 個の引数はすべて任意です。ページ指定(page、pageSize)、識別情報とテキストのフィルター(ID、search、sic4Digits、importExportCode、legalStatus、statusCode、subsidiaryCode、countryCode、provinceName、cityName、streetName、regionName、countryName、postalCode、phoneNumber、email、worldwideHeadquarterID、nationalId、website)、数値範囲(postalCodeIntegerMin/Max、employeesHereMin/Max、employeesTotalMin/Max、annualSalesMin/Max、foundingYearsMin/Max)、および有無のフラグ(hasEmail、hasMarketability、hasPhone、hasWebsite、hasNationalID、hasCEOName、strictCountry)を指定できます。実際に設定した引数だけが送信されます。ブール値はtrue/falseとして送信され、範囲の境界値にはemployeesHere[min]のように API の角括弧付きワイヤー名が使われます。company_enrich— CompanyData のID(必須)を指定して、1 社の完全な記録をエクスポートします。この呼び出しでは、常にエクスポートエンドポイントに記録のエクスポート形式を要求します。field_lookup— 地名のsearch(必須)に対する市区町村の候補を返します。countriesで任意に絞り込み、limitで件数を制限できます。
上流から 2xx 以外の応答が返された場合は companydata error: HTTP <status> で失敗し、API に到達できない場合は companydata unreachable で失敗します。
エンドポイントの根拠
ツールのインターフェース、キーの環境変数とヘッダー、デフォルトのベース URL、エンリッチメントの動作は、元のパッケージの README に基づいています。パラメーター名、型、ワイヤー名は公式の OpenAPI ドキュメントに基づいています。
GET <base>/api/company/search?<params>—company_search。GET <base>/api/company/export?ID=<id>&export=true—company_enrich。GET <base>/api/cities?<params>—field_lookup。
CLI
各ツールは、1 つの JSON 引数文字列を受け取るサブコマンドです。
npx @reneturcios/firmfind company_search '{"search":"bakery","countryCode":"NL","hasEmail":true}'
npx @reneturcios/firmfind company_enrich '{"ID":"abc-123"}'
npx @reneturcios/firmfind field_lookup '{"search":"amster","countries":"NL","limit":5}'
npx @reneturcios/firmfind --version
出力はツールの結果テキスト(成功時は上流のレスポンス本文)です。終了コード:成功時は 0、実行時エラー(キーの未設定や上流の失敗を含む)時は 1、使用方法のエラー時は 2 です。
MCP サーバー
npx -y @reneturcios/firmfind mcp
MCP クライアントの設定:
{
"mcpServers": {
"firmfind": {
"command": "npx",
"args": ["-y", "@reneturcios/firmfind", "mcp"],
"env": {
"COMPANYDATA_API_KEY": "<your key>"
}
}
}
}
Docker
docker run -i ghcr.io/cloudcorprecords/firmfind
docker run --rm ghcr.io/cloudcorprecords/firmfind company_search '{"search":"bakery"}'
開発
npm install
npm run build # tsc -> dist/
npm test # tsx --test test/*.test.ts (fake fetch only, no network)
npm run dev # run the CLI from source
ライセンス
MIT — Copyright (c) 2026 Rene Turcios
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。