mcpField
E
Evlek — Northern Cyprus Property Mcp

Evlek — Northern Cyprus Property Mcp

リモート
evlek.appビジネス・マーケティング02 週間前に更新
リポジトリ公式サイト

Evlek — Northern Cyprus Property Mcp について

Evlekは、北キプロスの物件を探すAIエージェントやクライアント向けのホステッドMCPサーバーです。リアルタイムの物件検索、地域・市場データ、通貨換算を提供し、価格評価や投資助言ではなく掲載情報を返します。

主な機能

  1. 01売買・賃貸物件のリアルタイム検索
  2. 02物件詳細の表示と比較
  3. 03都市・地区別の市場統計
  4. 04地域ディレクトリと場所検索
  5. 05GBP、EUR、USD、TRYの換算
  6. 065言語での結果表示

活用シーン

  1. 01都市、価格、部屋数、設備で物件を検索
  2. 02選んだ物件の詳細確認と比較
  3. 03都市や地区の掲載価格データを確認
  4. 04対応通貨間で物件価格を換算

MCP 対応

MCPクライアントに、読み取り専用の物件検索、物件情報、市場、地域、通貨換算ツールを公開します。ホステッドエンドポイントは、対応ホストで物件や統計のインタラクティブ表示も提供します。

設定

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

エンドポイントhttps://evlek.app/api/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 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。

ツール

14
パラメーター型必須説明
cityenumいいえ絞り込む都市girne | iskele | lefkosa | gazimagusa | guzelyurt | lefke
typeenumいいえ物件タイプsale | rent
propertyTypeenumいいえ物件種別フィルターapartment | residence | villa | twin | detached | bungalow | penthouse | studio | duplex | shop | office | warehouse | whole_building | residential_land | commercial_land | farmland
bedroomsnumberいいえ寝室数(整数、0~10)
minPricenumberいいえ最低価格(GBP)
maxPricenumberいいえ最高価格(GBP)
sortByenumいいえ並べ替え順(デフォルト:新しい順)newest | price_asc | price_desc | area_desc | price_per_sqm_asc
limitnumberいいえ結果数(整数、1~10、デフォルト 5)

詳細

Evlek MCP サーバー

MCP Hosted License Coverage MCP Registry smithery badge

北キプロス(KKTC)のAIネイティブな物件検索です。Model Context Protocolを基盤としており、Claude、ChatGPT、Gemini、Cursor、およびMCP対応のあらゆるクライアントで利用できます。

Evlek MCP サーバーは、AI エージェントに北キプロスの物件データへの構造化されたリアルタイムアクセスを提供します。有効な掲載物件の検索、都市や地区の比較、価格指数の追跡が可能です。データはすべてevlek.appからリアルタイムで取得されます。Evlekは賃貸利回りや投資収益の推定値を提供しません。数値は掲載価格に関する記述的な事実のみであり、評価、予測、推奨ではありません。権利証書(koçan)および法的手続きに関するツールは、意図的に提供機能に含めていません。この分類は、独立したKKTC法務監査を受けていないためです。

ライセンスの範囲

このリポジトリは、ここに含まれる公開マニフェスト、ドキュメント、サンプル、リファレンスクライアントをMITライセンスで提供します。ホスト型のEvlekサービス、evlek.appウェブアプリ、モバイルアプリ、物件データベース、AIプロンプト、ビジネスロジック、ブランドアセット、名称、ロゴ、トレードドレスは引き続き独占的な所有物であり、MITライセンスの対象ではありません。詳細はLICENSEをご覧ください。


Evlek MCPを選ぶ理由

  • AIを第一に設計。 レガシーな物件掲載APIに後付けするのではなく、初日からエージェント型ワークフロー向けに構築されています。
  • 多言語対応。 TR、EN、RU、DE、ARで回答します。localeを渡すか、その言語でsearchクエリを記述すると、テキスト、設備名、数値形式、リンクもその言語に合わせて表示されます。地名は5言語すべてで解決されます。
  • 確認情報に対応した物件掲載。 利用可能な場合、Evlekは物件掲載とアカウントの確認情報を提示します。また、Evlekの連絡先開示の導線を維持するため、MCPは連絡先フィールドを省略します。
  • 地域に特化。 北キプロスの6都市(Lefkoşa、Girne、Gazimağusa、İskele、Güzelyurt、Lefke)と100以上の地区に最適化されています。
  • 本番環境に対応。 OWASP MCP Top 10に準拠しており、Zod入力検証、出力サニタイズ、レート制限(IPあたり毎分60回、全体で毎分500回)、Sentryによる可観測性を備えています。

クイックスタート

リモート接続対応クライアント(推奨)

最新のMCPクライアントのほとんど(Claude、Cursor、VS Code)は、Streamable HTTPエンドポイントに直接接続できるため、ローカルブリッジは不要です。

{
  "mcpServers": {
    "evlek": {
      "url": "https://evlek.app/api/mcp"
    }
  }
}
ChatGPT(コネクター + Deep Research)

カスタムコネクターとしてhttps://evlek.app/api/mcpを追加します。EvlekはOpenAI互換のsearchおよびfetchツールを公開しているため、開発者モードに加えて、ChatGPTコネクターやDeep Researchでも利用できます。

Claude Desktop(旧式のstdioブリッジ)

クライアントがstdioサーバーにしか対応していない場合は、バージョンを固定したmcp-remoteブリッジを使用します。macOSの場合は~/Library/Application Support/Claude/claude_desktop_config.json、Windowsの場合は%APPDATA%\Claude\claude_desktop_config.jsonに以下を追加してください。

{
  "mcpServers": {
    "evlek": {
      "command": "npx",
      "args": ["-y", "[email protected]", "https://evlek.app/api/mcp"]
    }
  }
}

Claude Desktopを再起動します。「evlek」サーバーがツール一覧に表示されます。

MCP Inspector(インストール前のテスト)
npx @modelcontextprotocol/inspector https://evlek.app/api/mcp
直接API(cURL)
curl -X POST https://evlek.app/api/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

その他の設定例: examples/


ローカル stdio サーバー(このリポジトリ)

このリポジトリは、そのまま実行できる MCP サーバーでもあります。組み込みのツールコントラクト(tools.json)を使って、initialize / tools/list にはすべてローカルで応答し、ツールが呼び出されると Evlek データ API から最新データを取得します。ツールのみを実装しており、resources や prompts の機能は宣言しません。そのため、このブリッジでは resources/list と prompts/list は通常の MCP「メソッドが見つかりません」エラーを返します。これらのプリミティブ(以下を参照)はホスト型エンドポイントでのみ提供され、上記の Streamable HTTP URL から利用できます。また、initialize の際には、固定された @modelcontextprotocol/sdk がサポートする MCP プロトコルバージョン(現在は 2025-11-25)を使用します。ホスト型エンドポイントの 2026-07-28 とは異なる場合があります。どちらのバージョンでもツールスキーマは同一です。

npx github:Evlek/evlek-mcp        # or: npm install && npm start
{
  "mcpServers": {
    "evlek": {
      "command": "npx",
      "args": ["-y", "github:Evlek/evlek-mcp"]
    }
  }
}

スモークテストを実行します(サーバーを起動し、stdio 経由で実際の MCP 通信を行います)。

npm test              # live: initialize + tools/list + a real tools/call
OFFLINE=1 npm test    # offline: introspection works with zero network

利用可能なツール

8 個のツール · プロトコル 2026-07-28 · Streamable HTTP JSON-RPC 2.0

ツールタイトル説明
search_listings北キプロスの物件リストを検索ユーザーが物件リストを見つけたい、または確認したい場合に使用します。検索結果は、実際の写真とともにEvlekウィジェットに表示されます。北キプロス(KKTC/TRNC)の売買および長期賃貸のEvlek掲載物件を、取引種別、都市、地区、物件タイプ、寝室数、価格、面積、設備、近隣の大学で構造化して絞り込み、リアルタイムで検索します(通貨が指定されていない場合、価格はGBP建てです。2+1は寝室2室を意味します)。ユーザーの言語をlocale(tr|en|ru|de|ar)として渡してください。テキスト、設備名、数値形式、リンクはその言語に従います。1回の呼び出しで最大10件を返します。各物件は、読みやすい1行(タイプ、場所、価格、部屋数、面積、定型文、データに関する注記、正式リンク)と構造化カードで表示されます。続きはグループのnextCursorを使って取得してください。transactionを指定しない場合、売買と賃貸の物件はそれぞれ独立したグループとして返され、各グループ固有のカーソルは、そのグループの取引種別と組み合わせた場合にのみ有効です。場所の名前はどの言語でも解決されます。不明な場所の場合、検索結果の代わりに候補が返されます。絞り込みに使えない設備は、適用されなかったことが報告されます。1件の物件を取得するにはget_listingを使用してください。返されるのは広告上の希望価格と掲載情報のみです。査定、物件固有の主張の検証、予測、ランキング、推奨は行いません。
searchEvlekの物件リストを検索調査および引用の検索(詳細調査)にのみ使用してください。ユーザーに物件リストを表示する場合は、代わりにsearch_listingsを使用してください。トルコ語、英語、ロシア語、ドイツ語、アラビア語の自由記述クエリで、Evlekに掲載されている北キプロス(KKTC/TRNC)の物件をリアルタイムで検索します。取得ツール用に、一致した物件をid/title/urlとして新しい順に返します(クエリで取引種別が指定されていない場合、売買と賃貸を2つのグループに分けます)。回答の言語はクエリの言語に従います。search_listingsと同じデータを返します。この固定形式は、ChatGPT/OpenAIコネクターの契約に対応するためのものです。使用する場合:呼び出し元が自由記述クエリ(「キレニアの150000ポンド以下の2+1アパート」、「EVL-100464」など)しか持っていない場合。使用しない場合:構造化フィルター、ページ送り、または別の回答言語が必要な場合は、search_listingsを使用してください。
fetchEvlek物件の詳細を取得1件のEvlek物件の詳細全体(タイトル、価格、場所、部屋数、面積、設備、データ品質に関する注記、正式リンク)を取得します。idには、検索結果の掲載物件id(UUID)、EVL-100464のような物件番号、またはevlek.appの物件リンクを指定します。回答の言語はリンクに従います(それ以外は英語です)。利用できない物件(存在しない、公開されていない、または削除された物件)には、常に同じ回答が返されます。get_listingと同じデータを返します。この固定のidのみの形式は、ChatGPT/OpenAIコネクターの契約に対応するためのものです。使用する場合:検索結果のidがわかっている場合。使用しない場合:物件の検索(先にsearchを使用してください)、または別の回答言語が必要な場合(get_listingを使用してください)。
get_listingEvlekの物件を取得ユーザーの言語で、公開中のEvlek物件(売買または長期賃貸)を1件の詳細まで取得します。refには、掲載物件id(UUID)、物件番号(EVL-100464または100464のみ)、あるいは任意の言語のevlek.app物件リンクを指定します。価格、部屋数、バスルーム数、建築面積と土地面積(常に別々に表示)、おおよその場所、特徴、事務所名、日付、データ品質に関する注記、キャプション付きの写真(ある場合)、事務所が承認したAIバーチャルステージングの適用前後の画像(必ずAI生成と表示)、および正式リンクを返します。連絡先情報は一切含まれません。ユーザーをリンクに案内してください。不明または公開終了の物件には、code NOT_FOUNDを付けたfound:falseが返されます(これはエラーではありません)。ユーザーの言語をlocale(tr、en、ru、de、ar)として渡してください。
compare_listingsEvlekの物件を比較公開中のEvlek物件を2~4件、ユーザーの言語で横並びに比較します。価格、m²あたりの価格(建築面積が信頼できる場合のみ)、部屋数、バスルーム数、建築面積と土地面積(常に別々に表示)、場所、家具の有無、主な特徴、データ品質に関する注記に加え、説明的なハイライト(最低価格、最大の屋内面積、最も新しく掲載された物件)をいくつか表示します。idsには掲載物件id(UUID)、物件番号(EVL-100464)、またはevlek.app物件リンクを、自由に組み合わせて指定できます。指定した順序は維持されます。売買物件と賃貸物件を相互にランキングすることはありません。混在したリクエストは警告とともに2つのグループに分けて表示されます。不明または公開終了の参照先は、code NOT_FOUNDを付けてmissingIdsに記載されます(これはエラーではありません)。返されるのは説明的な事実のみです。査定や推奨は行いません。ユーザーの言語をlocale(tr、en、ru、de、ar)として渡してください。
market_stats北キプロスの市場統計公開中の掲載物件の希望価格に基づく北キプロスの市場統計です(成約価格、査定価格、予測ではありません)。都市の指定なし=都市別の島全体、都市を1つ指定=その都市の地区別、都市を複数指定=横並び、都市と地区の指定=地区の詳細データとなります。売買と賃貸は別々に報告されます。各数値にはactiveCount(対象範囲内の公開物件数)とsampleCount(統計の基となるクリーニング済みサンプル数)が含まれます。サンプル物件が10件未満の場合、その数値は表示されません。localeを渡してください。
list_locationsEvlekの場所を一覧表示北キプロスでEvlekが認識している場所(6つの都市、地区、村、地域区分、ランドマーク、カルパス地域)と、それぞれの公開中の売買および長期賃貸物件数を一覧表示します。場所の綴りがわからない場合は、まずこれを呼び出してください。返されたすべての名前とidは、ほかのツールでも受け付けられます。1つの場所の詳細を表示するには、city(任意の綴りまたは言語)を渡してください。名前はトルコ語またはラテン文字表記です。ロシア語、ドイツ語、アラビア語の綴りは入力として受け付けますが、一覧には表示されません。
convert_currency通貨換算(GBP/EUR/USD/TRY)Evlekが保存している為替レート(毎日更新)を使い、GBP、EUR、USD、TRY間で金額を換算して、4通貨すべての換算額を返します。通貨換算のみです。支払いプラン、手付金や分割払いのスケジュール、税金、手数料、取得費用の見積もり、助言は含まれません。為替レートが24時間以上古い場合は古いレートとして警告されます。72時間を超えている場合(または保存されているレートがない場合)、換算は行われません(FX_UNAVAILABLE)。
すべてのツールで annotations: { readOnlyHint: true, destructiveHint: false, openWorldHint: false } が宣言されており、全体が読み取り専用です。
インタラクティブウィジェット(MCP Apps / SEP-1865)

5つのツールでは、サンドボックス化されたHTMLビュー(_meta.ui.resourceUri)もバインドされており、MCP Appsに対応したホスト(Claudeのウェブ版/デスクトップ版)では会話内にインライン表示されます。

ツールウィジェット表示内容
search_listings, searchui://evlek/listing-cards-v3-11.html物件カード(カバー写真、価格、所在地)。カードを開くと物件詳細ビューが表示されます。ChatGPTでは、「地図に表示」を選ぶと、すべての検索結果を示す全画面マップが開きます
get_listing, fetchui://evlek/listing-detail-v3-8.htmlフォトギャラリー、仕様書、AIによるバーチャルステージングのビフォー/アフター(常にAI生成であることを明示)
market_statsui://evlek/price-index-v3-6.html都市/地区ごとの売出価格統計

compare_listings、list_locations、convert_currency にはウィジェットがありません。ホストがv3のデータに対してキャッシュ済みのv2テンプレートを配信しないよう、3.0.0でウィジェットのURIを -v2 から -v3 に変更しました。3.0.1では -v3-1 に、3.0.2では -v3-2 に、3.0.3では -v3-3 に、3.1.0では -v3-4 に変更し、その後カードと詳細ビューを -v3-5 に変更しました。3.1.4では、カードに -v3-11、詳細ビューに -v3-8、価格指数に -v3-6 を使用しています。以前のv3 URIも、引き続き最新のコンテンツを返します。3.1.0以降のルールとして、公開時のURIでウィジェットのコンテンツが変更されることはありません(ホストはURIごとにテンプレートをキャッシュするためです)。ウィジェットを変更する場合は、新しいURIを使用します。

ChatGPTでは(3.0.2以降、search は3.0.3以降)、物件データは結果の _meta["evlek/widget"] を介してウィジェットに渡されます。この情報はChatGPTではウィジェットにのみ表示されます。search_listings と get_listing では、モデルには短い要約(件数、価格帯、物件番号)が渡されます。それ以外のクライアントには、従来どおり完全な structuredContent が渡されます。

ビューは静的で自己完結型のHTMLであり、バンドラーやサードパーティ製JavaScriptは使用しません。物件データは実行時に postMessage 経由でのみビューに渡され、innerHTML ではなく textContent を使用して書き込まれます。CSPはリソースごとに(_meta.ui.csp)宣言され、公開されている物件写真のオリジンに制限されています。

入力スキーマ、パラメーターの詳細、レスポンス例については、TOOLS.md をご覧ください。

リソース(12)とリソーステンプレート(2)

ホストされたエンドポイントで resources/list を呼び出すと、12個のリソースが返されます。内訳は、読み取り専用の evlek:// データリソース9個と、上記のインタラクティブウィジェット用 ui:// リソース3個です(ホストが事前にキャッシュできるよう、あらかじめ宣言されています)。パラメーター付きテンプレートは別途、resources/templates/list から取得できます。

  • テンプレート(2): evlek://price-index/{city} · evlek://district/{city}/{district}
  • データリソース(9): 都市別価格指数(girne、iskele、lefkosa、gazimagusa、guzelyurt、lefke)、地区プロフィールのサンプル(Girne/Alsancak)、方角ガイド2件 — evlek://guides/neighborhood-personas、evlek://guides/universities
  • ウィジェットリソース(3): ui://evlek/listing-cards-v3-11.html、ui://evlek/listing-detail-v3-8.html、ui://evlek/price-index-v3-6.html — 上記の「インタラクティブウィジェット」をご覧ください。
3.0.0 で名称が変更されたツール(非推奨のエイリアス)

3.0.0 では、v2 の 12 個のツールを 8 個に統合しています。以下の古い名前は、すでに tools/list には表示されませんが、ホステッドエンドポイントでは、1 リリースの間 引き続き利用できます。呼び出しは新しいツールに変換されて実行され、結果の先頭に Deprecated: … Use <new> instead. という行が追加されます(さらに structuredContent.deprecated も含まれます)。エイリアスは 3.1.0 で削除されます — 今すぐ 新しい名前に切り替えてください。

古い名前(v2)新しい名前(3.0.0)引数の変更
get_listing_detailget_listingpropertyId / property_id → ref
get_listing_by_numberget_listinglistingNumber / listing_number → ref
compare_propertiescompare_listingslistingIds / listing_ids → ids
get_price_indexmarket_statscity はそのまま、type → transaction(デフォルトは sale)
compare_citiesmarket_statscities → city、type → transaction(デフォルトは sale)
get_district_profilemarket_statscity、district はそのまま
payment_planconvert_currencyprice → amount(名前は将来の分割払いツール用に予約されています)

変更のない名前:search_listings、search、fetch、list_locations、 convert_currency。search_listings、list_locations、convert_currency には新しいパラメーターと正規名が追加されています(例:transaction、priceMin/priceMax、 sort、cursor、amount、locale)。詳しくは TOOLS.md をご覧ください。v2 の名前 type、maxPrice、price は、ホステッドエンドポイントでも引き続き受け付けられます。 2.0.0 以前に削除されたツール(get_yield_estimate、suggest_neighborhood、 student_housing、get_market_overview、get_legal_info)は、エイリアスではなく、置き換え先を示す プロトコルエラーを引き続き返します。

プロンプト(2)
  • property_scenario — 個別の最新情報を含む不動産シナリオの例
  • student_rental_scenario — 学生向け賃貸シナリオの例

プロンプトの例

  • 「Girne で月額 £1,500 未満の2ベッドルームのフラットを探してください。」
  • 「Girne で £150,000 未満のアパートを表示してください。」
  • 「Lefkoşa の1平方メートルあたりの販売価格の中央値はいくらですか?」
  • 「Kyrenia と Famagusta を比較してください。掲載中の物件数が多いのはどちらで、希望価格の中央値にはどのような違いがありますか?」
  • 「Alsancak の地区プロフィールはどのようなものですか?」
  • 「£150,000 を EUR、USD、TRY に換算してください。」

対応範囲

  • 都市: 6(Girne、İskele、Lefkoşa、Gazimağusa、Güzelyurt、Lefke)
  • 地区: 100 以上
  • 通貨: GBP が基準通貨です。TRY/USD/EUR は、サーバー側で毎日の最新為替レートを使用して GBP に換算されます
  • ツールの説明: EN · 回答: TR · EN · RU · DE · AR(locale)

アーキテクチャ

Evlek MCP サーバーは、https://evlek.app/api/mcp のホステッドエンドポイントとして実行されます。Streamable HTTP(JSON-RPC 2.0)を介して Model Context Protocol に対応し、protocolVersion 2026-07-28 を使用して、ツール、リソース、リソーステンプレート、プロンプトを公開します。検出用メタデータは /.well-known/mcp.json で公開されています。

このリポジトリには、次のものが含まれています。

  • server.json — MCP Registry マニフェスト
  • tools.json — ライブのツールコントラクト(ローカルの stdio サーバーが tools/list に応答する内容)
  • TOOLS.md — ツールの完全なリファレンス(JSON スキーマと例)
  • CHANGELOG.md — 削除・名称変更されたツールを含む、ツールの変更点
  • examples/ — Claude Desktop、Cursor、VS Code 用の設定ファイル
  • CONTRIBUTING.md — 問題の報告方法とドキュメント改善の提案方法
契約ファイル(contract files)
  • tools.json と TOOLS.md は稼働中のサーバーを投影したもので、ソースリポジトリで pnpm mcp:export-public によって生成され、ここにそのままコピーされています。手作業で編集しないでください。「Contract Drift」ワークフローでは、tools.json と稼働中の tools/list が毎日およびすべての PR で比較されます。
  • server.json はその投影ではありません。MCP Registry の公開マニフェストであり、レジストリの形式を維持する必要があります。name は app.evlek/mcp-server(パターン ^[a-zA-Z0-9.-]+/[a-zA-Z0-9._-]+$)、description は 100 文字以内でなければなりません。同期で更新されるのは version、description 内のツール数、および _meta のツールリストのみです。エクスポート側の server.json をここにコピーしたことが、v2.1.0 のレジストリ公開に失敗した原因です。

サーバーの完全な実装(データベーススキーマ、API ルート、AI プロンプトエンジニアリング、リスティングパイプライン)は evlek.app でホストされており、独自の専有物です。

セキュリティモデル

OWASP MCP Top 10 に準拠:IP ごとのレート制限は 60/分、全体で 500/分、ハードタイムアウトは 30 秒、Zod 入力検証、出力のサニタイズ(プロンプトインジェクション対策)、クエリあたり最大 10 件の結果、Supabase anon key + RLS、スタックトレースの非公開、Sentry によるオブザーバビリティ。

セキュリティ上の問題を報告する場合は、[email protected] までメールでご連絡ください。


ステータス

  • MCP バージョン: 3.1.4(稼働中)
  • プロトコル: 2026-07-28
  • プリミティブ: 8 個のツール · 9 個のデータリソース + 3 個のインタラクティブウィジェットリソース · 2 個のリソーステンプレート · 2 個のプロンプト
  • 認証: なし(公開読み取り専用)
  • エンドポイント: https://evlek.app/api/mcp
  • MCP Registry: app.evlek/mcp-server

ライセンス

MIT — LICENSE を参照してください。MIT ライセンスの対象は、このリポジトリ内の公開マニフェスト、ドキュメント、サンプル、リファレンスクライアントに限られます(上記のライセンスの適用範囲を参照)。ホストされている Evlek サービス(ウェブアプリ、モバイルアプリ、リスティングデータ、AI プロンプト、データベーススキーマ、ビジネスロジック)は独自の専有物です。

商標に関する注意: 「Evlek」は Onur Dokuzoğlu の商標です。MIT ライセンスでは、この README に記載されている場合を除き、「Evlek」の名称、ロゴ、ブランドを使用する権利は付与されません。ブランドの使用許可を希望する場合は、[email protected] までお問い合わせください。


リンク


ソフトウェア企業ではなく、建築家によって北キプロスで開発されました。Anthropic Claude、Supabase、Vercel、および Model Context Protocol を活用しています。

コメント

MCP は初めてですか?

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

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