About Partle
Partle is an MCP server for searching products and stores in the Partle marketplace and managing listings, inventory, and public buy requests. Public catalog searches need no authentication, while writes and private inventory access require OAuth or an API key.
Key features
- 01Product and store search
- 02Cross-language semantic product search
- 03Product listing management
- 04Private inventory tracking
- 05Public buy request management
Use cases
- 01Find products and stores by query or price
- 02Create or update marketplace listings
- 03Track items owned or for sale
- 04Post a public request for an item
MCP support
Partle exposes marketplace search, listing, inventory, and buy-request tools to MCP clients. It is available as a remote Streamable HTTP server or as a local stdio package; writes and private inventory reads require OAuth or an API key.
Configuration
Remote servers need no local install. Pick your client, then copy the config or install in one click.
https://partle.rubenayla.xyz/mcp/claude mcp add --transport http xyz-rubenayla-partle-marketplace https://partle.rubenayla.xyz/mcp/{"mcpServers":{"xyz-rubenayla-partle-marketplace":{"type":"http","url":"https://partle.rubenayla.xyz/mcp/"}}}Open in Cursor{"servers":{"xyz-rubenayla-partle-marketplace":{"type":"http","url":"https://partle.rubenayla.xyz/mcp/"}}}Open in VS Code{"mcpServers":{"xyz-rubenayla-partle-marketplace":{"type":"http","url":"https://partle.rubenayla.xyz/mcp/"}}}{"mcpServers":{"xyz-rubenayla-partle-marketplace":{"serverUrl":"https://partle.rubenayla.xyz/mcp/"}}}Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.
Tools
21| Parameter | Type | Required | Description |
|---|---|---|---|
| tags | any | No | |
| limit | integer | No | |
| query | string | Yes | |
| offset | integer | No | |
| sort_by | any | No | |
| semantic | boolean | No | |
| store_id | any | No | |
| has_price | any | No | |
| max_price | any | No | |
| min_price | any | No | |
| super_search | boolean | No |
Details
From the project READMEPartle Marketplace MCP Server
Model Context Protocol server for the Partle marketplace — let your AI shop here: search products and stores, get prices and purchase links, or ask it to add a listing for you, all without leaving your assistant.
Live product and store coverage is available through the get_stats tool. Public catalogue reads need no auth. Writes and private inventory reads need OAuth or 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 (name, 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 a
partle_urlto view the listing.
More examples in the setup guide.
License
Apache-2.0 — see LICENSE.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.