Check and watch product prices on ordinary shop pages. It reads the price out of a product page from JSON-LD, microdata, Open Graph or visible markup, normalises 1.299,00 EUR and 1,299.00 USD alike, and keeps a per-watch history.
Chat has its own fetch tool in the tools picker. Turning that one off for the chats where you are pricing things is the difference between a stored history and a one-off answer.
| You say | Tool |
|---|---|
| What does this cost right now: <product url>? | price_check |
| Watch that page and alert me if it goes under 40. | watch_add |
| Has anything I'm watching hit its target or dropped a lot? | alerts_pending |
One measured limitation: with a general web fetcher available, a client sometimes answers a price question by fetching the page itself, so nothing is stored. Name the tracker in the sentence.
The file is .vscode/mcp.json, and the key inside it is servers.
| Scope | Path |
|---|---|
| This workspace | <workspace>/.vscode/mcp.json |
| Every workspace | the user profile mcp.json, opened by the MCP: Open User Configuration command |
// .vscode/mcp.json (the key is "servers")
{
"servers": {
"price-tracker": {
"command": "npx",
"args": ["-y", "@theluckystrike/mcp-price-tracker"]
}
}
}
Or from a terminal:
code --add-mcp '{"name":"price-tracker","command":"npx","args":["-y","@theluckystrike/mcp-price-tracker"]}'
VS Code asks you to confirm you trust the server and its capabilities before it starts. Nothing runs until you answer.
The npm publish of @theluckystrike/mcp-price-tracker is pending; until then use the .mcpb bundle or a clone and build from the latest release.
The same server runs at https://mcp.zovo.one/mcp/price-tracker over MCP streamable HTTP, no install. Mint a free token with curl https://mcp.zovo.one/mcp/token, or use a Pro key. It has no filesystem, so a file comes back as a one-hour download link.
{
"servers": {
"price-tracker": {
"url": "https://mcp.zovo.one/mcp/price-tracker",
"headers": { "Authorization": "Bearer <token>" }
}
}
}
The top-level key is "servers", not "mcpServers". A config pasted from a Claude Desktop or Cursor README parses cleanly, contributes no servers, and gives you no error to read, which makes it the most expensive one-word mistake here. Alongside it an "inputs" array holds secrets. The newer Agent Host reads a workspace .mcp.json instead.
Free: unlimited checks with a confidence score, 3 watches, 30 observations each, alerts. Pro is $19 once, verified offline.
The key is servers, not mcpServers. A config copied from a Claude Desktop README parses cleanly and contributes nothing. Rename it. On the newer Agent Host, use a workspace .mcp.json instead.
No. code --add-mcp takes the server object on the command line, and MCP: Add Server in the palette asks whether the target is Workspace or Global.
In Chat, behind the tools picker, once the server has started. Adding or changing one raises a prompt asking you to confirm you trust it; if the picker is empty, that prompt is usually still waiting.
MCP Price Tracker in detail · The same server in Cursor and Windsurf · Every server in VS Code · Guides · VS Code docs