tarigrisurgical-mcp-server について
tarigrisurgical-mcp-serverは、Tarigri Surgicalの卸売器具カタログをAIアシスタントに提供します。商品検索や見積もり、問い合わせ文の下書きに対応し、注文や送信は行いません。
主な機能
- 01テキスト、カテゴリ、価格、売れ筋で商品検索
- 02SKUの詳細と数量別価格を取得
- 03カテゴリと商品数を一覧表示
- 04数量別価格を使った見積もりとMOQ確認
- 05メール・WhatsAppリンク付き問い合わせ文の作成
活用シーン
- 01条件に合う外科器具の検索
- 02予定数量に応じた価格の確認
- 03手動送信用の見積もり問い合わせを準備
MCP 対応
カタログリソース、商品プロンプト、商品検索・詳細・見積もり・会社情報・問い合わせ下書き用の6つのツールを提供するMCPサーバーです。stdioとステートレスなStreamable HTTPに対応します。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://mcp.tarigrisurgical.com/mcpclaude mcp add --transport http qmmughal-tarigrisurgical https://mcp.tarigrisurgical.com/mcp{"mcpServers":{"qmmughal-tarigrisurgical":{"type":"http","url":"https://mcp.tarigrisurgical.com/mcp"}}}Cursor で開く{"servers":{"qmmughal-tarigrisurgical":{"type":"http","url":"https://mcp.tarigrisurgical.com/mcp"}}}VS Code で開く{"mcpServers":{"qmmughal-tarigrisurgical":{"type":"http","url":"https://mcp.tarigrisurgical.com/mcp"}}}{"mcpServers":{"qmmughal-tarigrisurgical":{"serverUrl":"https://mcp.tarigrisurgical.com/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
詳細
Tarigri Surgical MCP サーバー
tarigrisurgical.com 向けの Model Context Protocol サーバーです。同サイトは、パキスタンのシアルコートにある、ステンレス製の外科、歯科、整形外科、耳鼻咽喉科用器具のメーカーです。AI アシスタントが卸売カタログを検索し、数量に応じた価格を計算して、注文依頼を作成できます。
qmmughal/mcp-server-template を基に構築し、高水準の McpServer API(SDK 1.32)にアップグレードしています。
標準規格への対応状況
| 領域 | 状況 |
|---|---|
| トランスポート | stdio(ローカル、npx/node)および Streamable HTTP(リモート、ステートレス、POST /mcp、Vercel にデプロイ可能) |
| プロトコル | 公式 TypeScript SDK によってネゴシエートされます(2025-06-18 以前を含む) |
| ツール | 6 つのツール。それぞれに title、JSON-Schema 入力、outputSchema + structuredContent、アノテーション(readOnlyHint、destructiveHint: false、idempotentHint、openWorldHint)があります |
| エラー | ツールの失敗は isError: true の結果を返します(プロトコルエラーではありません)。不正な引数はスキーマ検証で拒否されます |
| リソース | 静的な tarigri://catalog、引数補完に対応した一覧表示可能なテンプレート tarigri://product/{sku} |
| プロンプト | 型指定された引数を持つ source_instruments |
| サーバー情報 | name、title、version、websiteUrl、およびモデル向けの instructions |
| 安全性 | 読み取り専用です。注文や送信は行われません。stdout は JSON-RPC 専用で、ログは stderr に出力されます |
| テスト | 24 件のテスト。実際の MCP Client を介したプロトコルレベルのテストを含みます。stdio と HTTP の両方で公式 MCP Inspector による検証済みです |
| 未実装 | 認証(公開カタログデータのため)、セッション/SSE ストリーム(設計上ステートレス)、サンプリング/エリシテーション(不要) |
ツール
| ツール | 目的 |
|---|---|
search_products | テキスト、カテゴリ、上限価格、売れ筋で絞り込みます |
get_product | SKU の詳細情報(価格、MOQ、50+/100+ の価格帯、素材、サイズ、URL)を取得します |
list_categories | 商品数付きの 8 つのカテゴリを一覧表示します |
estimate_quote | SKU と数量の明細ごとの概算合計を算出します。数量別価格を適用し、MOQ 未満の数量を通知します |
get_company_info | 連絡先、営業時間、購入者向け FAQ を取得します |
draft_inquiry | ユーザー自身が送信するための、テキスト形式の見積依頼と mailto: および WhatsApp のリンクを作成します |
すべての価格は工場直販の卸売価格(米ドル、FOB シアルコート)です。送料は Tarigri が別途見積もります。
仕組み
サイトは API のないクライアントレンダリングの SPA ですが、カタログを /data.js として公開しています。サーバーはこれを取得して Zod で検証し、サイト独自のレートを使って PKR 価格を USD に換算したうえで、メモリにキャッシュします(デフォルトは 15 分。更新に失敗した場合は古いコピーを提供します)。
ローカルで実行する
npm install
npm run build # dist/index.js (single bundled executable with shebang)
npm test
npm run inspect # opens the official MCP Inspector against the build
| 変数 | デフォルト | 意味 |
|---|---|---|
TARIGRI_SITE_ORIGIN | https://tarigrisurgical.com | /data.js を配信するサイト |
CATALOG_CACHE_TTL_SECONDS | 900 | カタログのキャッシュ期間 |
LOG_LEVEL | info | ログは stderr のみに出力されます |
LOG_PRETTY | false | tsx でソースから実行する場合の整形ログ(バンドルではありません) |
Vercel にデプロイする(リモートサーバー)
このリポジトリは Vercel 対応済みです。api/mcp.ts が関数で、/mcp から関数へリライトされます。また、public/index.html は設定をコピーして貼り付けられるランディングページです。
- Vercel ダッシュボードで Add New → Project を選択し、
qmmughal/tarigrisurgical-mcp-serverをインポートします(またはnpx vercel login && npx vercel --prodを実行します)。 - デフォルト設定をそのまま使用します(
vercel.jsonでフレームワークと出力ディレクトリが設定されています)。環境変数は不要です。 - 任意:Project → Domains で
mcp.tarigrisurgical.comなどのドメインを追加します。
エンドポイントは https://<your-domain>/mcp になります。公開カタログのみを公開する設計のため、エンドポイントは認証なしで公開されています。大量のトラフィックが見込まれる場合は、Vercel の WAF/レート制限を追加してください。
AI ツールから接続する
<URL> を Vercel のエンドポイント(https://…/mcp)に置き換えてください。パッケージが npm に公開されるまでは、npx の代わりに、dist/index.js の絶対パスを指定したローカルの node 形式を使用してください。
Claude Code
claude mcp add --transport http tarigri-surgical <URL>
# or local: claude mcp add tarigri-surgical -- node /abs/path/dist/index.js
Claude Desktop:設定 → コネクタ → カスタムコネクタを追加 から <URL> を指定するか、claude_desktop_config.json を使用してください:
{ "mcpServers": { "tarigri-surgical": { "command": "node", "args": ["/abs/path/dist/index.js"] } } }
Cursor(.cursor/mcp.json)
{ "mcpServers": { "tarigri-surgical": { "url": "<URL>" } } }
VS Code / GitHub Copilot(.vscode/mcp.json)
{ "servers": { "tarigri-surgical": { "type": "http", "url": "<URL>" } } }
Windsurf(~/.codeium/windsurf/mcp_config.json)
{ "mcpServers": { "tarigri-surgical": { "serverUrl": "<URL>" } } }
Gemini CLI(~/.gemini/settings.json)
{ "mcpServers": { "tarigri-surgical": { "httpUrl": "<URL>" } } }
Codex CLI(~/.codex/config.toml)
[mcp_servers.tarigri-surgical]
command = "node"
args = ["/abs/path/dist/index.js"]
stdio のみをサポートするクライアント:npx -y mcp-remote <URL>。
注意事項
data.jsはタイムアウト付きの空のnode:vmコンテキストで評価され、その後スキーマ検証が行われます。vmはセキュリティサンドボックスではないため、TARIGRI_SITE_ORIGINには信頼できるサイトのみを指定してください。- サイトの商品画像はイメージです。CE/ISO 証明書番号は公開されておらず、「ご要望に応じて提供」とされています。サーバーがそれ以上のことを主張することはありません。
- サイトで
data.jsの形式が変更された場合、検証は明確なエラーを返し、不正なデータを返すことはありません。
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。