カスタムコンテキストMCPサーバー
このモデル コンテキスト プロトコル (MCP) サーバーは、JSON テンプレートに従ってテキストを構造化し、テキストからデータを抽出するためのツールを提供します。
特徴
テキストからJSONへの変換
プレースホルダー付きのJSONテンプレートに基づいてテキストをグループ化および構造化する
AI生成テキストから情報を抽出し、構造化されたJSON形式に変換する
ネストされたプレースホルダーを持つ任意の JSON 構造のサポート
テキストからのキーと値のペアのインテリジェントな抽出
AI出力を下流アプリケーション向けの構造化データに処理する
Related MCP server: mcp-data-extractor
はじめる
インストール
npm installサーバーの実行
npm startホットリロードを使用した開発の場合:
npm run dev:watch使用法
この MCP サーバーは、主に 2 つのツールを提供します。
1. JSONでテキストをグループ化する( group-text-by-json )
このツールは、プレースホルダー付きの JSON テンプレートを受け取り、テンプレートの構造に従って AI がテキストをグループ化するためのプロンプトを生成します。
{
"template": "{ \"type\": \"<type>\", \"text\": \"<text>\" }"
}このツールはテンプレートを分析し、プレースホルダー キーを抽出し、キーと値の形式で情報を抽出できるように AI をガイドするプロンプトを返します。
2. テキストからJSONへ( text-to-json )
このツールは、前のステップでグループ化されたテキスト出力を取得し、元のテンプレートに基づいて構造化された JSON オブジェクトに変換します。
{
"template": "{ \"type\": \"<type>\", \"text\": \"<text>\" }",
"text": "type: pen\ntext: This is a blue pen"
}テキストからキーと値のペアを抽出し、テンプレートに従って構造化します。
ワークフローの例
プレースホルダーを含む JSON テンプレートを定義します。
{ "item": { "name": "<name>", "price": "<price>", "description": "<description>" } }AI のプロンプトを作成するには、
このツールはプレースホルダーキー(名前、価格、説明)を識別します。
AIにこれらのキーで情報をグループ化するように指示するプロンプトを生成します
プロンプトを AI モデルに送信し、グループ化されたテキストを受信します。
name: Blue Pen price: $2.99 description: A smooth-writing ballpoint pen with blue inkグループ化されたテキストを JSON に変換するには、
結果: GXP8
テンプレート形式
テンプレートには、有効な JSON 構造内の任意の場所にプレースホルダーを含めることができます。
山括弧を使用してプレースホルダーを定義します:
<name>、<type>、<price>など。テンプレートは有効なJSON文字列である必要があります
プレースホルダはどの階層にあっても構いません
複雑なネスト構造をサポート
ネストされたプレースホルダーを含むテンプレートの例:
{
"product": {
"details": {
"name": "<name>",
"category": "<category>"
},
"pricing": {
"amount": "<price>",
"currency": "USD"
}
},
"metadata": {
"timestamp": "2023-09-01T12:00:00Z"
}
}実装の詳細
サーバーは次のように動作します:
JSONテンプレートを分析してプレースホルダーキーを抽出する
これらのキーで情報を抽出できるようにAIモデルを誘導するプロンプトを生成する
AI生成テキストを解析してキーと値のペアを抽出する
元のテンプレート構造に基づいてJSONオブジェクトを再構築する
発達
前提条件
Node.js v18以上
npmまたはyarn
ビルドと実行
# Install dependencies
npm install
# Build the project
npm run build
# Run the server
npm start
# Development with hot reloading
npm run dev:watchカスタムホットリロード
このプロジェクトには、以下を組み合わせたカスタム ホット リロード セットアップが含まれています。
nodemon : src ディレクトリ内のファイルの変更を監視し、TypeScript ファイルを再構築します。
browser-sync : ビルドファイルが変更されるとブラウザを自動的に更新します
同時実行:出力同期で両方のサービスを同時に実行します
セットアップは次の場所で構成されます:
nodemon.json: TypeScriptの監視と再構築を制御するpackage.json: nodemon と browser-sync を同時に実行するために使用します
カスタム ホット リロード機能を使用するには:
npm run dev:watchこれにより、次のような開発環境が作成されます。
TypeScriptファイルは変更されると自動的に再構築されます
MCPサーバーは更新されたコードで再起動します
接続されたブラウザは最新の変更を表示するために更新されます
MCP Inspectorと併用
デバッグには MCP Inspector を使用できます。
npm run devこれにより、リクエストと応答を視覚的にデバッグするための MCP Inspector を使用してサーバーが実行されます。
Resources
Looking for Admin?
Admins can modify the Dockerfile, update the server description, and track usage metrics. If you are the server author, to access the admin panel.