mcpField
P
pREST

pREST

ローカル
github.com/prestデータベース016 週間前に更新

pREST について

pREST MCP Adapterは、stdio接続が必要なMCPクライアントを、稼働中のpRESTのHTTP `/_mcp`エンドポイントにつなぐトランスポートブリッジです。プロトコルメッセージを転送し、ツールの実装やスキーマの調査は行いません。

主な機能

  1. 01stdioのMCP通信をHTTPへ中継
  2. 02pRESTの`/_mcp`エンドポイントに接続
  3. 03任意のBearerトークン認証
  4. 04HTTPタイムアウトの設定
  5. 05ログをstderrに出力

活用シーン

  1. 01stdio専用のMCPクライアントをpRESTに接続
  2. 02認証付きpRESTエンドポイントでBearerトークンを使用
  3. 03Dockerでアダプターを実行

MCP 対応

クライアントのstdioトランスポートとpRESTのHTTP MCPエンドポイントの間で、MCP JSON-RPCメッセージを中継します。MCPツールとスキーマ処理はpRESTが担い、アダプターは実装しません。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"prest-prest": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"PREST_MCP_URL",
"-e",
"PREST_MCP_TOKEN",
"-e",
"PREST_MCP_TIMEOUT_MS",
"ghcr.io/prest/prest-mcp-adapter:0.1.3"
],
"env": {
"PREST_MCP_URL": "<PREST_MCP_URL>",
"PREST_MCP_TOKEN": "<PREST_MCP_TOKEN>",
"PREST_MCP_TIMEOUT_MS": "<PREST_MCP_TIMEOUT_MS>"
}
}
}
}
起動コマンドdocker run -i --rm -e PREST_MCP_URL -e PREST_MCP_TOKEN -e PREST_MCP_TIMEOUT_MS ghcr.io/prest/prest-mcp-adapter:0.1.3
設定が必要な環境変数
PREST_MCP_URLURL of your running pREST HTTP MCP endpoint, for example http://localhost:3000/_mcp
PREST_MCP_TOKENシークレットOptional bearer token used to authenticate with the pREST MCP endpoint.
PREST_MCP_TIMEOUT_MSOptional HTTP timeout in milliseconds. Defaults to 30000.

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

パッケージ
ocighcr.io/prest/prest-mcp-adapter:0.1.3

ツール

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

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

詳細

pREST MCP アダプター

pREST の HTTP MCP エンドポイント用公式 stdio アダプターです。

このアダプターを使うと、stdio を必要とする MCP クライアントを、/_mcp で HTTP MCP エンドポイントを公開している起動中の pREST インスタンスに接続できます。

MCP client / AI IDE
        ↓ stdio (NDJSON JSON-RPC)
prest-mcp
        ↓ HTTP POST
http://localhost:3000/_mcp
        ↓
pREST

このアダプターは小さなトランスポートブリッジです。スキーマのイントロスペクション、SQL の生成、MCP ツールの実装は行いません。これらは pREST が担います。

要件

  • /_mcp ルートが利用可能な、起動中の pREST インスタンス
  • Go 1.26 以降(ソースからビルドする場合)

環境変数

変数必須デフォルト説明
PREST_MCP_URLはい—pREST HTTP MCP エンドポイントの URL。例:http://localhost:3000/_mcp
PREST_MCP_TOKENいいえ—pREST の認証が有効な場合のベアラートークン
PREST_MCP_TIMEOUT_MSいいえ30000HTTP タイムアウト(ミリ秒)

インストール

ソースから
go install github.com/prest/prest-mcp-adapter/cmd/prest-mcp@latest
Docker / OCI
docker pull ghcr.io/prest/prest-mcp-adapter:0.1.3

ローカルでの使用

PREST_MCP_URL=http://localhost:3000/_mcp prest-mcp
トークンを使用する場合
PREST_MCP_URL=https://api.example.com/_mcp \
PREST_MCP_TOKEN=secret \
prest-mcp
Docker での使用
docker run --rm -i \
  -e PREST_MCP_URL=http://host.docker.internal:3000/_mcp \
  ghcr.io/prest/prest-mcp-adapter:0.1.3

MCP クライアントの設定

Cursor

MCP の設定に追加します(例:.cursor/mcp.json)。

{
  "mcpServers": {
    "prest": {
      "command": "prest-mcp",
      "env": {
        "PREST_MCP_URL": "http://localhost:3000/_mcp"
      }
    }
  }
}
Claude Desktop

claude_desktop_config.json に追加します。

{
  "mcpServers": {
    "prest": {
      "command": "prest-mcp",
      "env": {
        "PREST_MCP_URL": "http://localhost:3000/_mcp"
      }
    }
  }
}
汎用 MCP クライアント

stdio MCP サーバーを起動できる任意のクライアントで使用できます。

PREST_MCP_URL=http://localhost:3000/_mcp prest-mcp

プロトコルメッセージは、stdin/stdout 上で改行区切りの JSON-RPC として送受信されます。ログは stderr にのみ出力されます。

セキュリティに関する推奨事項

書き込みアクセスが明示的に必要な場合を除き、AI/MCP ワークフローでは読み取り専用の PostgreSQL ユーザーを使用してください。

認証のない MCP エンドポイントを公開しないでください。

ローカルまたはプライベートネットワーク上の pREST MCP エンドポイントを優先してください。

pREST の認証が有効な場合は、有効な JWT を PREST_MCP_TOKEN に設定してください。

開発

make test       # go test -race ./... and overall coverage >= 80%
make coverage   # coverage gate only
make vet
make build      # writes bin/prest-mcp

ライセンス

MIT — LICENSE を参照してください。

コメント

MCP は初めてですか?

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

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