sanjana-pier39 avatar

Negotiate Mcp

sanjana-pier39/negotiate-mcp

Gives Claude six tools to discover and negotiate at any store that speaks the negotiate.v1 protocol. You can search a directory of compliant merchants, probe domains for protocol support, browse product catalogs, and drive multi-turn price negotiations through a state machine that tracks offers, counteroffers, and session closure. The maintainers run a hosted endpoint at mcp.pier39.ai/mcp if you want zero-install setup, or you can wire the stdio transport into Claude Desktop with uvx. Three stores are live now: the Atlas reference implementation, Skout Organic snacks, and a ticket resale integration in onboarding. If you want Claude to haggle autonomously or build conversational commerce workflows, this is the wire.

tools
5
transport
STDIO
last updated
May 3, 2026

Tools

5 tools

Public tool metadata for what this MCP can expose to an agent.

discover_storeProbe a domain to check if it's negotiable. Returns the protocol descriptor.

Probe a domain to check if it's negotiable. Returns the protocol descriptor.

No parameter schema in public metadata yet.

list_productsEnumerate negotiable products at the store.

Enumerate negotiable products at the store.

No parameter schema in public metadata yet.

start_negotiationOpen a chat session with the merchant agent.

Open a chat session with the merchant agent.

No parameter schema in public metadata yet.

send_messageSend one shopper turn.

Send one shopper turn.

No parameter schema in public metadata yet.

read_historyRead the running history of a session.

Read the running history of a session.

No parameter schema in public metadata yet.

Sponsors

Readme

negotiate-mcp

PyPI

Model Context Protocol (MCP) server for the negotiate.v1 protocol. Once installed in Claude Desktop, Cowork, Claude Code, or any other MCP-aware client, your Claude gains five native tools for negotiating with any negotiate.v1-compliant store.

What you get

ToolPurpose
discover_store(domain)Probe a domain to check if it's negotiable. Returns the protocol descriptor.
list_products(domain)Enumerate negotiable products at the store.
start_negotiation(domain, product_id)Open a chat session with the merchant agent.
send_message(next_url, message)Send one shopper turn.
read_history(history_url)Read the running history of a session.

The agent uses these like a human would use a browser: discover the store, pick a product, start a chat, send turns until the deal closes.

mcp-name: io.github.sanjana-pier39/negotiate-mcp

Install


View the full README on GitHub

Details

Repository
github.com/sanjana-pier39/negotiate-mcp
Package
negotiate-mcp
Transport
STDIO
Registry
MCP registry, active