Skip to content

last-price-ai/lastprice

v0.3.0

Last Price skills for pricing, price checks, and workspace operations over HTTP and MCP.

Last Price Agent Skills

Agent skills for Last Price, the Pricing Compute Network: compute, verify, route, experiment on, and learn from prices through the Last Price API or MCP connector.

Each skill is a folder with a SKILL.md in the open Agent Skills format: YAML frontmatter (name, description saying when to use it) and a concise body of instructions. These skills work in Cursor, Claude Code, Codex, and other agents that support Agent Skills, or as plain reference docs for any agent.

Skills

SkillUse it for
last-price-overviewStart here: what Last Price is, MCP vs HTTP, which skill does what
last-price-authGetting and verifying a key, request headers, sandbox limits, scopes
last-price-mcpUsing the MCP connector: ~260 tools mapped by job
last-price-computeQuoting prices: single, batch, demo, input clarifier, errors
last-price-functions-and-routingPricing functions, routing policies, router, chains, verify, guardrails
last-price-experimentsA/B and multi-arm price experiments, stopping, significance, bandits
last-price-learning-loopOutcomes, learned elasticity, analyst findings, JALE optimize, data exchange
last-price-rosettaMapping merchant payloads onto canonical records
last-price-marketplaceListings, reviews, earnings and payout history, Elo Index leaderboard
last-price-webhooksOutbound webhooks and signature verification
last-price-agentsWorkspace agents, agent keys, capabilities, claim
last-price-commerce-pipelineStore connectors, competitor observations, price proposals, execution
last-price-workspace-adminTeam, roles, API keys, embed tokens, approvals, audit, notifications
last-price-order-to-cashCustomers, contacts, orders, payments, disputes
last-price-usage-and-billingUsage, receipts, costs, credits, invoices
last-price-ucpUniversal Commerce Protocol quotes and checkout sessions
last-price-offersNegotiated offers and counters

Install

This repository is a plugin for Claude Code, Cursor, Codex and ChatGPT, and an extension for Gemini CLI. Each one installs the skills and the Last Price MCP server (https://api.last-price.ai/api/mcp/rpc?profile=directory, the directory tool set with no payment tools) together. Without an API key, compute_price and verify_price answer from a rate limited demo; add a key for everything else.

Claude Code

/plugin marketplace add last-price-ai/skills
/plugin install lastprice@last-price

Claude Code asks for an optional API key when the plugin is enabled and keeps it in your system's secure storage.

Codex

codex plugin marketplace add last-price-ai/skills
codex plugin add lastprice@last-price

Gemini CLI

gemini extensions install https://github.com/last-price-ai/skills

Gemini CLI asks for an optional API key at install time (stored in your keychain); change it later with gemini extensions config lastprice.

Cursor

The plugin manifest is in .cursor-plugin/. Until it is listed in the Cursor Marketplace, add the server with this link and copy the skills:

cursor://anysphere.cursor-deeplink/mcp/install?name=lastprice&config=eyJ1cmwiOiJodHRwczovL2FwaS5sYXN0LXByaWNlLmFpL2FwaS9tY3AvcnBjIn0=
git clone https://github.com/last-price-ai/skills.git last-price-agent-skills
mkdir -p .cursor/skills            # project-level; or ~/.cursor/skills for all projects
cp -R last-price-agent-skills/skills/* .cursor/skills/

VS Code (GitHub Copilot agent mode)

code --add-mcp '{"name":"lastprice","type":"http","url":"https://api.last-price.ai/api/mcp/rpc?profile=directory&via=vscode"}'

Google Antigravity

Open the Agent panel's menu, MCP Servers, Manage MCP Servers, View raw config, and add this to mcp_config.json:

{
  "mcpServers": {
    "lastprice": {
      "serverUrl": "https://api.last-price.ai/api/mcp/rpc?profile=directory&via=antigravity"
    }
  }
}

For your workspace, add "headers": { "x-api-key": "<your key>" } beside serverUrl.

The Antigravity CLI reads the same block from .agents/mcp_config.json in a project. Copy skills/ into .agents/skills/ for the skills.

Grok

At grok.com/connectors choose New Connector, Custom, and enter https://api.last-price.ai/api/mcp/rpc?profile=directory&via=grok. The demo tools work with no key.

Zed, Warp, Kiro, JetBrains (Junie and AI Assistant), Goose, Windsurf

Add a remote (HTTP) MCP server named lastprice with the URL https://api.last-price.ai/api/mcp/rpc?profile=directory&via=<tag>, where the tag is zed, warp, kiro, jetbrains, goose or windsurf, and an optional x-api-key header.

v0 and Microsoft Copilot Studio

Add https://api.last-price.ai/api/mcp/rpc?profile=directory&via=v0 or https://api.last-price.ai/api/mcp/rpc?profile=directory&via=copilot-studio as a custom MCP server (Streamable HTTP), with an optional x-api-key header.

Clients that only run local (stdio) servers

npx -y mcp-remote https://api.last-price.ai/api/mcp/rpc?profile=directory&via=mcp-remote

ChatGPT, Claude.ai, Perplexity and other MCP clients

Add https://api.last-price.ai/api/mcp/rpc?profile=directory as a custom connector or remote MCP server. For an API key, send it as the x-api-key header where the client allows headers.

Other Agent Skills-compatible agents

npx skills add last-price-ai/skills

The skills CLI installs the skills into Claude Code, Cursor, Codex and the other agents it supports (-a <agent> picks one, -g installs for all projects). Or copy the folders from skills/ into the agent's skills directory (for example .agents/skills/). Agents without skill support can be pointed at skills/last-price-overview/SKILL.md as a starting document.

What the plugin connects to

The plugin, extension and manifests in this repository contain no code that runs on install. They point the assistant at one remote server, https://api.last-price.ai/api/mcp/rpc, run by Last Price. Each manifest asks for the directory tool set (profile=directory) and adds a via tag (via=claude-plugin, cursor-plugin, openai-plugin, gemini-cli) so Last Price can count installs by assistant; the tag changes nothing about the answers. Tool calls send the arguments the assistant chooses (pricing context such as currency, cost and product type) and, if you set one, your API key in the x-api-key header. Nothing else is read from your machine. Privacy policy: https://last-price.ai/privacy.

Plugin files

FileRead by
.claude-plugin/plugin.json, .claude-plugin/marketplace.jsonClaude Code
.cursor-plugin/plugin.json, .cursor-plugin/mcp.json, .cursor-plugin/marketplace.jsonCursor
plugin.json, mcp.json, .agents/plugins/marketplace.jsonCodex and ChatGPT
gemini-extension.json, GEMINI.mdGemini CLI
skills/all of them

Keep the version in all four manifests equal; scripts/check-manifests.mjs fails when they differ.

API keys

For workspace access, create a scoped key in Settings, or self-register with POST /api/agents/register for a sandbox key and claim link.

Store the key in your environment or secret store:

  • HTTP: LP_API_KEY, sent as x-api-key: $LP_API_KEY.
  • MCP: LASTPRICE_API_KEY in the connector configuration.

Verify a key with GET https://api.last-price.ai/api/me. See authentication for scopes, sandbox limits and OAuth.

MCP vs HTTP

Both are first class and reach the same backend.

  • MCP connector (https://api.last-price.ai/api/mcp/rpc?profile=directory, discovery at /.well-known/mcp.json): structured tools for nearly every surface. Best inside agents that support MCP. Without a key, compute and verify tools fall back to the rate-limited public demo, which pins one function and drops metadata and constraints, so label those results as demo.
  • HTTP API (https://api.last-price.ai, OpenAPI at /api/openapi): covers everything, including the few surfaces without a tool. Best for scripts, CI, and agents without MCP.

Keeping skills current

scripts/check-spec-drift.py (Python 3, standard library only):

  • diffs the live OpenAPI operations against the committed snapshot spec/paths.snapshot.txt, and
  • checks that every API path mentioned in skills/*/SKILL.md still exists in the live spec.
python3 scripts/check-spec-drift.py           # exit 1 on drift or missing paths
python3 scripts/check-spec-drift.py --update  # refresh the snapshot after re-verifying skills

scripts/sync.mjs (Node 18+, no dependencies) does the same for the MCP connector: it reads the live tools/list, fails when a tool is named in no skill or a known tool disappears or changes its required arguments, and regenerates each skill's references/mcp-tools.md (split into an index and mcp-tools-<n>.md parts when it would pass 200 kB; every argument, access level and documented refusal of the tools that skill names).

node scripts/sync.mjs --check   # exit 1 on drift
node scripts/sync.mjs           # regenerate references/mcp-tools.md

.github/workflows/spec-drift.yml runs both every weekday, on demand, and on a repository_dispatch (api-changed) that Last Price can send after each release, and opens a pull request when anything drifted. When it reports drift, re-read the changed operations, update the affected skills, add a CHANGELOG.md entry, and refresh the snapshot.

Credentials and payments

  • Never invent prices, ids, verdicts, or schema fields; report what the API returned.
  • Read state before writing; confirm with the user before changing live prices, money, access, or deleting data.
  • Keep API keys, claim tokens, webhook secrets, embed tokens, and payment headers out of chat and logs.

Recipes

Recipes cover keyed compute, marketplace publishing, experiments and Rosetta.

Payments (not in the plugins)

The plugins and the skills/ folder leave out payments: they use the connector's directory tool set (?profile=directory), which has no wallet, top-up, day-pass, spend-session or payout tools. Integrators who pay per call with x402 (USDC on Base) can read payments/: the pay-per-call skill, the spend policy skill, the wallet recipe and the TypeScript x402 client. No plugin loads them.

License

MIT.