Delphi MCP コンポーネント — Model Context Protocol クライアントとサーバー

Model Context Protocol を通じて Delphi アプリケーションを AI エコシステムに接続します。TsgcWSAPIServer_MCP はアプリケーションのツール、プロンプト、リソースを AI モデルに公開し、TsgcWSAPIClient_MCP はあらゆる MCP 互換サーバーを利用します。同じライブラリには OpenAI、Anthropic Claude、Google Gemini 向けの AI API クライアントも同梱されます。

AI モデルとアプリケーションの間の橋

MCP は、大規模言語モデルを外部のツールとデータに接続するための新興標準です。AI プロバイダーごとのカスタム統合の代わりに、実装するのは 1 つのプロトコルだけです。

Delphi での Model Context Protocol とは、既存の VCL または FMX アプリケーションが AI からアクセス可能なサービスになれるということです。プロトコルは JSON-RPC ベースで、3 つのプリミティブを定義します: ツール(型付きパラメーターを持つ呼び出し可能な関数)、プロンプト(引数を持つ再利用可能なテンプレート)、リソース(URI アドレッシングで公開されるデータ)。MCP サーバーがそれらを公開し、MCP クライアント(Claude Desktop、Cursor、または自作の Delphi アプリケーション)がそれらを発見して呼び出します。

サーバーコンポーネントは sgcWebSockets の HTTP サーバーにアタッチし、stdio と HTTP の両トランスポートをサポートするため、同じコードが、サブプロセスとして起動するデスクトップ AI アシスタントにも、ネットワーク越しに呼び出すリモートエージェントにも対応します。クライアントコンポーネントは HTTP または HTTP Streamable 上で JSON-RPC を話し、カタログ面全体をカバーします: 初期化、ツールの列挙と呼び出し、プロンプトの取得、リソースの読み取り、さらに対話的 AI ワークフローのためのサンプリングとエリシテーション。

両コンポーネントは MCP 2026-07-28 仕様を実装しています: リクエストごとの _meta によるステートレスなリクエスト、server/discover、subscriptions/listen、マルチラウンドトリップリクエスト (MRTR)、Tasks 拡張。これらは 2025-11-25 との後方互換性も維持します。同じサーバーが両方の世代に応答し、サーバーが旧プロトコルのみを話す場合はクライアントが自動的にフォールバックします。

MCP サーバー

TsgcWSAPIServer_MCP: ツール、プロンプト、リソース、stdio / HTTP トランスポート

MCP クライアント

TsgcWSAPIClient_MCP: あらゆる MCP 互換サーバーを発見して呼び出し

AI API クライアント

TsgcHTTP_API_OpenAI、TsgcHTTP_API_Anthropic、TsgcHTTP_API_Gemini

コンパイラー

Delphi 7 から RAD Studio 13、C++Builder 10.1 Berlin から 13、Lazarus 4.4.0

プロトコルの両側

サーバー、クライアント、そして MCP が公開するものを消費する AI プロバイダークライアント。

型付きスキーマのツール

Tools.AddTool が呼び出し可能な関数とその InputSchema プロパティを登録します。呼び出しは、パース済みの引数と構造化レスポンスオブジェクトと共に OnMCPRequestTool イベントに到着します。

プロンプト & リソース

引数付きの再利用可能なプロンプトテンプレートと URI アドレスのリソースを、OnMCPRequestPrompt と OnMCPRequestResource 経由で提供します。

クライアントカタログ面

Initialize、ListTools、ListPrompts、ListResources、ListResourceTemplates、続いてイベント駆動のレスポンスを伴う RequestTool / RequestPrompt / RequestResource。

サンプリング & エリシテーション

クライアントは MCP サンプリング(サーバーが要求する AI モデルとの対話)とエリシテーション(ワークフロー途中でのユーザー入力の収集)という、プロトコルの 2 つの対話的拡張をサポートします。

認証

クライアント側の認証オプションには AuthenticationOptions.ApiKey による API キーが含まれます。OAuth2 保護された MCP サーバーについてはブログを参照してください。

MCP 2026-07-28

ステートレスなリクエスト、server/discover、検証付きの Mcp-Method / Mcp-Name / Mcp-Param ヘッダー、キャッシュヒント (ttlMs、cacheScope)、新しいエラーコード。クライアント側の MCPOptions.ProtocolEra で Auto、Modern、Legacy を選択できます。

Multi Round-Trip Requests

ツールが aResponse.InputRequired を通じて Elicitation (フォームまたは URL)、Sampling、Roots を要求します。クライアントは OnMCPInputRequired で応答し、HMAC 署名された requestState を使って再試行します。

Subscriptions & Tasks

subscriptions/listen は、リスト変更やリソース更新をストリームとして配信します。io.modelcontextprotocol/tasks 拡張 (CreateTask) は、長時間実行するツールをバックグラウンドで実行し、クライアントコンポーネントは MCPOptions.Tasks.Enabled でポーリングするか、TasksGet で直接取得します。

MCP クライアント OAuth

MCPOptions.Authorization:保護リソースのメタデータディスカバリー、Client ID Metadata Documents、動的登録へのフォールバック、リソースインジケーター付き PKCE、RFC 9207 の iss 検証、発行者ごとの認証情報。

2 つのトランスポート

サブプロセス起動サーバー向けの stdio(Claude Desktop モデル)と、ネットワークデプロイ向けの HTTP。1 つのコンポーネントで両チャネル。

AI クライアントファミリー

モデルと直接対話することも可能です: OpenAI、Anthropic Claude、Google Gemini に対するチャット、ストリーミング、関数呼び出し。同じ AI ファミリーには DeepSeek、Grok、Mistral、Ollama も。

クロスプラットフォーム

Windows 32/64、Linux 64、macOS(Intel と ARM)、iOS、Android。VCL と FireMonkey、設計時コンポーネント付き。

エディション

MCP サーバー、MCP クライアント、AI API クライアントは sgcWebSockets の Enterprise エディション機能です。

Delphi で MCP サーバーと MCP クライアント

サーバーで型付き引数を持つツールを登録し、クライアントからそれを発見して呼び出します。

uses
  sgcWebSocket_Server, sgcAI, sgcAI_MCP_Classes, sgcAI_MCP_Server;

procedure TForm1.SetupMCPServer;
begin
  // Attach the MCP API component to a sgcWebSockets HTTP server
  MCPServer.Server := Server;
  MCPServer.EndpointOptions.Endpoint := '/mcp';
  MCPServer.MCPOptions.ServerInfo.Name    := 'sgc-mcp-server';
  MCPServer.MCPOptions.ServerInfo.Version := '1.0.0';

  // Register a callable tool with a typed argument
  with MCPServer.Tools.AddTool('GetTemperature',
    'Get the actual temperature in a city.') do
    InputSchema.Properties.AddProperty('city', True);

  MCPServer.OnMCPRequestTool := MCPRequestTool;
  Server.Port   := 8080;
  Server.Active := True;
end;

procedure TForm1.MCPRequestTool(Sender: TObject;
  const aSession: TsgcAI_MCP_Session;
  const aRequest: TsgcAI_MCP_Request_ToolsCall;
  const aResponse: TsgcAI_MCP_Response_ToolsCall);
begin
  if aRequest.Params.Name = 'GetTemperature' then
    aResponse.Result.Content.AddText('The current temperature in ' +
      aRequest.Params.Arguments.Item[0].Value + ' is 22 Celsius');
end;
uses
  sgcAI_MCP_Client, sgcAI_MCP_Classes;

var
  MCP: TsgcWSAPIClient_MCP;
begin
  MCP := TsgcWSAPIClient_MCP.Create(nil);
  MCP.MCPOptions.HttpOptions.URL        := 'https://mcp.example.com/';
  MCP.MCPOptions.ClientInfo.Name        := 'sgc-mcp-client';
  MCP.MCPOptions.ClientInfo.Title       := 'sgc MCP demo';
  MCP.MCPOptions.ClientInfo.Version     := '1.0.0';
  MCP.MCPOptions.AuthenticationOptions.ApiKey.Enabled := True;
  MCP.MCPOptions.AuthenticationOptions.ApiKey.Value   := 'sk-mcp-...';

  MCP.OnMCPInitialize    := MCPInit;
  MCP.OnMCPListPrompts   := MCPListPrompts;
  MCP.OnMCPListTools     := MCPListTools;
  MCP.OnMCPResponseTool  := MCPToolResponse;

  MCP.Initialize;
  MCP.ListPrompts;
  MCP.ListResources;
  MCP.ListTools;
  MCP.RequestTool('GetTemperature', '{"city":"Madrid"}');
end;

Delphi チームが MCP で構築するもの

データベースエージェント

制御された型付きツールを通じて、AI モデルにアプリケーションのデータを照会させます。読み取り専用か読み書き可能かは、呼び出しごとにハンドラーが決めます。

業務自動化

CRM、ERP、チケッティングの操作を MCP ツールとして公開し、自然言語の指示で既存の Delphi ビジネスロジックを駆動します。

AI 搭載デスクトップツール

レガシーアプリケーションの機能を stdio MCP サーバーでラップし、Claude Desktop のようなアシスタントにアクセスさせます。

マルチステップ AI ワークフロー

取得、処理、アクションのためのツールとリソースを単一の AI 駆動パイプラインに連結し、Delphi 側からオーケストレーションします。

sgcWebSockets での MCP と AI の詳細

MCP 概要

Model Context Protocol とは何か、サーバーとクライアントのコンポーネントがどう作業を分担するか。

MCP サーバーコンポーネント

TsgcWSAPIServer_MCP の完全リファレンス: プロパティ、メソッド、イベント。

MCP クライアントコンポーネント

TsgcWSAPIClient_MCP の完全リファレンス: カタログメソッドとレスポンスイベント。

ブログ: MCP サーバーの構築

動作する Delphi MCP サーバーのステップ・バイ・ステップのウォークスルー。

ブログ: MCP クライアント

Delphi クライアントを MCP サーバーに接続し、そのツールを呼び出す。

ブログ: MCP 認証

MCP エンドポイントの保護: Delphi からの API キーと認証済みフロー。

最もお得な選択: All-AccesseSeGeCe の全製品にプレミアムサポートが付いて、年間 €1,059 からご利用いただけます。
All-Access の価格を見る

今日、MCP で構築を始める

トライアルをダウンロードし、お気に入りの AI アシスタントに対して MCP サーバーとクライアントのデモを実行してください。