Tarigrisurgical Mcp Server

io.github.qmmughalPublished by GitHub account qmmughalv1.0.1Updated Nov 4, 2026

Browse the Tarigri Surgical Instruments wholesale catalog, get quotes and draft order inquiries.

VerifiedStreamable HTTPWeb executable

Overview

Tarigrisurgical's hosted MCP server (mcp.tarigrisurgical.com); no sign-in required; Streamable HTTP; 6 tools.

No AI overview yet: these facts come from the registry entry and the server itself.

Endpoint
mcp.tarigrisurgical.com
Last checked

Installation

In SourceWeft

  1. Open Tarigrisurgical Mcp Server in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.github.qmmughal%2Ftarigrisurgical-mcp-server/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "tarigrisurgical": {
      "type": "http",
      "url": "https://mcp.tarigrisurgical.com/mcp"
    }
  }
}

README

Tarigri Surgical MCP Server

A Model Context Protocol server for tarigrisurgical.com, a Sialkot (Pakistan) manufacturer of stainless steel surgical, dental, orthopedic and ENT instruments. It lets AI assistants search the wholesale catalog, price quantities and prepare an order request.

Built from qmmughal/mcp-server-template, upgraded to the high-level McpServer API (SDK 1.32).

Standards coverage

AreaStatus
Transportsstdio (local, npx/node) and Streamable HTTP (remote, stateless, POST /mcp, deployable on Vercel)
ProtocolNegotiated by the official TypeScript SDK (2025-06-18 and earlier)
Tools6 tools, each with title, JSON-Schema input, outputSchema + structuredContent, and annotations (readOnlyHint, destructiveHint: false, idempotentHint, openWorldHint)
ErrorsTool failures return isError: true results (not protocol errors); bad arguments are rejected by schema validation
ResourcesStatic tarigri://catalog, listable template tarigri://product/{sku} with argument completion
Promptssource_instruments with typed arguments
Server infoname, title, version, websiteUrl, and model-facing instructions
SafetyRead-only; nothing is ordered or sent. stdout is reserved for JSON-RPC, logs go to stderr
Testing24 tests, including protocol-level tests through a real MCP Client; verified with the official MCP Inspector over both stdio and HTTP
Not implementedAuthentication (public catalog data), sessions/SSE streams (stateless by design), sampling/elicitation (not needed)

Tools

ToolPurpose
search_productsFilter by text, category, max price, best sellers
get_productFull details for a SKU (price, MOQ, 50+/100+ tiers, material, size, URL)
list_categoriesThe 8 categories with product counts
estimate_quoteIndicative total for SKU + quantity lines; applies volume tiers, flags quantities below MOQ
get_company_infoContact details, hours, buyer FAQ
draft_inquiryDrafts the quotation request as text plus mailto: and WhatsApp links for the user to send themselves

All prices are factory-direct wholesale USD, FOB Sialkot; shipping is quoted separately by Tarigri.

How it works

The site is a client-rendered SPA with no API, but it publishes its catalog as /data.js. The server fetches it, validates it with Zod, converts PKR prices to USD using the site's own rate, and caches it in memory (default 15 min, stale copy served if a refresh fails).

Run locally

bash
npm installnpm run build        # dist/index.js (single bundled executable with shebang)npm testnpm run inspect      # opens the official MCP Inspector against the build
VariableDefaultMeaning
TARIGRI_SITE_ORIGINhttps://tarigrisurgical.comSite serving /data.js
CATALOG_CACHE_TTL_SECONDS900Catalog cache lifetime
LOG_LEVELinfoLogs go to stderr only
LOG_PRETTYfalsePretty logs when running from source with tsx (not the bundle)

Deploy to Vercel (remote server)

The repo is Vercel-ready: api/mcp.ts is the function, /mcp is rewritten to it, and public/index.html is a landing page with copy-paste configs.

  1. Vercel dashboard → Add New → Project → import qmmughal/tarigrisurgical-mcp-server (or run npx vercel login && npx vercel --prod).
  2. Keep the defaults (vercel.json sets the framework and output directory). No env vars are required.
  3. Optional: add a domain such as mcp.tarigrisurgical.com under Project → Domains.

Your endpoint is then https://<your-domain>/mcp. The endpoint is public and unauthenticated by design (it only exposes the public catalog). Add Vercel's WAF/rate limiting if you expect heavy traffic.

Connect from AI tools

Replace <URL> with your Vercel endpoint (https://…/mcp). Until the package is published to npm, use the local node form with the absolute path to dist/index.js instead of npx.

Claude Code

bash
claude mcp add --transport http tarigri-surgical <URL># or local: claude mcp add tarigri-surgical -- node /abs/path/dist/index.js

Claude Desktop: Settings → Connectors → Add custom connector with <URL>, or claude_desktop_config.json:

json
{ "mcpServers": { "tarigri-surgical": { "command": "node", "args": ["/abs/path/dist/index.js"] } } }

Cursor (.cursor/mcp.json)

json
{ "mcpServers": { "tarigri-surgical": { "url": "<URL>" } } }

VS Code / GitHub Copilot (.vscode/mcp.json)

json
{ "servers": { "tarigri-surgical": { "type": "http", "url": "<URL>" } } }

Windsurf (~/.codeium/windsurf/mcp_config.json)

json
{ "mcpServers": { "tarigri-surgical": { "serverUrl": "<URL>" } } }

Gemini CLI (~/.gemini/settings.json)

json
{ "mcpServers": { "tarigri-surgical": { "httpUrl": "<URL>" } } }

Codex CLI (~/.codex/config.toml)

toml
[mcp_servers.tarigri-surgical]command = "node"args = ["/abs/path/dist/index.js"]

Any client that only supports stdio: npx -y mcp-remote <URL>.

Notes

  • data.js is evaluated in an empty node:vm context with a timeout, then schema-validated. vm is not a security sandbox, so only point TARIGRI_SITE_ORIGIN at a site you trust.
  • Product images on the site are illustrative; CE/ISO certificate numbers are not published, only "available on request". The server never claims more.
  • If the site changes the shape of data.js, validation fails with a clear error rather than returning bad data.

License

MIT

Source: README.md at commit fde3019

Tools

6

search_products

Search products

Search the Tarigri Surgical wholesale catalog (surgical, dental, orthopedic, ENT instruments). Prices are USD per unit, FOB Sialkot. All filters are optional.

Parameterslimitquerycategoryfeatured_onlymax_unit_price_usd

get_product

Get product

Get full details for one product by SKU: price, MOQ, volume tiers, material, size, description, URL.

Parametersskurequired

list_categories

List categories

List the product categories with descriptions and product counts.

Takes no parameters.

estimate_quote

Estimate quote

Compute an indicative wholesale price for SKUs and quantities, applying volume tiers (50+/100+) and flagging quantities below MOQ. Excludes shipping; Tarigri issues the final quotation.

Parametersitemsrequired

get_company_info

Get company info

Tarigri Surgical contact details, business hours, ordering process, and buyer FAQ (MOQ, OEM, CE/ISO, markets, pricing).

Takes no parameters.

draft_inquiry

Draft order inquiry

Draft a wholesale order request for Tarigri as email text plus ready-to-click mailto: and WhatsApp links. Nothing is sent; the user must open the link and send it themselves.

Parametersitemsrequirednotescompanybuyer_namedestination_country

Version history

1
  1. v1.0.1LatestNov 4, 2026

Score

100% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts