mcpField
U
UK Regulatory Ecosystem

UK Regulatory Ecosystem

リモート
ryanclinton--uk-regulatory-ecosystem-mcp.apify.actor法務・行政032 週間前に更新

UK Regulatory Ecosystem について

UK Regulatory Ecosystemは、英国の事業体を評価するコンプライアンスチーム、デューデリジェンス分析担当者、AIワークフロー向けのMCPサーバーです。8つの政府機関のライブデータを統合し、機関横断分析、リスク評価、構造化レポートを提供します。

主な機能

  1. 01英国政府の8データソースを検索
  2. 02並列データ取得とキャッシュ
  3. 03機関横断のエンティティネットワーク図
  4. 04地理的リスクヒートマップ
  5. 05複数要素によるリスク評価
  6. 06構造化コンプライアンスレポート

活用シーン

  1. 01買収候補のスクリーニング
  2. 02サプライヤーのコンプライアンス監視
  3. 03慈善団体の正当性確認
  4. 04投資地域のリスク評価

MCP 対応

互換クライアントに英国の規制データと分析ツールを提供し、リスクスコア、コンプライアンスフラグ、推奨事項を含む構造化結果を返します。

設定

リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。

エンドポイントhttps://ryanclinton--uk-regulatory-ecosystem-mcp.apify.actor/mcp
インストールコマンドをコピー
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。

ツール

詳細

UK Regulatory Ecosystem MCP

ApifyForgeで表示 | Apify Storeで使用


クイックスタート

MCP クライアント(Claude Desktop、Cursor、Windsurf)に追加します。

{
  "mcpServers": {
    "uk-regulatory-ecosystem-mcp": {
      "url": "https://ryanclinton--uk-regulatory-ecosystem-mcp.apify.actor/mcp"
    }
  }
}

8つの政府データベースを横断する英国の規制インテリジェンス — この MCP サーバーは、AI エージェントが Companies House、UK Police の犯罪データ、Food Standards Agency の衛生評価、Land Registry、Charity Commission、Environment Agency の廃棄物運搬業者、洪水警報、NSTA の石油・ガスライセンスを同時に照会できる単一のインターフェースを提供します。8つの政府ポータルを個別に手作業で照会することなく、英国の事業体リスクを評価する必要があるコンプライアンスチーム、デューデリジェンスアナリスト、AI ワークフロー向けに構築されています。

このサーバーは8つの Apify アクターを並列で実行し、機関横断の規制ネットワークグラフを構築して、KDE ベースの地理的リスクヒートマップから多要素の加重リスクスコアリングまで、8つの分析ツールを実行します。すべてのツール呼び出しは、順位付けされたリスクスコア、コンプライアンスフラグ、実行可能な推奨事項を含む構造化 JSON を返します。セッション中の不要なアクター呼び出しを防ぐため、データは5分間のインメモリキャッシュを使用してリアルタイムに取得されます。

どのようなデータにアクセスできますか?

データ項目ソース例
📋 会社の登録状況、役員、提出書類、PSCUK Companies HousePinnacle Logistics Ltd — Active, incorporated 2018
🚔 通り単位の犯罪分類と結果UK Police Crime DataBurglary — Thetford St, outcome: charged
🍽️ 検査日付きの0~5段階の食品衛生評価Food Standards AgencyHarbour Kitchen — Rating 2, last inspected Oct 2024
🏠 不動産の所有権、権利、保有形態、売買価格UK Land Registry14 Colmore Row — Freehold, £2.4M, Jan 2023
🎗️ 慈善団体の登録有効性、収入、理事データCharity CommissionWestfield Community Trust — Registered, income £84k
♻️ 廃棄物運搬業者の登録状況と区分Environment AgencyApex Clearance Ltd — Upper Tier, expires 2026-03
🌊 発令中の洪水警報、注意報、ゾーンデータUK Flood WarningsRiver Wye — Severe warning, raised 06:14
⛽ 石油・ガスの探査・生産ライセンスNSTAPEDL 234 — Active, operator: Serica Energy
🔗 ネットワークグラフ内の機関横断的な事業体のつながり8つすべてのソースPinnacle Logistics linked to 3 agencies, risk 0.74
🌡️ 地域ごとの KDE 複合地理リスクスコア犯罪 + 洪水 + 環境SE14 3AH — compositeRisk: 0.81, highRisk: true

UK Regulatory Ecosystem MCP を使う理由

英国企業について、関連するすべての規制データベースを手作業で確認するには、8 つの異なる政府機関のウェブサイトを開き、それぞれで個別に検索して、結果を手作業でまとめる必要があります。買収対象を 1 社調べるだけでも、通常はアナリスト 1 人あたり 4~6 時間かかります。サプライチェーン、慈善団体登録簿、家主のポートフォリオなどを一括でスクリーニングする場合は、数週間に及ぶこともあります。

この MCP サーバーは、プロセス全体を自動化します。1 回のツール呼び出しで、選択したすべてのデータソースに対して並列にクエリを実行し、所在地と種類に基づいてエンティティを結ぶ規制ネットワークグラフを構築したうえで、ツールに実装されている分析アルゴリズム(コンプライアンススコアリング、複数の規制当局にまたがる違反の検出、地理的なヒートマップ、包括的なレポート生成など)を実行します。

時間を節約できるだけでなく、複数の規制当局にまたがる分析によって、単一のデータソースだけを確認しても見つからないリスクを明らかにできます。登録が失効した廃棄物運搬業者が、犯罪発生率の高い地域の近くでも事業を営み、さらに食品衛生評価が 1 である場合、この 3 つのデータソースを同時に照会して初めて、リスクが重なっていることが見えてきます。

Apify 上で実行するメリット:

  • スケジュール設定 — ウォッチリストを毎日または毎週スキャンし、ステータスの変化を検出できます
  • API アクセス — 1 つのトークンで、Python、JavaScript、または任意の HTTP クライアントから分析を実行できます
  • 利用額の制限 — 実行ごとの上限予算を設定できます。上限に達すると、サーバーは課金を停止します
  • 監視 — 実行の失敗時や予期しない結果が返されたときに、Slack またはメールでアラートを受け取れます
  • 連携 — 出力を Zapier、Make、Google Sheets、HubSpot、または後続の Webhook に接続できます

機能

  • 8 つの政府データソースを 1 つのインターフェースに集約 — Companies House、Police、FSA、Land Registry、Charity Commission、Environment Agency、Flood Warnings、NSTA を、単一の MCP ツール呼び出しですべて照会できます
  • 5 分間キャッシュを備えた並列アクターのオーケストレーション — resolveData() 関数は Promise.all() を使用して、最大 8 つの Apify アクター呼び出しを並行して実行します。ソースごとの TTL キャッシュにより、セッション中の重複課金を防ぎます
  • 規制ネットワークグラフの構築 — buildRegNetwork() は、すべてのソースのエンティティを型付きノード(company、charity、food_business、waste_carrier、flood_zone、oil_license、crime_area、property)としてまとめ、15 文字の所在地プレフィックス照合を使用して、同一所在地のエッジを作成します
  • KDE ベースの地理的リスクヒートマップ — computeGeographicRiskHeat() はガウスカーネル(帯域幅 = 0.5 度)を適用して、地理セル全体の犯罪、洪水、環境リスクのシグナルを平滑化し、犯罪 40%/洪水 35%/環境 25% の重み付けによる複合リスクスコアを生成します
  • 複数要素による重み付けリスクスコアリング — scoreMultiRegulatoryRisk() は、6 つの重み付け要素(登記状況(0.20)、食品衛生(0.15)、犯罪への近接性(0.20)、洪水への曝露(0.15)、環境コンプライアンス(0.15)、ネットワーク異常(0.15))を用いてエンティティのリスクを算出します
  • 複数機関をまたぐ違反検出 — UK Police、Food Standards Agency、Environment Agency、Flood Authority に同時にフラグが立てられているエンティティを特定し、違反を dual_agency_flag または multi_agency_convergence に分類します
  • 企業コンプライアンス評価 — Companies House での有効状況、関連する食品衛生スコア、廃棄物運搬業者の有効性、犯罪への近接性を評価し、0~1 の総合コンプライアンススコアを算出します
  • 慈善団体の正当性スクリーニング — 人口中央値に対する収益の異常値、住所による法人取締役の重複、登録状況の不備を検出し、スコア化した危険信号を集計します
  • 環境コンプライアンス分析 — 廃棄物運搬業者の有効/失効状況、NSTA による石油/ガスライセンスの有効性、洪水区域の境界への近接性(洪水区域の境界ごとにリスクを 0.3 加算し、上限は 1.0)を評価します
  • 包括的な規制レポートの生成 — generateRegulatoryReport() は、各カテゴリ(Companies House、Food Standards、Environment Agency、Flood Risk、Police)ごとに、重大度評価(low/medium/high/critical)と具体的なエスカレーションの推奨事項を含む、構造化された調査結果を生成します
  • ツールごとの従量課金 — 6 つのツールは 1 回あたり $0.045、2 つのツール(detect_cross_agency_violations と generate_regulatory_report)は 1 回あたり $0.050 です。支出上限はサーバー側で適用されます
  • デュアルトランスポート対応 — レガシー MCP クライアント向けの SSE(/sse + /messages)と、最新クライアント向けの StreamableHTTP(/mcp)の両方を提供し、準備状況の確認用に /health エンドポイントも備えています

英国の規制インテリジェンスのユースケース

英国での買収・投資におけるデューデリジェンス

M&A アナリストやプライベートエクイティチームは、契約締結前に買収対象を英国の関連するすべての登記情報と照合してスクリーニングする必要があります。対象企業名を指定して generate_regulatory_report を 1 回呼び出すだけで、解散した子会社、環境上の負債、営業施設に関する食品衛生上の問題、所有不動産における洪水区域への曝露、複数機関にまたがるフラグをすべて含む構造化レポートが生成され、デューデリジェンスメモにそのまま貼り付けられます。

サプライチェーンのコンプライアンス監視

英国のサプライヤーネットワークを管理する調達チームは、廃棄物運搬業者が有効な Environment Agency の登録を保有していること、食品サプライヤーが許容可能な FHRS 評価を維持していること、サプライヤーの主要な営業主体が新たに解散していないことを継続的に確認する必要があります。サプライヤーの監視対象リストに対して assess_company_compliance を毎週実行するようスケジュールすれば、ポータルを手作業で確認することなく、継続的な監視が可能です。

慈善団体の不正およびガバナンス審査

助成金を提供する機関、規制当局、調査報道の記者は、公的資金を受け取る慈善団体が正当に登録されていること、収入のパターンに妥当性があること、営利企業との間に不審な役員の重複がないことを確認する必要があります。screen_charity_legitimacy ツールは、各慈善団体の収入を全体の中央値と比較し、企業との所在地の重複を検出して、具体的な危険信号とともに0~1の正当性スコアを算出します。

不動産投資のための地理的リスク評価

英国の地域を評価する不動産投資家や都市計画担当者は、洪水リスクだけでなく、犯罪密度、廃棄物事業者による環境汚染、発令中の洪水警報を組み合わせた、その地域の総合的なリスク特性を把握する必要があります。compute_geographic_risk_heat ツールは、地理的なセルごとにカーネル密度推定で平滑化した複合リスクスコアを算出し、投資を決める前に地域間の比較を可能にします。

規制コンプライアンス対応のAIエージェント

Claude、Cursor、その他のMCP対応クライアントでAIエージェントのワークフローを構築するコンプライアンスチームは、このサーバーをアシスタントに接続して、「Meridian Waste Solutionsは英国のすべての登録機関でコンプライアンスを遵守していますか?」や「当社の仕入先50社のうち、洪水リスクの高い区域にあるのはどれですか?」といった自然言語の質問に回答させることができます。MCPプロトコルがツールの検出と構造化された応答のフォーマットを自動的に処理します。

環境規制の執行支援

環境庁の地域チーム、地方自治体の環境衛生担当官、違法な廃棄物活動を監視するNGOは、detect_cross_agency_violations を使用して、犯罪データと登録期限切れの廃棄物運搬業者の記録の両方に登場する事業者を検出できます。この組み合わせは、不法投棄や違法な廃棄物処理活動を示す最も一般的な兆候です。

このMCPサーバーをAIクライアントに接続する方法

ステップ1:Apify APIトークンを取得する

apify.com で登録し、アカウント設定からAPIトークンをコピーします。

ステップ2:MCPクライアントに追加する

Claude Desktop — claude_desktop_config.json に追加します:

{
  "mcpServers": {
    "uk-regulatory-ecosystem": {
      "url": "https://uk-regulatory-ecosystem-mcp.apify.actor/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_APIFY_TOKEN"
      }
    }
  }
}

Cursor / Windsurf / Cline — MCPサーバー設定パネルに同じURLとAuthorizationヘッダーを追加します。

ステップ3:質問を始める

接続すると、AIクライアントが8個すべてのツールを自動的に検出します。自然言語で質問してください:

「英国のすべての情報源に基づいて、Apex Industrial Services Ltdの規制コンプライアンスを評価してください。」

「SW1A 1AAの郵便番号区域にある事業者の規制レポートを作成してください。」

ステップ4:構造化された結果を確認する

各ツールは、順位付けされた事業体、リスクスコア、コンプライアンスフラグ、推奨事項を含むJSONオブジェクトを返します。結果はレポートに渡したり、データセットに保存したり、後続のAI推論のコンテキストとして使用したりできます。

MCP ツール

ツール価格デフォルトのソース説明
map_regulatory_network$0.045companies, police, food, land, charity機関をまたぐエンティティの接続性を、ネットワーク密度とリスクスコアでマッピングします
assess_company_compliance$0.045companies, police, food, land, charity登録状況、食品衛生、廃棄物運搬業者の有効性、犯罪発生地域との近接性に基づいて企業をスコアリングします
detect_cross_agency_violations$0.050companies, police, food, waste, flood2つ以上の機関から同時にフラグが付けられたエンティティを特定します
compute_geographic_risk_heat$0.045police, flood, waste, energy地域ごとの複合地理リスクを示すKDEヒートマップを作成します
screen_charity_legitimacy$0.045charity, companies収益の異常、企業との重複、登録の欠落をスクリーニングします
analyze_environmental_compliance$0.045companies, waste, flood, energy廃棄物運搬業者の状況、石油・ガスのライセンス、洪水区域への該当状況を評価します
score_multi_regulatory_risk$0.045companies, police, food, land, charity, waste, floodエンティティごとに、6要素を加重した複合リスクスコアを算出します
generate_regulatory_report$0.050all 8 sources重大度評価とエスカレーションの推奨事項を含む、調査結果の包括的なレポートを作成します
ツールの入力パラメーター

すべてのツールが同じ2つのパラメーターを受け付けます。

パラメーター型必須デフォルト説明
querystringはい—調査対象の英国企業名、所在地、郵便番号、またはエンティティ
sourcesarray of enumいいえツール固有(上の表を参照)クエリを実行するデータソース:companies、police、food、land、charity、waste、flood、energy
入力例

企業のコンプライアンスチェック(デフォルトのソース):

{
  "query": "Meridian Waste Solutions Ltd",
  "sources": ["companies", "police", "food", "waste"]
}

郵便番号を指定した地理的リスク評価:

{
  "query": "E14 5AB",
  "sources": ["police", "flood", "waste", "energy"]
}

8つすべてのソースを使用した包括的な規制レポート:

{
  "query": "Pinnacle Food Group",
  "sources": ["companies", "police", "food", "land", "charity", "waste", "flood", "energy"]
}
入力のヒント
  • 企業の登録名を使用してください — 検索語は各ソースのAPIに直接渡されます。Companies Houseに登録された正式名称を使用すると、最も正確な結果が得られます
  • 最初は3~4個のソースを使用してください — 各ツールのデフォルトのソースセットは、そのツールの目的に合わせて最適化されています。包括的なレポートが必要な場合に限り、8つすべてのソースに拡張してください
  • 地理関連ツールでは郵便番号で検索してください — compute_geographic_risk_heat と detect_cross_agency_violations は、企業名よりも郵便番号または地域名で検索した方が、より充実した結果を返します
  • ツールを順番に組み合わせてください — まず score_multi_regulatory_risk を実行して最もリスクの高いエンティティを特定し、0.5を超えるフラグが付いたエンティティに対してのみ generate_regulatory_report を呼び出してください

出力例

assess_company_compliance の出力
{
  "checks": [
    {
      "company": "Pinnacle Food Group Ltd",
      "registryStatus": "Active",
      "foodHygieneScore": 2.4,
      "wasteCarrierValid": false,
      "crimeProximity": 0.4,
      "overallCompliance": 0.3800
    },
    {
      "company": "Meridian Catering Services",
      "registryStatus": "Active",
      "foodHygieneScore": 4.2,
      "wasteCarrierValid": true,
      "crimeProximity": 0.0,
      "overallCompliance": 0.8600
    }
  ],
  "totalChecked": 2,
  "failedCount": 1,
  "avgCompliance": 0.6200
}
detect_cross_agency_violations の出力
{
  "violations": [
    {
      "entity": "Apex Clearance Ltd",
      "agencies": ["UK Police", "Environment Agency", "Food Standards Agency"],
      "violationType": "multi_agency_convergence",
      "severity": 0.7500,
      "evidence": "Entity flagged across 3 regulatory agencies"
    }
  ],
  "totalDetected": 1,
  "multiAgencyCount": 1,
  "avgSeverity": 0.7500
}
generate_regulatory_report の出力
{
  "findings": [
    {
      "category": "Companies House",
      "finding": "2 dissolved/liquidated company(ies) with regulatory links",
      "severity": "high",
      "evidence": "Apex Waste UK, Meridian En",
      "recommendation": "Report to Companies House and investigate potential phoenix company fraud"
    },
    {
      "category": "Food Standards",
      "finding": "3 food business(es) with hygiene rating <= 2",
      "severity": "high",
      "evidence": "Harbour Kitchen (1), Eastgate Cafe (2), The Diner (2)",
      "recommendation": "Escalate to local authority food safety team for urgent inspection"
    },
    {
      "category": "Environment Agency",
      "finding": "1 waste carrier(s) with non-active registration",
      "severity": "high",
      "evidence": "Apex Clearance Ltd",
      "recommendation": "Report to Environment Agency for illegal waste carriage investigation"
    }
  ],
  "overallRisk": "high",
  "entitiesScreened": 24,
  "recommendations": [
    "Companies House referral for dissolved entity activity",
    "Food Standards Agency urgent inspection programme",
    "Environment Agency enforcement action for unlicensed waste carriers"
  ]
}
compute_geographic_risk_heat の出力
{
  "cells": [
    {
      "area": "Silvertown Way, E16",
      "lat": 51.5074,
      "lng": 0.0123,
      "crimeRisk": 0.7200,
      "floodRisk": 0.8100,
      "environmentalRisk": 0.4500,
      "compositeRisk": 0.6955
    },
    {
      "area": "Thames Road, DA8",
      "lat": 51.4892,
      "lng": 0.1834,
      "crimeRisk": 0.3100,
      "floodRisk": 0.6400,
      "environmentalRisk": 0.2800,
      "compositeRisk": 0.4700
    }
  ],
  "totalAreas": 14,
  "highRiskCount": 3,
  "avgCompositeRisk": 0.5210
}

出力フィールド

assess_company_compliance
フィールド型説明
checks[].companystring企業名(最大50文字)
checks[].registryStatusstringCompanies Houseのステータス文字列(例:Active、Dissolved)
checks[].foodHygieneScorenumber関連する食品事業所のFHRSスコア(0~5)の平均
checks[].wasteCarrierValidboolean廃棄物運搬業者との関連がない場合、または少なくとも1つがActiveの場合はTrue
checks[].crimeProximitynumber0~1のスコア。関連する犯罪地域ノードごとに0.2加算
checks[].overallCompliancenumber0~1の加重複合スコア(登録状況0.3、食品0.3、廃棄物0.2、犯罪0.2)
totalCheckednumber分析した企業ノードの数
failedCountnumberoverallCompliance < 0.5 の件数
avgCompliancenumberすべてのチェックにおけるoverallComplianceの平均
detect_cross_agency_violations
フィールド型説明
violations[].entitystringエンティティ名
violations[].agenciesstring[]エンティティにフラグが付けられている機関名
violations[].violationTypestringdual_agency_flag(2機関)または multi_agency_convergence(3機関以上)
violations[].severitynumber重大度スコア(0~1)
violations[].evidencestring人が読める形式の証拠文字列
totalDetectednumber検出された違反の合計数
multiAgencyCountnumber3機関以上が関与する違反の数
avgSeveritynumberすべての違反の平均重大度
compute_geographic_risk_heat
フィールド型説明
cells[].areastring場所を表す文字列(最大20文字)
cells[].latnumber緯度(小数点以下4桁)
cells[].lngnumber経度(小数点以下4桁)
cells[].crimeRisknumberKDEで平滑化した犯罪密度(0~1)
cells[].floodRisknumberKDEで平滑化した洪水リスク(0~1)
cells[].environmentalRisknumberKDEで平滑化した環境リスク(0~1)
cells[].compositeRisknumber重み付け複合リスク:0.4×犯罪 + 0.35×洪水 + 0.25×環境
totalAreasnumber出力に含まれる地理的セルの合計数
highRiskCountnumbercompositeRiskが0.6を超えるセルの数
avgCompositeRisknumberすべてのセルのcompositeRiskの平均
generate_regulatory_report
フィールド型説明
findings[].categorystring規制カテゴリ(例:Companies House、Food Standards)
findings[].findingstring調査結果の説明文
findings[].severitystringlow、medium、high、または critical
findings[].evidencestring裏付けとなる証拠文字列
findings[].recommendationstring具体的なエスカレーション措置
overallRiskstring総合リスク:low、medium、high、または critical
entitiesScreenednumber規制ネットワーク内のノードの合計数
recommendationsstring[]優先順位付けされた措置の一覧
score_multi_regulatory_risk
フィールド型説明
assessments[].entitystringエンティティ名
assessments[].riskScorenumber重み付け複合リスク(0~1)
assessments[].riskLevelstringlow(<0.25)、medium(<0.5)、high(<0.75)、critical(≥0.75)
assessments[].factors[].factorstring要因名(registry_status、food_hygiene、crime_proximity、flood_exposure、environmental、network_anomaly)
assessments[].factors[].weightnumber複合スコアにおける要因の重み
assessments[].factors[].scorenumber要因の未加工スコア(0~1)
avgRisknumberすべてのエンティティのriskScoreの平均
criticalCountnumberriskLevel = critical の件数

英国の規制に関するインテリジェンスのクエリを実行する費用はいくらですか?

この MCP はイベントごとの従量課金制です。ツールの呼び出しごとに料金が発生します。6 つのツールは1 回の呼び出しにつき $0.045、2 つのツール(detect_cross_agency_violations と generate_regulatory_report)は1 回の呼び出しにつき $0.050です。プラットフォームのコンピューティング料金は含まれています。

シナリオツール呼び出し回数1 回あたりの料金合計料金
1 社の企業チェック1$0.045$0.045
コンプライアンス+違反チェック(2 つのツール)2$0.045–$0.050約 $0.09
1 つの事業体を対象とした 8 つすべてのツールによる分析8$0.045–$0.050約 $0.37
20 社のサプライヤーを対象とした週次チェック(各 1 つのツール)20$0.045$0.90
月次のデューデリジェンス一括処理(50 の事業体)50$0.045$2.25

実行ごとに最大支出額を設定して、費用を管理できます。予算に達すると、サーバーは支出上限に達したことを示すメッセージを返し、課金を停止します。

**Apify Free プランには、月額 $5 分のプラットフォームクレジットが含まれており、約 110 回のツール呼び出しに利用できます。**個別のデューデリジェンスワークフローの費用は、ほとんどの場合 $0.50 未満です。同等の英国の登記情報を提供する商用コンプライアンスプラットフォームでは月額 $500~2,000 がかかりますが、この MCP ではほとんどのチームがサブスクリプション契約なしで月額 $5~30 で利用できます。

API 経由で英国の規制に関するインテリジェンスを利用する

Python
from apify_client import ApifyClient

client = ApifyClient("YOUR_API_TOKEN")

run = client.actor("ryanclinton/uk-regulatory-ecosystem-mcp").call(run_input={})

for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(f"Tool: {item.get('tool')} | Result: {item.get('result')}")
JavaScript
import { ApifyClient } from "apify-client";

const client = new ApifyClient({ token: "YOUR_API_TOKEN" });

const run = await client.actor("ryanclinton/uk-regulatory-ecosystem-mcp").call({});

const { items } = await client.dataset(run.defaultDatasetId).listItems();
for (const item of items) {
    console.log(`Tool: ${item.tool} | Overall Risk: ${item.result?.overallRisk}`);
}
cURL(MCP プロトコルを直接利用 — Streamable HTTP)
# Call the assess_company_compliance tool
curl -X POST "https://uk-regulatory-ecosystem-mcp.apify.actor/mcp" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_APIFY_TOKEN" \
  -d '{
    "jsonrpc": "2.0",
    "method": "tools/call",
    "params": {
      "name": "assess_company_compliance",
      "arguments": {
        "query": "Apex Industrial Services Ltd",
        "sources": ["companies", "police", "food", "waste"]
      }
    },
    "id": 1
  }'

# Call generate_regulatory_report for a full multi-source report
curl -X POST "https://uk-regulatory-ecosystem-mcp.apify.actor/mcp" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_APIFY_TOKEN" \
  -d '{
    "jsonrpc": "2.0",
    "method": "tools/call",
    "params": {
      "name": "generate_regulatory_report",
      "arguments": {
        "query": "Pinnacle Waste Group",
        "sources": ["companies", "police", "food", "land", "charity", "waste", "flood", "energy"]
      }
    },
    "id": 2
  }'

UK Regulatory Ecosystem MCP の仕組み

フェーズ 1:キャッシュを利用した並列アクターへの振り分け

ツールが呼び出されると、resolveData() は Promise.all() を使用して最大 8 件の Apify アクター呼び出しを並列に実行します。各データソースは専用の Apify アクターに対応しています:ryanclinton/uk-companies-house、ryanclinton/uk-police-crime-data、ryanclinton/uk-food-hygiene、ryanclinton/uk-land-registry、ryanclinton/uk-charity-commission、ryanclinton/ea-waste-carriers、ryanclinton/uk-flood-warnings、ryanclinton/nsta-oil-gas-licenses。各アクターは waitSecs: 180 と memory: 256MB を指定して呼び出され、各ソースから最大 500 件のアイテムが返されます。結果はモジュールレベルの Map に 5 分間の TTL 付きでキャッシュされ、{source}:{query} をキーとして保存されるため、セッション中にツールを繰り返し呼び出してもアクターは再実行されません。

フェーズ 2:規制ネットワークグラフの構築

buildRegNetwork() は、アクターから返された生の出力配列を型付きグラフに変換します。各データソースは特定の型のノードを生成します。企業データからは Companies House のステータスメタデータを持つ company ノード、警察データからは緯度・経度と犯罪カテゴリを持つ crime_area ノード、食品衛生データからは FHRS 評価を持つ food_business ノード、土地登記データからは保有形態と支払価格を持つ property ノード、慈善団体データからは収入と登録状況を持つ charity ノード、廃棄物運搬業者データからは有効期限を持つ waste_carrier ノード、洪水警報データからは危険度を持つ flood_zone ノード、石油・ガスデータからは NSTA オペレーターのメタデータを持つ oil_license ノードが生成されます。

エッジは 2 つの方法で作成されます。位置の照合(異なる型のノード間で位置文字列の先頭 15 文字を比較し、operates_at エッジを作成)と、洪水リスクの関連付け(洪水区域と不動産・企業・食品事業者の間で位置文字列の先頭 8 文字を照合し、重み 0.7 の flood_risk エッジを作成)です。

フェーズ 3:分析アルゴリズムの実行

各ツールは、ネットワークに対して異なるアルゴリズムを適用します。assessCompanyCompliance() は企業ノードのエッジをたどり、関連する食品、廃棄物、犯罪ノードを見つけ、加重複合スコア(登記 0.3、食品衛生 0.3、廃棄物 0.2、犯罪の逆数 0.2)を算出します。detectCrossAgencyViolations() は、犯罪、衛生評価の低い食品、非アクティブな廃棄物、洪水の各ノードに同時に接続されている企業ノードを特定し、関係機関の数に基づいて分類します。computeGeographicRiskHeat() は、すべてのノードを地域の接頭辞ごとにグループ化し、タイプごとにリスクの寄与分(犯罪 +0.2、洪水 +0.3、廃棄物/石油 +0.15)を蓄積した後、帯域幅 0.5 度のガウスカーネルを適用して近隣セル間の値を平滑化し、重みを 40/35/25 とした複合スコアを生成します。scoreMultiRegulatoryRisk() は、明示的な重みを持つ 6 要素モデルを使用します:登記状況(0.20)、食品衛生(0.15)、犯罪への近接度(0.20)、洪水への曝露(0.15)、環境(0.15)、ネットワーク異常(0.15)。generateRegulatoryReport() は、カテゴリ固有のルールを適用して、アクティブな関連先がある解散済み企業、評価が 2 以下の食品、非アクティブな廃棄物運搬業者、アクティブな洪水区域、しきい値を超える件数の犯罪ホットスポットを検出します。

フェーズ 4:転送と応答

サーバーは Express 上で動作し、2 つの MCP 転送エンドポイントを提供します:GET /sse + POST /messages(SSE プロトコル、レガシークライアントとの互換性)と POST /mcp(StreamableHTTP、最新のクライアント向け)。Apify Standby モードでは、process.env.PORT(デフォルトは 3031)にバインドされ、継続的に実行されます。通常のアクター実行モードでは、ポート 8080 にバインドしてステータスメッセージをログに記録し、1 秒後に終了します。これにより、Standby コンテキスト外で起動された場合にアクターがハングしないようにします。

最良の結果を得るためのヒント

  1. 各ツールで最も用途を絞ったソースセットを使用してください。 デフォルトのソースセットは、各ツールの分析ロジックに合わせて設計されています。screen_charity_legitimacy の呼び出しで 8 つすべてのソースを使用しても、charity と companies のノードのみを使う慈善団体のスコアリングアルゴリズムの精度は向上せず、コストとレイテンシーが増加します。

  2. Companies House の検索では、登記された企業名でクエリしてください。 query 文字列は各アクターに直接渡されます。Companies House に登記されている正確な正式名称(例:「Apex Industrial」ではなく「Apex Industrial Services Limited」)を使用すると、Companies House アクターからより正確な結果が得られます。

  3. トリアージの手順として score_multi_regulatory_risk を実行してください。 6 要素モデルは、すべてのソースセットを効率的にカバーします。結果の riskLevel 分類を使って、どの事業体に generate_regulatory_report を完全に実行する価値があるかを判断してください。medium を超える事業体のみを対象にすれば、コストを大幅に削減できます。

  4. 地理情報ツールには郵便番号を使ってクエリしてください。 compute_geographic_risk_heat と detect_cross_agency_violations は、英国の郵便番号または地区名でクエリすると、より豊富な結果を生成します。地理情報ツールは、犯罪、洪水、環境ノード間の位置文字列の照合に依存しているためです。

  5. 一括処理には支出上限を設定してください。 大量のサプライヤーリストを処理する場合は、MCP セッションごとの最大支出額を設定してください。サーバーはサーバー側で上限を適用し、通知せずに処理を停止するのではなく、構造化されたエラーを返します。エージェントはこれをページネーションのシグナルとして処理できます。

  6. ツールを連鎖させて、より充実したレポートを作成してください。 まず map_regulatory_network を呼び出して事業体グラフ全体とネットワーク密度を把握し、次に次数が最も高いノードに対して detect_cross_agency_violations を呼び出します。ネットワークマップの出力を参考に、どの後続ツールが最も有用かを判断できます。

  7. 慈善団体のデューデリジェンスでは、必ず companies をソースに含めてください。 screen_charity_legitimacy アルゴリズムの取締役重複検出は、慈善団体と企業の住所を照合して機能します。companies ソースがない場合、実際の関係の有無にかかわらず、重複検出の結果はゼロになります。

他の Apify アクターと組み合わせる

アクター組み合わせ方
UK Business Compliance MCP最初に実行して GLEIF LEI の検索結果と Companies House の役員データを取得し、事業体名をこの MCP に渡して、機関横断的な環境および犯罪の分析を行います
WHOIS Domain LookupCompanies House の企業登録者情報をドメインの WHOIS レコードと照合し、隠れた実質的所有者を特定します
Waterfall Contact Enrichment高リスクの事業体を特定した後、10 段階のカスケードを通じて企業の連絡先情報を拡充し、フォローアップの連絡に役立てます
Company Deep Researchこの MCP の規制リスクスコアを使って、AI 生成の詳細な調査レポートを作成する企業の優先順位を決めます
B2B Lead Qualifierコンプライアンススコアを B2B Lead Qualifier に渡し、リードスコアリングで規制リスクをマイナスのシグナルとして適用します
HubSpot Lead Pusherリスクスコアを付けた要注意の事業体を HubSpot に直接登録し、コンプライアンスチームのワークフローに組み込みます
Multi-Review Analyzer規制データを公開レビューのセンチメントで補完し、評判リスクをより包括的に把握します

制限事項

  • 場所の照合はジオコーディングではなく、プレフィックスベースです。 ネットワークグラフのエッジの構築では、場所フィールドの文字列に対して 15 文字および 8 文字のプレフィックス照合を使用します。同じ地域にある事業体でも、住所文字列の形式が異なる場合は接続されないことがあります。正確な空間分析には、ジオコーディングによる照合が必要です。
  • ソースごとに、クエリあたり最大 500 件のアイテムを取得します。 Apify アクターの各呼び出しで返されるアイテムは最大 500 件です。大規模な結果セット(英国の主要都市、一般的な企業名など)に一致するクエリの場合、ネットワークグラフは全件ではなくサンプルを反映します。
  • 永続的な MCP 接続には、サーバーを Apify Standby モードで実行する必要があります。 標準的なアクター実行(MCP URL 経由ではない)でトリガーすると、サーバーは起動してステータスメッセージをログに記録し、1 秒後に終了します。このサーバーは、単発のバッチ処理ジョブ向けには設計されていません。
  • スコットランドと北アイルランドの対象範囲は一部に限られます。 Food Standards Agency(FHRS)の対象はイングランド、ウェールズ、北アイルランドです。スコットランドでは、異なる評価システムを使用する Food Standards Scotland が適用されます。警察の犯罪データの対象範囲は警察組織によって異なり、スコットランドのすべての警察組織が全国 API にデータを公開しているわけではありません。
  • リアルタイムの洪水警報は現在の状況のみを反映します。 洪水警報データはクエリ実行時点の最新情報です。過去の洪水イベントデータは含まれません。特定の物件の洪水リスクを評価する場合は、Environment Agency の洪水マップ記録を別途確認してください。
  • 機関横断的な違反検出には、事業体同士の位置が一致している必要があります。 アルゴリズムはネットワークエッジをたどって違反を検出します。企業とその食品施設で住所文字列が異なる場合(例:登記上の事務所と営業所の住所)は、グラフ上で接続されず、検出精度が低下することがあります。
  • 石油・ガスデータの対象は、NSTA が認可した北海での事業です。 エネルギーソース(nstaOilGas)は、North Sea Transition Authority が発行する PEDL および海域ライセンスを対象とします。陸上の再生可能エネルギー、水利権ライセンス、その他のエネルギー関連環境許可は対象外です。
  • 慈善団体の収入比較は、同じクエリの対象内で行われます。 収益の異常検出では、各慈善団体の収入を同じクエリで返された慈善団体の中央値と比較します。慈善団体が 1 件しか返されないクエリでは、その慈善団体自身の収入が中央値となるため、異常検出に意味がなくなります。信頼性の高い異常スコアを得るには、複数の慈善団体をまとめてクエリしてください。

インテグレーション

  • Apify API — Python、JavaScript、または任意の HTTP クライアントから英国の規制分析をプログラムで実行し、結果を Apify データセットに保存します
  • Zapier — スプレッドシートに新しいサプライヤーが追加されたときにコンプライアンスチェックを実行し、重大な検出事項があればチームに通知するノーコードのワークフローを構築します
  • Make — スケジュールまたは Webhook をトリガーとして慈善団体のスクリーニングワークフローを自動化し、リスクの高い結果をメールまたは Slack チャンネルに送信します
  • Google Sheets — サプライヤーのウォッチリストのリスクスコアとコンプライアンスフラグを、チームで確認できる共有スプレッドシートに直接エクスポートします
  • Webhooks — スケジュール実行によって riskLevel: critical のエンティティが検出されるたびに、Slack、Teams、またはコンプライアンスダッシュボードにアラートを送信します
  • LangChain / LlamaIndex — この MCP サーバーを LangChain エージェントチェーンまたは LlamaIndex ワークフローのツールとして接続し、複数ステップの英国規制調査パイプラインを構築します

トラブルシューティング

Companies House に会社が存在することがわかっているのに、エンティティが返されません。 検索語は基盤となるアクターにそのまま渡されます。会社の正式な登録名(「Limited」、「Ltd」、または「PLC」を含む)とクエリが一致していることを確認してください。Companies House アクターでは、部分的な名前や商号では結果が返されないことがあります。

リスクスコアが 0.5 などの一定の丸い数値になります。 クエリから返されるデータが 1 つのソースのみで、位置の一致もない場合に発生します。その結果、ノードは存在してもエッジのないネットワークが生成されます。エッジがない場合、コンプライアンスアルゴリズムとリスクアルゴリズムはデフォルト値(食品衛生は 0.5、犯罪への近接度は 0)を使用します。sources 配列にソースを追加するか、より具体的なクエリを使用して、ソース間のエンティティ照合の精度を高めてください。

サーバーが支出上限に達したというメッセージを返し、停止します。 これは想定された動作です。Apify アカウントで maxTotalChargeUsd の上限を引き上げるか、分析を複数の小さなクエリに分割してください。サーバーはイベントごとに上限を適用するため、上限に達する前に呼び出されたツールからの部分的な結果は引き続き返されます。

問題が確認されているのに、複数の機関にまたがる違反が検出されません。 違反の検出には、少なくとも 2 種類の異なる機関ノードがエッジを介して同じ会社ノードに接続されている必要があります。ソース間で住所表記が異なる場合(例:「14 High Street」と「14 High St.」)、エッジは作成されません。位置の一致を増やすには、クエリを郵便番号または区名に簡略化してみてください。

SSE 接続が数分後に切断されます。 一部のリバースプロキシやクラウドロードバランサーは、アイドル状態の SSE 接続を終了します。クライアントが対応している場合は StreamableHTTP エンドポイント(/mcp)に切り替えるか、プロキシを設定してアイドル接続のタイムアウトを延長してください。

責任ある利用

  • この MCP サーバーが照会するすべてのデータソースは、Open Government Licence または同等のライセンスに基づいて公開されている、英国政府の公開レジストリです。
  • Companies House のデータの利用には、Companies House の利用規約が適用されます。
  • 規制記録から得た個人データを保存または処理する場合は、英国 GDPR および 2018 年データ保護法を遵守してください。
  • 個人または組織に重大な影響を与える可能性のある判断を行う際、規制リスクスコアのみを根拠とせず、人による確認と信頼できる情報源との照合を行ってください。
  • ウェブスクレイピングおよびデータアクセスの合法性に関するガイダンスについては、Apify のガイドをご覧ください。

よくある質問

この MCP サーバーが対応する英国の規制データベースは何ですか? 8 つのデータベースに対応しています。Companies House(会社登録、役員、提出書類、PSC)、Food Standards Agency(FHRS 衛生評価 0~5)、UK Police API(街区単位の犯罪とその処理結果)、UK Land Registry(所有権、権原、支払済み価格)、Charity Commission(登録、収入、ガバナンス)、Environment Agency(廃棄物運搬業者の登録)、UK Flood Warnings API(有効な警報とゾーン)、NSTA(North Sea Transition Authority の石油・ガスライセンス)です。

1 回のツール呼び出しで、いくつの情報源にクエリを実行できますか? 8 つすべてに同時に実行できます。generate_regulatory_report と score_multi_regulatory_risk ツールは、デフォルトですべての情報源を対象とします。sources パラメーターを使って任意のサブセットを指定できます。サーバーはアクター呼び出しを並列に実行するため、8 つの情報源を対象にしても、1 つの場合の 8 倍の時間はかかりません。

返されるデータはどのくらい最新ですか? データはクエリ時に各情報源からライブ取得され、メモリー内に 5 分間キャッシュされます。同じクエリで同じツールを 5 分以内に 2 回呼び出した場合、2 回目は追加料金なしでキャッシュ済みの結果を使います。この期間を過ぎると、新しいアクター実行が開始されます。

この MCP サーバーはスコットランドと北アイルランドの事業体にも対応していますか? Companies House は、英国で設立されたすべての事業体に対応しています。Food Standards はイングランド、ウェールズ、北アイルランドに対応しています(スコットランドでは別のシステムが使われています)。警察の犯罪データの対応範囲は警察組織によって異なります。スコットランドの警察組織は別のシステムを使っており、API で公開される情報は限られています。スコットランド固有の規制情報を得るには、専用のスコットランド情報源を併用してください。

地域リスクヒートマップはどのように機能しますか? compute_geographic_risk_heat は、すべてのノードを位置情報のプレフィックスごとにグループ化し、タイプごとのリスク寄与(犯罪 +0.2、洪水 +0.3、廃棄物/石油 +0.15)を累積した後、帯域幅 0.5 度のガウスカーネルを適用して近隣セル間の値を平滑化します。複合リスクスコアは、犯罪 40%、洪水 35%、環境 25%の重み付けで算出されます。compositeRisk > 0.6 のセルは、高リスクに分類されます。

複数の規制情報を統合したリスクスコアは、どのように算出されますか? score_multi_regulatory_risk は、6 つの加重要素を使用します。登録状況(重み 0.20)、食品衛生(0.15)、犯罪への近接性(0.20)、洪水への曝露(0.15)、環境コンプライアンス(0.15)、ネットワーク異常(0.15)です。各要素は 0~1 のスコアを算出します。加重合計は、low(<0.25)、medium(<0.50)、high(<0.75)、critical(≥0.75)に対応します。

これらの英国政府データベースにクエリを実行することは合法ですか? はい。8 つの情報源はいずれも、Open Government Licence または同等の条件に基づいて公開されている英国政府の公開レジストリです。詳しくは、ウェブスクレイピングの合法性に関する Apify のガイドをご覧ください。

Companies House で手動検索する場合と何が違いますか? Companies House で検索すると、1 社の提出書類履歴がわかります。この MCP は 8 つのデータベースに同時にクエリを実行し、その会社を食品関連施設、廃棄物運搬業者の登録、近隣の犯罪事案、洪水ゾーン、慈善団体とのつながりに結び付ける機関横断のネットワークグラフを構築してから、それらすべてを対象に複合リスクスコアを算出します。単一の情報源だけを検索しても検出できないリスクパターンを明らかにします。

仕入先の一括スクリーニングに使えますか? はい。リスト内の仕入先名ごとに assess_company_compliance または score_multi_regulatory_risk を呼び出してください。5 分間のキャッシュにより、1 つのセッション内で繰り返しクエリを実行しても料金はかかりません。仕入先が 50 社以上ある場合は、セッションごとの支出上限を設定し、コストを管理できるようバッチ処理してください。

一般的なツール呼び出しにはどのくらい時間がかかりますか? 応答時間は、クエリ対象の情報源の数によって異なります。2 つの情報源を対象にするクエリは、通常 20~40 秒で完了します。8 つすべてを対象にする generate_regulatory_report の呼び出しは、各アクター呼び出しのタイムアウトが 180 秒であるため、60~120 秒かかる場合があります。並列に実行するため、合計時間はすべてのアクターの所要時間を合算した時間ではなく、最も遅い単一のアクターに近い時間になります。 定期的なコンプライアンス監視のために、この MCP をスケジュール実行できますか? Apify スケジューラーを使ってアクターの実行をスケジュールできますが、MCP での利用を想定したサーバーは、接続されたクライアントからのオンデマンドクエリ向けに設計されています。スケジュールに沿ったコンプライアンス調査を行うには、基盤となる Apify アクター(例:ryanclinton/uk-companies-house)を cron スケジュールで直接実行し、後続のワークフローで結果を処理することをご検討ください。

基盤となる 8 つのアクターのうち、1 つが失敗した場合はどうなりますか? runActor() 関数は、各アクターの呼び出しを try-catch で囲んでいます。アクターが失敗したりタイムアウトしたりすると、空の配列を返し、エラーをログに記録します。ネットワークグラフは、残りの成功したデータソースから構築されます。ツールは正常に取得できたデータに基づいて結果を返し、失敗したデータソースはその呼び出しの分析から実質的に除外されます。

改善にご協力ください

問題が発生した場合、Apify アカウントで実行共有を有効にすると、より迅速なデバッグに役立ちます。

  1. Account Settings > Privacy に移動します
  2. Share runs with public Actor creators を有効にします

これにより、問題が発生した際に実行の詳細を確認できるため、より迅速に修正できます。データはアクターの開発者のみが閲覧でき、一般公開されることはありません。

サポート

バグを見つけた場合や機能をリクエストしたい場合は、このアクターのページにある Issues tab からイシューを作成してください。カスタムソリューションやエンタープライズ向け連携については、Apify プラットフォームからお問い合わせください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。