Partle Marketplace MCP Server
Model Context Protocol server for the Partle local marketplace โ find products in physical stores near you, ask an AI to add a listing for you, all without leaving your assistant.
130,000+ products across ~16,000 stores. Reads need no auth. Writes need a pk_โฆ API key.
Two ways to run it
Remote (recommended โ zero setup)
Point your MCP client at:
https://partle.rubenayla.xyz/mcp/
That's it. Streamable HTTP transport, MCP spec 2025-06-18. Per-client install instructions: /documentation/mcp-setup/.
Local stdio (for clients that prefer installable servers, or for Glama / Smithery scoring)
pip install partle-mcp
partle-mcp
Or with uvx (no install):
uvx partle-mcp
Or with Docker:
docker run --rm -i ghcr.io/rubenayla/partle-mcp
The stdio package proxies to the public REST API at https://partle.rubenayla.xyz, so you don't need a database or local backend.
Claude Desktop / Claude Code (stdio)
{
"mcpServers": {
"partle": {
"command": "uvx",
"args": ["partle-mcp"]
}
}
}
Tools (20 total)
Read (no auth)
| Tool | Purpose | |------|---------| | search_products | Search the catalog by name, price range, tags, store. Supports cross-language semantic search. | | get_product | Full record for one product by ID. | | search_stores | Search/list stores by name or address. | | get_store | Full record for one store by ID. | | get_stats | Platform-wide totals. | | search_wanted | Browse public buy requests at /wanted โ things people are looking to buy but haven't found. Cross-reference against search_products to offer matches. |
Write (authenticated)
Two ways to authenticate, in preference order:
- OAuth (recommended) โ when you add Partle as a custom connector in claude.ai or any MCP client that supports OAuth, the client walks you through a one-click consent screen and attaches a bearer token automatically. Scopes:
products:read,products:write,inventory:read,inventory:write. Revoke at /account โ Connected apps. RFC 9728 metadata at/.well-known/oauth-protected-resource; RFC 7591 dynamic client registration at/oauth/register. - API key (fallback) โ pass an
api_keyparameter to any write tool. Generate at /account โ API Keys. Use this when your client doesn't support OAuth (raw scripts, programmatic agents).
Products โ public catalog listings.
| Tool | Purpose | |------|---------| | create_product | Add a new listing. Set verified=false when an AI is proposing on behalf of an unconfirmed human. | | update_product | Edit a listing you own. | | delete_product | Remove a listing you own. | | upload_product_image | Attach an image (base64 or URL). | | delete_product_image | Remove an image from a product. | | get_my_products | List products you've created. |
The remote HTTP server also offers
get_upload_url(re-fetches a signed upload URL for an existing product). Not exposed in this stdio package โ use the remote server if you need it.
Inventory โ private workshop tracking (owned / wanted / for_sale / sold / discarded). Private to the owner; does not appear on the public /wanted feed.
| Tool | Purpose | |------|---------| | get_my_inventory | List your inventory items. Filterable by status, project, free text. | | add_inventory_item | Add a row in any lifecycle state. | | update_inventory_item | Patch any field. | | delete_inventory_item | Permanently remove a row. | | mark_for_sale | Convenience: flip an owned item to for_sale and set an asking price. | | mark_sold | Convenience: flip a for_sale item to sold. |
Buy requests โ public demand-side posts on /wanted. Independent of personal inventory.
| Tool | Purpose | |------|---------| | create_buy_request | Post a public buy request (title, description, quantity, optional max_price and contact). |
Feedback
| Tool | Purpose | |------|---------| | submit_feedback | Send freeform feedback about your integration experience. |
Public REST API
Same data, also reachable as plain HTTP for clients without MCP support:
GET /v1/public/products?q=cerrojo&limit=10โ search productsGET /v1/public/stores?q=Madrid&limit=10โ search storesGET /v1/public/wanted?q=bolt&limit=10โ list open public buy requestsGET /v1/public/statsโ platform totalsPOST /v1/public/feedbackโ submit feedback
Base URL: https://partle.rubenayla.xyz. Rate-limited to 100 req/hour per IP.
Full docs: /documentation/ ยท OpenAPI: /openapi.json ยท Discovery: /.well-known/mcp.json.
Example
You: "Use Partle to find a drill under โฌ50." Claude: (calls
search_products(query="drill", max_price=50)) Returns Blackspur 13pc High Speed Drill Bit Set at โฌ4.99 (Lenehans, IE), Flotec Drill Pump 225 GPH at โฌ17.14 (Kooyman Megastore, NL), and a few more โ each with apartle_urlto view the listing.
More examples in the setup guide.
License
Apache-2.0 โ see LICENSE.






