marktplaats-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| logging | {} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| search_listingsA | Search second-hand listings on Marktplaats or 2dehands with filters for category, category-specific attributes, price range, condition, delivery, recency and distance from a postal code. Paid promotions are filtered out unless include_sponsored is set. |
| get_listing_detailsA | Fetch the full advertisement: complete description, attributes, status (active/closed), exact listing time, view and favorite counts, bidding state, shipping, images, and seller signals such as response rate and account age. |
| get_seller_profileA | Look up a seller's trust signals: verified bank account / identity / phone number, business verification, payment method, review score and count. Null means the marketplace does not report that signal. Use list_seller_listings to see everything the seller currently offers. |
| list_seller_listingsA | Everything one seller currently has on offer. Useful to spot dealers posing as private sellers, duplicate or suspicious ads, and bundle deals. |
| list_categoriesA | Browse the category tree (shared by marktplaats.nl and 2dehands.be) to find names/ids for search_listings' category and subcategory filters. |
| list_category_filtersA | Discover the filters available for a category or search (brand, frame height, mileage, fuel, RAM, ...), with their valid values and how many ads match each. Pass the labels to search_listings' 'attributes' parameter. |
| check_new_listingsA | Poll for listings placed after a given moment (newest first, paid promotions filtered out). Stateless: store the returned 'cursor' and pass it as 'since' on the next call. When the result is truncated the cursor only advances to the oldest ad returned, so nothing is ever skipped. |
| analyze_pricesA | Price statistics (min, quartiles, median, max, mean) over the most relevant asking prices for a search, plus the cheapest matches. Free, bidding-only and reserved ads are excluded and outliers beyond 1.5x the interquartile range are trimmed. Most reliable with a subcategory plus attributes (e.g. subcategory 'Mobiele telefoons | Apple iPhone', attributes {'Model': 'iPhone 15', 'Opslagcapaciteit': '128 GB'}) instead of free text, which drags in accessories. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| bargain_hunt | Find and vet the best deals for an item. |
| vet_listing | Assess whether one listing is trustworthy. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| categories | Top-level Marktplaats/2dehands categories (ids and Dutch names). |
TDQS
Scored across 8 tools
Each tool targets a distinct concern: listing retrieval, search, seller trust, seller inventory, category browsing, filter discovery, polling, and price analysis. There is no meaningful overlap between them.
Tool names follow a consistent verb_noun pattern (get_, search_, list_, check_, analyze_). Minor deviation: list_categories and list_category_filters are similar in prefix but clearly distinct in purpose.
8 tools is well-scoped for a marketplace MCP server. Each tool covers a distinct user need without redundancy or bloat.
The surface covers search, detail retrieval, seller trust, category/filter discovery, polling, and price analysis. Missing operations like placing bids or posting listings are likely out of scope for a read-only research-oriented server, so the gap is minor.