Map logo

Map

Reads open-web product pages, teaches wallet payment workflows, and publishes merchant catalogs through one MCP server.

Install Map

Pick your client, then add it in one click or paste the config.

STDIONode.js
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "map": {
      "command": "npx",
      "args": [
        "-y",
        "@maraventano/map"
      ]
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

We couldn’t confirm it starts correctly

The install command started, but didn't respond the way we expected when we tried to talk to it.

npx -y @maraventano/map

initialize succeeded but no response to tools/list.

This is an experimental automated check and can have false negatives — missing environment variables, a slow cold install, etc. It doesn’t necessarily mean something’s wrong. Last checked 4d ago.

Overview

The map MCP server reads product URLs across the open web, teaches agents how to handle x402 payment flows, and publishes merchant catalogs. Its Merchant Key decoder returns a consistent CleanRead with product, seller, price, availability, payment status, and outcome fields. Provisions explains wallet actions without signing or sending payments, while Atlas writes catalogs and discovery manifests. Reach for it when an agent needs to compare products across independent merchants or expose a catalog to other agents.

Use cases

  • Compare products from independent merchant websites
  • Classify whether a product supports autonomous x402 payment
  • Teach an agent how to read and complete a wallet payment
  • Publish a merchant catalog for agent discovery
  • Retrieve products from a generated catalog

Key features

  • Decode product URLs into a CleanRead schema
  • Detect x402 payment challenges
  • Return autonomous, human-checkout, or unreadable outcomes
  • Provide wallet and payment instruction lessons
  • Generate catalog and .well-known discovery files
  • Serve catalog and product records

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked 2d ago

Recent health check succeeded.

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 12d ago via OSV.dev · @maraventano/map (npm)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

npm downloads189Package downloads in the last 30 days.
Last commit8d agoMost recent push to the default branch.
Install checkInconclusiveStarted but did not complete the MCP handshake in our test.
Directory activity2 viewsConfig copies, upvotes, and views on AllMCPs.

How Map works

What the map MCP server does

The map MCP server combines three related capabilities for agent commerce: reading merchant pages, explaining payment procedures, and publishing product data. It is distributed as @maraventano/map and runs as one MCP process with 23 tools.

Merchant Key handles the read path. Given a product URL, decode-merchant attempts to produce one CleanRead structure containing the source URL, product description, seller, price, currency, availability, payment information, outcome, and any actionable gaps. The result uses explicit null or unknown values instead of dropping fields when a page does not provide enough information.

Provisions provides instructional payment content. Its lessons cover wallet concepts, x402 challenges, USDC payment signing, receipt verification, delegation and mandate topics, and troubleshooting. The lessons describe actions for an agent to take with its own wallet; they do not perform the payment.

Atlas supports the publishing path. A merchant can decode its own product URLs, write a catalog and discovery manifest, then expose catalog or product data through get-catalog and get-product.

How it works

decode-merchant uses read-only HTTP requests. It checks JSON-LD product and offer data, OpenGraph product metadata, and an x402 payment challenge. Version 1 reliably detects x402; other payment values exist in the output schema but are not detected by the current implementation. The decoder follows one same-origin redirect and refuses cross-origin redirects and redirect chains.

The returned outcome distinguishes three cases. autonomous means a known price, available product, and detected x402 rail are present. human_checkout means the product can be read but no verified agent-payment rail was found. unreadable means the decoder could not obtain a usable product or price description.

Atlas reuses the same decoder for merchant-owned URLs rather than requiring platform-specific adapters. publish-catalog creates catalog.json and a .well-known/map.json manifest for discovery. The resulting data can then be served through the catalog tools.

Setup and configuration

Run the server with Node.js 18 or newer:

Terminal
npx @maraventano/map

The process communicates over stdio. The package has one runtime dependency, @modelcontextprotocol/sdk, and the supplied smoke commands exercise the decoder and publishing flow:

Terminal
npm run smoke
npm run smoke:publish

No environment variables or wallet credentials are specified as required configuration. The server does not hold private keys, store cards, deploy merchant infrastructure, sign transactions, or submit payments.

Limitations and notes

Pages that depend on JavaScript and do not expose JSON-LD or OpenGraph product data may be unreadable because there is no headless-browser step. Stock information is often unavailable, in which case the result remains unknown. The decoder does not probe secondary endpoints.

Detection is deliberately conservative: branding, checkout buttons, scripts, marketing text, and platform names do not establish an agent-payment rail. A normal Shopify or Stripe page therefore remains human_checkout unless a verifiable supported signal is present. AP2, ACP, and UCP detectors are described as future work rather than current functionality.

Atlas currently trusts the merchant's own decoder output. Independent rereads, signed manifests, and periodic audits are not implemented. The payment rail still determines the actual settlement price, so a faulty manifest can misstate fields such as stock but cannot change the settlement amount.

The project is dual-licensed: individuals and agents may use it freely, while companies require a commercial license. It is not MIT-licensed.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Map

map is an MCP server that connects AI agents to product URLs and merchant catalogs on the open web. Its main tools include decode-merchant for CleanRead results, Provisions lessons for x402 payment workflows, and Atlas tools to publish catalogs and retrieve products. It never signs payments or stores keys.

Run `npx @maraventano/map` with Node.js 18 or newer. The server starts over stdio and can be tested with the repository's `npm run smoke` and `npm run smoke:publish` commands.

Yes, map uses the standard stdio MCP transport, so it can be configured in Cursor as an MCP server.

No, it cannot make payments. Provisions explains how an agent can use its own wallet, including reading an x402 challenge and signing a USDC payment, but map never signs, pays, holds keys, or stores cards.

map reliably detects x402 in version 1.0.x. Its schema reserves values for rails such as AP2, ACP, Coinbase, Stripe, HTTP JSON, WalletConnect, and human checkout, but AP2, ACP, and UCP detectors are listed as roadmap work.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewMap AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/map?style=directory)](https://allmcps.com/mcp/map)
HTML Embed
<a href="https://allmcps.com/mcp/map"><img src="https://allmcps.com/api/badge/map?style=directory" alt="Map on AllMCPs" /></a>