mcpField
N
nordic-registry-mcp-server

nordic-registry-mcp-server

ローカル
github.com/olgasafonovaビジネス・マーケティング141 週間前に更新

nordic-registry-mcp-server について

nordic-registry-mcp-serverは、ノルウェー、デンマーク、フィンランド、スウェーデンの公式企業登記に読み取り専用でアクセスします。企業の状態、ガバナンス、署名権限、提出書類を確認する組織や分析担当者向けです。

主な機能

  1. 01北欧4か国の企業検索
  2. 02企業の状態と事業情報の取得
  3. 03取締役会メンバーと役職の照会
  4. 04法的な署名権限の確認
  5. 05スウェーデンの年次報告書へのアクセス
  6. 06ノルウェー企業IDの一括確認

活用シーン

  1. 01許認可や助成金の申請企業の確認
  2. 02取引先の状態や破産状況の審査
  3. 03取締役会構成と署名権限の確認
  4. 04登記情報による企業IDリストの検証

MCP 対応

MCPクライアントから4か国の公開登記APIを照会する23種類のツールを提供します。登記情報は読み取り専用で、スウェーデンのツールにはOAuth2認証情報が必要です。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"olgasafonova-nordic-registry": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"BOLAGSVERKET_CLIENT_ID",
"-e",
"BOLAGSVERKET_CLIENT_SECRET",
"ghcr.io/olgasafonova/nordic-registry-mcp-server:1.0.2"
],
"env": {
"BOLAGSVERKET_CLIENT_ID": "<BOLAGSVERKET_CLIENT_ID>",
"BOLAGSVERKET_CLIENT_SECRET": "<BOLAGSVERKET_CLIENT_SECRET>"
}
}
}
}
起動コマンドdocker run -i --rm -e BOLAGSVERKET_CLIENT_ID -e BOLAGSVERKET_CLIENT_SECRET ghcr.io/olgasafonova/nordic-registry-mcp-server:1.0.2
設定が必要な環境変数
BOLAGSVERKET_CLIENT_IDシークレットBolagsverket OAuth2 client ID (only needed for Sweden tools)
BOLAGSVERKET_CLIENT_SECRETシークレットBolagsverket OAuth2 client secret (only needed for Sweden tools)

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
ocighcr.io/olgasafonova/nordic-registry-mcp-server:1.0.2

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Nordic Registry MCP Server

CI lint License CodeScene Average Code Health

これは何ですか?

ノルウェー、デンマーク、フィンランド、スウェーデンの企業が正規の企業かどうかを数秒で確認できます。4か国の政府ウェブサイトを切り替えることなく、公式の登記情報から破産状況、取締役、署名権限、財務データを確認できます。

Brønnøysundregistrene、CVR、PRH、Bolagsverket の公開 API を利用する 23 個のツールを提供します。Claude Desktop、Claude Code、Cursor、その他あらゆる MCP クライアントで動作します。

できること:

  • 4か国の企業を名称で検索
  • 企業の詳細を取得:状況、従業員数、業種、住所
  • 取締役、CEO、監査人、役職を確認
  • 企業を代表して法的に署名できる人物を確認
  • スウェーデンの年次報告書(årsredovisningar)にアクセス
  • 企業 ID のリストを検証する一括検索

できないこと:

  • 登記情報の変更(読み取り専用)
  • セッションを超えて個人データを保存またはキャッシュ
  • 支払いの必要(基盤となる API はすべて無料)

対応国

国登記機関ツール数ID 形式
ノルウェーBrønnøysundregistrene129 桁(例:923609016 または 923 609 016)
デンマークCVR58 桁(例:10150817 または DK-10150817)
フィンランドPRH27+1 桁(例:0112038-9)
スウェーデンBolagsverket410 桁(例:5560125790 または 556012-5790)

API はすべて無料です。ノルウェー、デンマーク、フィンランドでは認証は不要です。スウェーデンでは、OAuth2 の認証情報が必要な värdefulla datamängder API を使用します(無料登録)。


何ができますか?

接続したら、AI に話しかけるだけです。

こう尋ねると…実行されること
「Equinor という名前のノルウェー企業を探して」Brønnøysundregistrene を検索します
「組織番号 923609016 の詳細を取得して」企業の詳細情報をすべて返します
「923609016 の取締役は誰?」取締役、CEO、役職を一覧表示します
「Novo Nordisk というデンマーク企業を探して」CVR 登記を検索します
「フィンランド企業 Nokia を調べて」PRH 登記を検索します
「フィンランドの企業 0112038-9 を取得して」Nokia の詳細情報をすべて返します
「スウェーデン企業 5560125790 を取得して」Bolagsverket の企業情報を返します
「スウェーデン企業 X の年次報告書を一覧表示して」利用可能な årsredovisningar を一覧表示します

活用例

申請処理:申請企業を確認する

許可申請、ライセンス更新、助成金申請を処理する際に、申請企業が実在し、適正な状態にあることを確認します。

You: "A company applied for an environmental permit. Org number 923609016.
      Check if they're active and who can sign on their behalf."

AI: Let me verify the company and check signing authority.
→ norway_get_company("923609016")
→ norway_get_signature_rights("923609016")

Result: Equinor ASA - Active since 1972, registered for VAT, 21,200 employees.
Authorized signatories: [Name 1] (CEO), [Name 2] + [Name 3] (joint signature).
The application signature matches an authorized signatory.
調達:契約締結前にベンダーを検証する

自治体の契約を締結する前に、入札企業が正規の企業であり、破産していないことを確認します。

You: "We received bids from three Danish companies for the IT contract.
      CVR numbers: 10150817, 25063783, 37553472. Are they all legitimate?"

AI: I'll verify each company's status.
→ denmark_get_company("10150817")
→ denmark_get_company("25063783")
→ denmark_get_company("37553472")

Result:
- 10150817: Novo Nordisk A/S - Active, 47,000+ employees ✓
- 25063783: Mærsk A/S - Active, established company ✓
- 37553472: [Company name] - BANKRUPT ✗

Recommendation: Exclude 37553472 from consideration.
助成金管理:非営利団体のステータスを確認する

任意団体からの助成金申請を処理する際に、Frivillighetsregisteret への登録を確認します。

You: "An organization applied for cultural funding.
      They claim to be a registered non-profit. Org number 971274808."

AI: Let me check their voluntary organization status.
→ norway_get_company("971274808")

Result: Norges Røde Kors - Registered in Frivillighetsregisteret since 2009.
Organization form: FLI (Forening/lag/innretning).
Activity: Humanitarian aid and emergency response.
Confirmed as eligible non-profit organization.
規制監督:業界の変化を監視する

規制対象の業界における新規企業の登録やステータスの変更を追跡します。

You: "I need to monitor new companies in the financial sector.
      What relevant registrations happened this week?"

AI: Let me check recent registry updates.
→ norway_get_updates(since="2024-01-08T00:00:00Z", size=100)

Result: 12 new registrations in financial services sector:
- 3 new AS companies (aksjeselskap)
- 2 new NUF branches of foreign financial institutions
- 7 updates to existing financial companies
[List with org numbers for follow-up]
国境を越えた連携:多国籍企業の所在を追跡する

他の北欧諸国の当局と連携する際は、企業が複数の管轄区域に拠点を置いているかを特定します。

You: "We're investigating a company that may operate across Nordic countries.
      Check if Volvo has registered entities in Norway and Denmark."

AI: Let me search both registries.
→ norway_search_companies("Volvo")
→ denmark_search_companies("Volvo")

Result: Found registered entities:
- Norway: Volvo Norge AS (org 923609016) - 450 employees, automotive
- Denmark: Volvo Danmark A/S (CVR 12345678) - 320 employees
Both are subsidiaries of Swedish parent company.
データ品質:登記申請を検証する

企業識別番号を含む一括データの提出を受け取った際は、公式登記簿と照合して検証します。

You: "A ministry submitted a list of 50 org numbers for a new subsidy program.
      Validate which ones are current and active."

AI: I'll validate them against Brønnøysundregistrene.
→ norway_batch_get_companies([list of 50 org numbers])

Result:
- 47 companies: Active and valid ✓
- 2 companies: Marked as bankrupt - may need review
- 1 org number: Not found in registry - possibly incorrect

Flagged entries exported for manual review.
統計:自治体別の企業構成

特定の地域における企業構成を調査し、政策分析を支援します。

You: "How many AS companies are registered in Oslo municipality?"

AI: Let me search with municipality filter.
→ norway_search_companies(query="*", org_form="AS", municipality="0301")

Result: Found 45,231 AS companies registered in Oslo (municipality 0301).
Paginated results available for detailed analysis.
デューデリジェンス:取締役会の構成を確認する

基準額を超える補助金や契約を承認する前に、企業のガバナンスを確認します。

You: "Check the board composition of company 914778271.
      We need this for the state aid application review."

AI: Let me retrieve their roles.
→ norway_get_company("914778271")
→ norway_get_roles("914778271")

Result: [Company name] - AS registered 2015
Board members:
- [Name 1] - Styreleder (Chair)
- [Name 2] - Styremedlem
- [Name 3] - Styremedlem
- [Name 4] - Daglig leder (CEO)
Auditor: [Audit firm name]
文書の取得:スウェーデンの年次報告書にアクセスする

国境を越えた案件でスウェーデン企業を調査する際は、利用可能な財務書類を確認します。

You: "A Swedish company applied for recognition in Norway.
      What financial reports are available for org 5560125790?"

AI: Let me check Bolagsverket for filed documents.
→ sweden_get_company("5560125790")
→ sweden_get_document_list("5560125790")

Result: [Company name] - Active Swedish AB
Available årsredovisningar: 8 annual reports (2016-2023)
Most recent: Financial year ending 2023-06-30, filed 2023-08-15.

クイックスタート

方法 1:バイナリをダウンロードする

リリースにアクセスし、お使いのプラットフォーム用のファイルをダウンロードします。

方法 2:ソースからビルドする
git clone https://github.com/olgasafonova/nordic-registry-mcp-server.git
cd nordic-registry-mcp-server
go build .

Go 1.24 以降が必要です


セットアップ

Cursor Marketplace
/add-plugin nordic-registry
Claude Code CLI
claude mcp add nordic-registry ./nordic-registry-mcp-server
Claude Desktop

~/Library/Application Support/Claude/claude_desktop_config.json に追加します:

{
  "mcpServers": {
    "nordic-registry": {
      "command": "/path/to/nordic-registry-mcp-server"
    }
  }
}

変更後、Claude Desktop を再起動します。

動作しませんか? 問題点をお知らせください。一言だけでも役立ちます。


すべてのツール

ノルウェー(Brønnøysundregistrene)
ツール説明
norway_search_companies会社名で企業を検索します
norway_get_company組織番号で企業の詳細を取得します
norway_get_roles取締役、CEO、監査人を取得します
norway_get_signature_rights署名権およびプロクラを取得します
norway_batch_get_companies複数の企業を一度に照会します
norway_get_subunits企業の支店一覧を取得します
norway_get_subunit特定の支店の詳細を取得します
norway_search_subunits支店を名称で検索します
norway_get_updates登記簿の最近の変更を取得します
norway_get_subunit_updates支店の最近の変更を取得します
norway_list_municipalities自治体コード一覧を取得します
norway_list_org_forms組織形態コード(AS、ENK など)の一覧を取得します
デンマーク(CVR)
ツール説明
denmark_search_companies会社名で企業を検索します(一致度が最も高い単一の結果を返します)
denmark_get_companyCVR 番号で企業の詳細を取得します
denmark_get_production_units生産拠点(P 番号)の一覧をページ分割して取得します
denmark_search_by_phone電話番号で企業を検索します
denmark_get_by_pnumberP 番号で企業を取得します

注: デンマークの検索では結果が 1 件だけ返されます。大企業には複数の法人があることがよくあります。最初の結果が正しくないようであれば、「[Company] Denmark」、「[Company] A/S」、または合併前の名称など、別の表記を試してください。

フィンランド(PRH)
ツール説明
finland_search_companies会社名で企業を検索します(ページ分割に対応。幅広い検索にはフィルターを使用します)
finland_get_company企業 ID で企業の詳細を取得します

注: 「Nokia」のような一般的な名前では、900 件を超える結果が返されます。正式な法人名(「Nokia Oyj」)を使用するか、company_form(OY/OYJ)で絞り込むか、location で絞り込んでください。

スウェーデン(Bolagsverket)

OAuth2 の認証情報が必要です。環境変数 BOLAGSVERKET_CLIENT_ID と BOLAGSVERKET_CLIENT_SECRET を設定してください。

ツール説明
sweden_get_company組織番号で企業の詳細を取得します
sweden_get_document_list年次報告書(årsredovisningar)の一覧を取得します
sweden_download_document文書 ID で年次報告書をダウンロードします
sweden_check_statusAPI の利用可否と OAuth2 の状態を確認します

注: この API ではスウェーデン企業を名称で検索できません。組織番号が必要です。


プロンプトの例

企業検索
  • 「Telenor という名前のノルウェー企業を検索」
  • 「オスロの AS 企業を検索」
  • 「Carlsberg という名前のデンマーク企業を検索」
  • 「フィンランド企業 Kone を検索」
  • 「Røde Kors という名前の任意団体を検索」
企業の詳細
  • 「ノルウェーの組織 923609016 の詳細を取得」
  • 「CVR 10150817 を検索」
  • 「フィンランド企業 0112038-9 の詳細を取得」
役員と役職(ノルウェーのみ)
  • 「923609016 の役員を教えて」
  • 「Equinor の CEO を検索」
  • 「組織 914778271 の取締役をすべて一覧表示」
署名権(ノルウェーのみ)
  • 「企業 923609016 の署名権者を教えて」
  • 「Equinor の署名権を取得」
  • 「914778271 のプロクラ(包括的代理権)を持つ人を教えて」
支店
  • 「923609016 の支店を教えて」
  • 「Equinor という名前の支店を検索」
  • 「CVR 10150817 の生産拠点を一覧表示」
登記情報の更新(ノルウェーのみ)
  • 「昨日から変更された企業を教えて」
  • 「最近の登記情報の更新を取得」
  • 「最近変更された支店を教えて」
一括操作(ノルウェーのみ)
  • 「次の企業を検索:923609016、914778271、985399077」
  • 「スプレッドシートにあるこれらの組織番号を検証」
  • 「複数のノルウェー企業の詳細を一度に取得」
参照データ(ノルウェーのみ)
  • 「ノルウェーの自治体をすべて一覧表示」
  • 「オスロの自治体コードは何ですか?」
  • 「AS は何を意味しますか?」
  • 「組織形態コードを一覧表示」
電話番号と P 番号の検索(デンマーク)
  • 「電話番号 33121212 の企業を検索」
  • 「生産拠点の P 番号 1234567890 を検索」
スウェーデンの検索
  • 「スウェーデン企業 5560125790 の詳細を取得」
  • 「スウェーデンにおける Volvo の組織番号を検索」
  • 「5560125790 で利用できる年次報告書を教えて」
  • 「スウェーデン企業 X の årsredovisningar を一覧表示」
  • 「スウェーデンの API は動作していますか?」

スウェーデンのセットアップ

スウェーデンの Bolagsverket API では OAuth2 認証が必要です(無料)。

  1. värdefulla datamängder API に登録(顧客登録フォームを送信)
  2. 開発者ポータルにアクセスして OAuth2 認証情報を取得
  3. 環境変数を設定:
    export BOLAGSVERKET_CLIENT_ID="your-client-id"
    export BOLAGSVERKET_CLIENT_SECRET="your-client-secret"
    

サーバーの起動時に、スウェーデンの認証情報が設定されているかどうかがログに記録されます。設定されていない場合、スウェーデンのツールは登録されません。


HTTP モード

リモートアクセスまたは他のツールとの統合には、次を使用します。

# Start HTTP server
./nordic-registry-mcp-server -http :8080

# With authentication
./nordic-registry-mcp-server -http :8080 -token "your-secret-token"

# Full production setup
./nordic-registry-mcp-server -http :8080 \
  -token "your-secret-token" \
  -origins "https://app.example.com" \
  -rate-limit 60 \
  -trusted-proxies "10.0.0.0/8"
セキュリティ機能
  • ベアラートークン認証:-token フラグまたは MCP_AUTH_TOKEN 環境変数による任意の認証。トークンなしでループバック以外のアドレスにバインドしようとすると、起動時に拒否されます。ループバックアドレス(127.0.0.1、localhost)へのバインドでは、ローカル開発向けにトークンなしで引き続き実行できます。
  • CORS 保護:-origins フラグでオリジンを制限(カンマ区切り)
  • レート制限:-rate-limit で IP ごとのレート制限を設定(1 分あたりのリクエスト数)
  • 信頼できるプロキシ:信頼できるネットワークからの X-Forwarded-For を利用(-trusted-proxies)
  • リクエストサイズ制限:デフォルトは 2MB、リクエスト本文の最大サイズは 10MB
エンドポイント

/health と /ready のプローブを除くすべてのエンドポイントで、同じ認証方式が適用されます。トークンが設定されている場合、/、/metrics、/status、/tools のすべてで認証が必要です。オーケストレーターがアクセスできるよう、プローブは認証なしで利用できます。

エンドポイント説明認証
/MCP プロトコル(ストリーミング可能な HTTP)トークン設定時に必須
/health稼働状況の確認公開
/ready準備状況の確認(API 接続を検証)公開
/tools国別の全ツール一覧トークン設定時に必須
/statusサーキットブレーカーの統計情報トークン設定時に必須
/metricsPrometheus のメトリクストークン設定時に必須

アーキテクチャ

nordic-registry-mcp-server/
├── main.go                 # Entry point, HTTP/stdio transport, security middleware
├── internal/
│   ├── base/              # Shared HTTP client with resilience
│   │   └── client.go      # Connection pooling, retries, rate limiting
│   ├── errors/            # Shared error types
│   │   └── errors.go      # NotFoundError, ValidationError
│   ├── infra/             # Resilience infrastructure
│   │   ├── cache.go       # LRU cache with TTL
│   │   └── resilience.go  # Circuit breaker, request deduplication
│   ├── norway/            # Norwegian registry (Brønnøysundregistrene)
│   ├── denmark/           # Danish registry (CVR)
│   ├── finland/           # Finnish registry (PRH)
│   └── sweden/            # Swedish registry (Bolagsverket, OAuth2)
├── tools/
│   ├── definitions.go     # Tool specifications (23 tools)
│   ├── handlers.go        # MCP tool registration
│   └── registry.go        # Tool metadata types
├── metrics/               # Prometheus metrics (namespace: nordic_registry_mcp)
└── tracing/               # OpenTelemetry tracing

レジリエンス機能

  • LRU キャッシュ:エンドポイントの種類に応じて TTL を設定します(検索:2分、詳細:5~15分、文書:30分、参照データ:24時間)
  • サーキットブレーカー:5回連続で失敗すると開き、30秒の復旧タイムアウトが発生します
  • リクエストの重複排除:同一の並行リクエストでは、1回の API 呼び出しを共有します
  • レート制限:セマフォベースの同時実行制御(同時リクエスト数:15)
  • バックオフ付き再試行:一時的な障害が発生した場合、ジッターを加えた指数バックオフを行います
  • レスポンスサイズの上限:API レスポンスは10MB、文書ダウンロードは100MB
  • トークン効率:ページ分割されたレスポンス(デフォルトで20件)により、LLM のコンテキスト使用量を最小限に抑えます

ドキュメント

ドキュメント説明
セットアップガイドインストール、設定、トラブルシューティング
API リファレンスパラメーター、戻り値、例を含む23個すべてのツールの完全なリファレンス
アーキテクチャシステム設計、リクエストの流れ、レジリエンスパターン
本番環境への対応Linux コンテナー、Docker、Kubernetes、モニタリング

開発

# Build
go build .

# Test
go test ./...

# Lint (requires golangci-lint)
golangci-lint run

将来の展望:Public 360°との連携

このサーバーは、北欧の公共機関で使用されている Public 360°の文書管理および案件管理システムへの AI アクセスを提供する public360-mcp-server と連携して動作するように設計されています。

連携のシナリオ:

担当者が企業から許可申請を受け取ります。現在のワークフローは次のとおりです。

  1. Public 360°で案件を開く
  2. Brønnøysundregistreneで企業を手動検索する
  3. 企業が事業を継続しており、破産していないことを確認する
  4. 署名者に権限があるか確認する
  5. 関連する詳細を案件にコピーする

両方の MCP サーバーを接続した場合:

You: "I received permit application case 2024/12345.
      The applicant is org 923609016. Verify the company
      and check if the signature is valid."

AI: [Calls public360: sif_get_cases to get case details]
    [Calls nordic-registry: norway_get_company to verify company]
    [Calls nordic-registry: norway_get_signature_rights to check authority]

Result: Case 2024/12345 - Environmental permit application
        Applicant: Equinor ASA (923609016) - ACTIVE
        Signed by: [Name] - Authorized signatory ✓

        Recommendation: Signature is valid. Company is in good standing.

連携予定箇所:

北欧の登記機関Public 360°ユースケース
norway_get_companysif_get_enterprises企業データを連絡先に同期する
norway_get_rolessif_get_contacts役員を連絡先としてインポートする
*_search_companiessif_create_case確認済みの企業情報を案件に自動入力する
sweden_download_documentsif_upload_file年次報告書を案件に添付する

これにより、別々の2つのデータソースが連携したワークフローになり、AI が1回の会話で外部データを確認し、内部システムを更新できるようになります。

強化された登記データ(将来)

現在の実装では、無料のオープン API を使用しています。より包括的なデータは、プレミアムサービスを通じて利用できます。

スウェーデン(Bolagsverket)

現在(無料)プレミアムで利用できる可能性のあるデータ
基本的な会社情報取締役および役職
年次報告書(årsredovisningar)署名権限を持つ代表者(firmatecknare)
会社のステータス会社抵当(företagsinteckningar)
リアルタイム更新(日次バッチではありません)
取締役の変更履歴

現在使用している無料の värdefulla datamängder API では、会社の基本情報と年次報告書を取得できます。Bolagsverket は、署名権限を持つ代表者や会社抵当に関する追加の電子サービスを提供しています。Roaring.io などのサードパーティのアグリゲーターは、複数の情報源を組み合わせた拡充済みデータセットを提供しています。

フィンランド(PRH)

現在(無料)Virre サービス
基本的な会社情報取締役およびマネージングディレクター
デジタル財務諸表(IXBRL)署名権限を持つ代表者
登記に関する通知委任状保持者
デジタル形式以外の財務諸表
翻訳済みの商業登記簿抄本
定款

無料の PRH Open Data API では、毎日更新される基本的な会社情報を取得できます。Virre Information Service では、取締役の詳細、署名権限の情報、書類の購入が可能です。契約クライアントは、大量アクセス時に割引料金が適用されます。

これが重要な理由:

ノルウェーではすでに、無料の Brønnøysundregistrene API を通じて、取締役、役職、署名権限を取得できます。スウェーデンとフィンランドのプレミアムデータを追加すれば、以下について 4 か国すべてで一貫した情報を利用できます。

  • 契約に署名できる人物の確認
  • デューデリジェンスに向けた取締役会の構成確認
  • 財務書類一式へのアクセス

その他の MCP サーバー

私が開発したその他の MCP サーバーもご覧ください。

サーバー説明スター数
gleif-mcp-serverGLEIF LEI データベースにアクセスします。会社の識別情報を検索し、法人を検証できます。GitHub stars
mediawiki-mcp-serverAI を任意の MediaWiki ウィキに接続します。ウィキのコンテンツを検索、閲覧、編集できます。GitHub stars
miro-mcp-serverAI で Miro のホワイトボードを操作します。ボード、図表、マインドマップなどを扱えます。GitHub stars
productplan-mcp-serverProductPlan のロードマップを操作します。OKR、アイデア、ローンチについて問い合わせできます。GitHub stars
tilbudstrolden-mcp北欧の食料品セールを探します。特売品の検索、献立の計画、支出の追跡ができます。GitHub stars

ライセンス

Apache License 2.0

クレジット

コメント

MCP は初めてですか?

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

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