angi-mcp について
angi-mcpは、MCPクライアントからAngiの住宅サービス業者を業種と都市で検索し、プロフィール、評価、レビューを確認するMCPサーバーです。ユーザーがログイン中のAngiブラウザータブ経由で公開ページを読み取り、Angiの認証情報は不要です。
主な機能
- 01業種と都市で業者を検索
- 02プロフィール、評価、レビューの表示
- 03評価によるレビューの絞り込み
- 04Angi掲載の業種と都市の検索
- 05アカウントの案件と投稿済みレビューの確認
活用シーン
- 01都市で配管業者などを探す
- 02業者の評価やレビューを比較
- 03業種ごとの掲載都市を調べる
- 04案件や評価待ちのサービスを確認
MCP 対応
MCPクライアントにAngiの検索、業者プロフィール、レビュー、分類情報、アカウント関連ツールを公開します。ページへのリクエストはContextMint Bridge拡張機能を介してAngiタブに転送し、業種・都市の検索にはブラウザーブリッジは不要です。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y @chrischall/angi-mcpANGI_WS_PORTOverride the fetchproxy WebSocket port (default 37149).ANGI_DEBUGSet to 1 for verbose bridge logging to stderr.FETCHPROXY_WS_HOSTBind interface for the fetchproxy concentrator (default 127.0.0.1; a literal IP only). For a hosted child in its own network namespace only — never bind a laptop's concentrator to the network.FETCHPROXY_IDENTITY_DIRAbsolute path where fetchproxy stores its long-term identity keypair (default ~/.fetchproxy/identity/). For a host that runs a separate child per caller, so they share one identity.ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
9掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| city | string | はい | 都市のスラッグ。例:"charlotte"、"rock-hill"。 |
| page | integer | いいえ | 1 始まりのページ番号。1 ページあたり業者 10 件。 |
| state | string | はい | 2 文字の米国州コード。例:"nc"。 |
| trade | string | はい | 業種のスラッグ。例:"plumbing"、"roofing"、"air-duct-cleaning"。 |
| compact | boolean | いいえ | 完全なレコードの代わりに、業者ごとの簡易サマリーを返します。閲覧や順位付けにおすすめです。 |
詳細
angi-mcp
Angi(旧 Angie's List)向けの MCP サーバーです。業種や都市で住宅サービスの専門業者を検索し、評価、プロフィール、レビューを確認できます。
Angi は実際のブラウザーにのみページを表示するため、リクエストは ContextMint Bridge ブラウザー拡張機能(fetchproxy プロトコル)を介して、ユーザー自身の angi.com タブ経由で送信されます。既存のセッションを再利用します。業種と都市の分類は Angi の公開サイトマップから直接読み込むため、ブラウザーは不要です。
Angi アカウントや認証情報は必要ありません。 このサーバーが読み取る情報はすべて公開されています。
このプロジェクトは AI(Claude)によって開発、保守されています。ご自身の判断でご利用ください。
インストール
npm install -g @chrischall/angi-mcp
MCP ホストに登録します。
{
"mcpServers": {
"angi": { "command": "angi-mcp" }
}
}
ContextMint Bridge ブラウザー拡張機能も必要です。angi.com タブを開き、サイトへのアクセスを angi.com に許可してください。ContextMint Bridge のリリースからインストールします。Chrome 版を解凍し、chrome://extensions → Load unpacked から読み込んでください。Safari 版はまだ利用できません(公開ダウンロードのない ContextMint アプリに同梱される予定です)。そのため、現時点では Chrome をご利用ください。初回のリクエスト時に拡張機能がペアリングコードを表示するので、承認してください。その後、信頼関係は保持されます。
ContextMint Bridge は、fetchproxy ブラウザー拡張機能の新しい名前で、同じメンテナーが提供しています。fetchproxy の README(https://github.com/chrischall/fetchproxy#extension)にもこの拡張機能へのリンクがあります。ソースコードは https://github.com/nullnet-app/contextmint-bridge で公開されています。ご自身でビルドするか、リリース ZIP を同梱の .sha256 ファイルと照合してください(shasum -a 256 -c contextmint-bridge-chrome-<version>.zip.sha256)。
angi_healthcheck を実行して、ブリッジが接続されていることを確認してください。
ツール
| ツール | 機能 |
|---|---|
angi_search_pros | 米国の都市にある業種別の専門業者を検索し、評価、レビュー数、営業年数、サービス提供地域、設備情報を表示します。1 ページあたり 10 件です。 |
angi_get_pro | 1 社の専門業者の詳細なプロフィールと評価の内訳を表示します。 |
angi_get_reviews | 専門業者のプロフィールに掲載されたレビューを表示します。評価、本文、報告された費用、日付、カテゴリー、専門業者からの返信を確認できます。評価による絞り込みが可能です。 |
angi_list_trades | Angi が公開しているすべての業種スラッグを表示します(約 312 件)。ブリッジは不要です。 |
angi_list_cities | 業種ごとに、Angi がページを公開している都市を表示します。ブリッジは不要です。 |
angi_healthcheck | ブリッジの接続状態を確認します。 |
サインインが必要なツール(ブラウザーのタブで Angi にサインインする必要があります):
| ツール | 機能 |
|---|---|
angi_get_account | 名前、メールアドレス、未完了および完了したプロジェクトの件数を表示します。 |
angi_list_my_projects | 未完了および完了した Angi のプロジェクトを表示します。 |
angi_list_my_reviews | 投稿したレビューと、評価待ちの専門業者を表示します。 |
検索では自由入力ではなくスラッグを使用します。まずスラッグを確認してください。
angi_list_trades { contains: "duct" } -> "air-duct-cleaning"
angi_list_cities { trade: "plumbing", state: "nc", contains: "char" }
angi_search_pros { trade: "plumbing", state: "nc", city: "charlotte" }
angi_search_pros、angi_get_pro、angi_get_reviews は、デフォルトでは簡潔な view: "compact" 形式で回答します。Angi の全項目を含む約 1KB のレコードを取得するには、view: "full" を指定してください。(従来の compact ブール値も非推奨の別名として引き続き使用できますが、今後のリリースで削除される予定です。)
評価
各専門業者には 2 種類の総合評価があり、意図的に異なる値になっています。
rating(averageRatings.OVERALL)— 四捨五入されていない値です。この値で順位付けしてください。displayRating(averageOverallRating)— Angi が表示する四捨五入済みの値です。
品質、価格、時間厳守、プロ意識、対応の速さといった評価項目ごとの評価は、完全なレコードに含まれます。
isSponsored: true は有料掲載を示すもので、品質を示すものではありません。
制限事項
- 郵便番号による絞り込みには対応していません。 Angi の
?zip=パラメーターは機能せず、シャーロットの URL でも、場所に関係なくシャーロットのプロが返されます。場所は都市のスラッグから取得されます。 - アカウントのレコード形式は検証されていません。
my.angi.comのマッピングに使用したアカウントにはプロジェクトもレビューもなかったため、確認できたのは エンベロープ のみです。angi_list_my_projectsとangi_list_my_reviewsは、まだ誰も確認していないフィールド名に合わせて投影するのではなく、レコードを生のまま返し、recordFieldsVerified: falseを設定します。docs/ANGI-API.mdを参照してください。 - 受信トレイは読み取れません。 Angi のメッセージは Twilio Conversations SDK 上で動作します。プロキシのエンドポイントはセッション Cookie だけではリクエストを拒否する(401)ため、メッセージの取得には HTTP GET ではなく Twilio クライアントが必要です。
- リモートではホストできません。 このフリート内のすべてのブラウザーブリッジサーバーと同様に、実行するマシン上でサインイン済みのタブが必要なため、mcp-host から claude.ai に提供することはできません。
MCP を使わない場合
skills/angi-fpx/ は、実行中のサーバーを必要とせず、fpx CLI で同じデータを読み取るシェル呼び出し型のスキルです。スクリプト内や、MCP がインストールされていないマシンで役立ちます。
開発
npm install
npm run build # tsc --noEmit + esbuild bundle
npm test
docs/ANGI-API.md には、検証済みの否定的な結果を含む、実際に取得したリクエスト/レスポンス形式が記録されています。src/parse.ts を変更する前に確認してください。
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。