Zinc
All Blogs
Guides

What Is an MCP Server? How It Works + Live Example (2026)

An MCP server connects AI models like Claude, ChatGPT, and Cursor to external tools and APIs. Learn how MCP servers work and test a live server in 2 minutes.

Short answer: An MCP server is a lightweight program that exposes tools, data, and prompts to an AI application using the open Model Context Protocol (MCP). Instead of building separate plugins for Claude, ChatGPT, Cursor, and VS Code, developers expose one MCP server that any MCP-compatible AI client can call. You can test a live remote MCP server right now without an account or API key by adding https://mcp.zinc.com/mcp to Claude, ChatGPT, or Cursor to search and buy products across Amazon, Walmart, Target, and Home Depot.

Every major AI assistant can write code and summarize text out of the box. The moment you ask it to check your database, create a Jira ticket, or buy a real product online, the model needs a way to talk to outside systems.

Before 2025, every AI platform invented its own plugin format. A tool built for ChatGPT could not run in Claude Desktop, Cursor, or VS Code without a rewrite. Model Context Protocol (MCP) solved that fragmentation by defining one open standard for connecting AI models to external tools and data.

This guide explains how an MCP server works, the difference between local and remote servers, how safety guardrails work when real money is involved, and how to test a live MCP server in two minutes.


How an MCP server works (host, client, server)

Model Context Protocol, originally open-sourced by Anthropic and now supported across Claude, OpenAI's ChatGPT, Cursor, VS Code Copilot, Windsurf, and Grok, uses a three-part architecture over JSON-RPC 2.0:

ComponentWhat it isExamples
MCP HostThe AI application the user interacts with. It manages permissions, renders UI cards, and decides when to invoke toolsClaude Desktop, Claude web, ChatGPT, Cursor, VS Code
MCP ClientThe protocol connector built inside the host that maintains a 1-to-1 session with an MCP serverBuilt into Claude, Cursor, ChatGPT connectors, mcp-remote
MCP ServerThe program or remote endpoint that wraps an API, database, or filesystem and advertises capabilities to the clientZinc (https://mcp.zinc.com/mcp), GitHub MCP, Postgres MCP, Stripe MCP

When you connect an MCP server to your AI app, four things happen in sequence:

  1. Capability discovery. On startup, the MCP client sends an initialize request and calls tools/list. The server replies with the name, description, and JSON Schema parameters for every tool it offers.
  2. Model selection. When you send a prompt, the host passes those tool schemas to the model. If your request needs external data or an action, the model emits a structured tool-call request.
  3. Execution. The MCP client sends tools/call to the MCP server. The server runs the underlying database query or REST API call and returns structured JSON (or an interactive UI card) to the host.
  4. Final response. The model reads the tool output and answers your question with real data instead of guessing.

The three primitives an MCP server exposes

An MCP server can expose three types of capabilities to an AI application:

1. Tools (model-controlled actions)

Tools are executable functions that the language model can choose to call during a conversation, similar to function calling in a REST API.

  • Read tools: search_products, list_commits, get_order_status
  • Write tools: prepare_order, create_pull_request, send_email

Because write tools change state in the real world, well-designed MCP hosts and servers require human confirmation before executing destructive or paid actions.

2. Resources (application-controlled context)

Resources are read-only data streams identified by a URI (such as file:///logs/app.log or postgres://db/users/schema) that the host application or user attaches to context without the model having to guess search parameters.

3. Prompts (user-controlled templates)

Prompts are pre-written workflows or slash commands bundled by the server author so users can trigger a multi-step routine with the right arguments filled in.


Local (stdio) vs. remote (Streamable HTTP) MCP servers

When MCP launched, most servers ran locally on your laptop. In 2026, production services ship remote MCP servers over HTTP so users do not have to install Node.js, Python, or manage raw API keys on disk.

FeatureLocal MCP Server (stdio)Remote MCP Server (streamable-http)
How it runsSpawned as a subprocess on your machine (npx or uvx)Hosted by the provider at an HTTPS URL (e.g. https://mcp.zinc.com/mcp)
Where it worksDesktop IDEs and local apps only (Cursor, Claude Desktop, Claude Code)Everywhere: Claude web and mobile, ChatGPT, Cursor, VS Code, Claude Code
SetupInstall runtime dependencies and paste secret API keys into a local JSON filePaste one URL or click Connect; uses OAuth 2.1 or zero-signup session auth
Best forReading local files, running local git/shell commands, private dev databasesSaaS platforms, live product catalogs, team tools, and consumer checkout

If your server needs to touch files on the user's hard drive, use stdio. For everything else, especially APIs and commerce, streamable-http removes setup friction and works across web and mobile chat apps.


Live example: connect a real MCP server in 2 minutes

Most MCP tutorials walk through a local weather script. To see what a production remote MCP server looks like, you can connect Zinc's shopping MCP server (https://mcp.zinc.com/mcp), which is published in the official MCP Registry as com.zinc.www/mcp.

It requires no Zinc account and no API key to connect. Searching across Amazon, Walmart, Target, Home Depot, Etsy, and Best Buy is free; you only pay by card if you choose to buy an item.

Option A: Claude Code (terminal)

Run one command in your terminal:

claude mcp add --transport http zinc https://mcp.zinc.com/mcp

Option B: Cursor or VS Code (mcp.json)

Add the server URL to .cursor/mcp.json (or .vscode/mcp.json):

{
  "mcpServers": {
    "zinc": {
      "url": "https://mcp.zinc.com/mcp"
    }
  }
}

Option C: Claude Desktop, Claude web, or ChatGPT

  • In Claude: Open Settings -> Connectors, look up Zinc (or click Add custom connector), and enter https://mcp.zinc.com/mcp. Full walkthrough: How to buy from Amazon with Claude.
  • In ChatGPT: Open Settings -> Connectors -> Advanced, enable Developer mode, and add https://mcp.zinc.com/mcp. Full walkthrough: ChatGPT shopping guide.

What happens when you call it

Once connected, try a prompt that requires live retail data:

Compare prices for whole bean medium roast coffee under $20 across Amazon and Walmart, then prepare an order for the best option.

  1. Free cross-retailer search. The model calls Zinc's search tool on https://mcp.zinc.com/mcp and receives live products, prices, ratings, and retailer names.
  2. Order preparation (prepare-order). When you pick an item, the model calls prepare-order. In clients that render MCP UI cards (Claude web/desktop and ChatGPT), an interactive review card appears showing the item, estimated tax and shipping, and a $1.00 Zinc fee.
  3. Human payment confirmation (Pay & place). Clicking Pay & place opens a Stripe checkout page where you enter your card and shipping address. Zinc places the order at the retailer and returns live carrier tracking to the chat.

Want to test the search tool in your browser before adding it to an AI client? Try a live query in Zinc Chat, which runs on the same MCP server in the background.


How MCP servers stay safe with payments and production data

Giving an AI model access to tools raises an obvious security question: what stops a hallucination or a prompt injection on a web page from placing an unauthorized order?

Production MCP servers solve this in the protocol layer rather than trusting a system prompt:

  1. Confirmation tokens withheld from the model. In Zinc's MCP server, prepare-order spends nothing. The tool that actually charges a card (place-order) requires a cryptographic confirmation token that the server delivers only to the UI card on your screen, never to the language model's context window. The AI literally cannot call place-order on its own.
  2. Hard price ceilings (max_price). When an autonomous agent orders through Zinc's REST API (POST /orders) or HTTP 402 / MPP, the code sets max_price in cents. If the retailer price moves above that cap at checkout, the order fails safely.
  3. Idempotency keys. Every order carries an idempotency key tied to the item and price quote, so a retried tool call cannot double-order.
  4. Scoped capabilities. Zinc's server card (/.well-known/mcp/server-card.json) declares explicit scopes (products:read, orders:read, orders:write, wallet:read) so hosts know which operations are read-only and which mutate state.

For a deeper look at building your own agent on top of MCP and Zinc, read How to Build an AI Shopping Agent and Best MCP Servers for Retail.


Where to find and verify MCP servers

Anyone can publish a GitHub repo claiming to be an MCP server for a brand. Before connecting a remote server to your workspace, verify where it comes from:

  • The Official MCP Registry (registry.modelcontextprotocol.io): Verifies domain ownership via DNS or an Ed25519 public key hosted at https://<domain>/.well-known/mcp-registry-auth. For example, Zinc's com.zinc.www/mcp listing is cryptographically verified against www.zinc.com/.well-known/mcp-registry-auth.
  • First-party .well-known discovery: Check https://<domain>/.well-known/mcp/server-card.json on the vendor's own domain to confirm the official MCP endpoint URL (https://mcp.zinc.com/mcp) and supported authentication scopes.
  • Curated directories: Sites like mcpservers.org, mcp.so, Glama, and PulseMCP index both local and remote servers across categories.

FAQ

What does MCP stand for in AI?

MCP stands for Model Context Protocol, an open standard created by Anthropic that lets AI applications (hosts) connect to external data sources and tools (servers) over a unified JSON-RPC interface.

What is the difference between an MCP server and a normal REST API?

A REST API is built for deterministic code written by a human developer. An MCP server wraps a REST API or data source with self-describing tool schemas, natural-language descriptions, and session state so an AI model can discover what tools exist and call them without custom glue code per AI app.

Do MCP servers only work with Claude?

No. While Anthropic introduced MCP, the protocol is supported by OpenAI's ChatGPT (via custom connectors and apps), Cursor, Visual Studio Code (GitHub Copilot), Windsurf, Zed, Grok, and open-source frameworks.

What is the difference between an MCP server and an Agent Skill?

An MCP server is a live tool endpoint (https://mcp.zinc.com/mcp) that executes functions on a server and returns data or UI cards. An Agent Skill (SKILL.md, such as npx skills add zincio/skills --skill universal-checkout) is an instruction package that teaches a coding agent with terminal access (like Claude Code or Cursor) how to call a REST API directly. Many platforms, including Zinc, publish both so you can use whichever fits your client.

Where can I find official MCP servers?

Check the Official MCP Registry, where namespaces like com.zinc.www/mcp require cryptographic domain verification, or inspect the provider's documentation and /.well-known/mcp/server-card.json file.

Is there a free MCP server I can test right now without an API key?

Yes. Add https://mcp.zinc.com/mcp in Claude, ChatGPT, Cursor, or VS Code. You can run live product searches across Amazon, Walmart, Target, Home Depot, and Best Buy for free with zero signup.


Next steps

Prefer an Agent Skill over MCP in terminal agents?

If you use Claude Code, Cursor, or OpenClaw with bash access, you can also install the Universal Checkout skill in one command.