Mcpforucp — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited Mcpforucp (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
A UCP-compliant MCP storefront server that exposes a product catalog as MCP tools. Each tool maps to a real UCP capability (Catalog Search & Lookup, Cart Building, Checkout, Order Management), and every tool's output matches the corresponding UCP schema (version 2026-04-08).
UCP is transport-agnostic and explicitly supports MCP as a transport alongside REST and A2A — so "a UCP storefront exposed over MCP" is on-spec.
1999 = $19.99). Never floats for money.# Install dependencies
uv sync
# Run tests
uv run pytest
# Start the server (stdio transport)
uv run python -m ucp_mcp_storefront.server| Tool | UCP Capability | Description |
|---|---|---|
search | dev.ucp.shopping.catalog.search | Search products by query, max price (cents), and/or category |
get_product | dev.ucp.shopping.catalog.lookup | Get full product details by ID |
search(query, max_price?, category?)query (string, required): Free-text search matching title, description, and tags.max_price (int, optional): Maximum price in cents (e.g. 10000 = $100.00).category (string, optional): Filter by tag/category.Returns a UCP search_response with matching products.
get_product(product_id)product_id (string, required): Product identifier (e.g. "prod_001").Returns a UCP get_product_response with full product detail including variants and pricing.
Add to your claude_desktop_config.json:
{
"mcpServers": {
"ucp-storefront": {
"command": "uv",
"args": ["run", "--directory", "/absolute/path/to/ucp-mcp-storefront", "python", "-m", "ucp_mcp_storefront.server"]
}
}
}# Install and run the MCP inspector
npx @modelcontextprotocol/inspector uv run python -m ucp_mcp_storefront.serverPrompt: "Find running shoes under $100"
The agent calls search(query="running shoes", max_price=10000) and gets back UCP-shaped results with products, price ranges, variants, and availability status.
├── src/ucp_mcp_storefront/ # Server source code
│ ├── server.py # FastMCP app; registers all tools
│ ├── catalog.py # Load + query the fake catalog
│ ├── cart.py # In-memory cart store
│ ├── checkout.py # UCP checkout object (mocked payment)
│ ├── ucp_mapping.py # Internal objects → UCP-shaped dicts
│ └── models.py # Pydantic models mirroring UCP fields
├── data/products.json # Fake catalog (25 items, prices in cents)
├── schemas/resolved/ # Resolved UCP JSON Schemas (for tests)
├── tests/ # pytest test suite
├── scripts/ # Schema resolution and utilities
└── docs/ # Architecture and UCP mapping docssearch, get_product)create_cart, add_to_cart, view_cart)~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.