2.0k★by pvoo
marktplaats – OpenClaw Skill
marktplaats is an OpenClaw Skills integration for coding workflows. Search Marktplaats.nl classifieds across all categories with filtering support.
Skill Snapshot
| name | marktplaats |
| description | Search Marktplaats.nl classifieds across all categories with filtering support. OpenClaw Skills integration. |
| owner | pvoo |
| repository | pvoo/marktplaats |
| language | Markdown |
| license | MIT |
| topics | |
| security | L1 |
| install | openclaw add @pvoo/marktplaats |
| last updated | Feb 7, 2026 |
Maintainer

name: marktplaats description: Search Marktplaats.nl classifieds across all categories with filtering support. homepage: https://www.marktplaats.nl metadata: {"clawdbot":{"emoji":"🇳🇱","requires":{"bins":["node"]}}}
Marktplaats Skill
Search any Marktplaats category, filter by condition/delivery, list categories, and fetch listing details.
CLI
npm install -g {baseDir}
# Search
marktplaats-search "<query>" [options]
-n, --limit <num> Number of results (default: 10, max: 100)
-c, --category <id> Category ID (top-level)
--min-price <cents> Minimum price in euro cents
--max-price <cents> Maximum price in euro cents
--sort <relevance|date|price-asc|price-desc>
--param key=value Filter by attribute (repeatable)
--details [target] Fetch details for "first" result or URL/ID
--json Output raw JSON
# Categories
marktplaats-categories # main categories
marktplaats-categories <id> # sub-categories for a category
--json Output raw JSON
Filters
Common filters work with --param:
| Filter | Values |
|---|---|
condition | Nieuw, Refurbished, Zo goed als nieuw, Gebruikt, Niet werkend |
delivery | Ophalen, Verzenden |
buyitnow | true (Direct Kopen only) |
English aliases also work: new, used, like-new, pickup, shipping
Examples
# New laptops only
marktplaats-search "laptop" --param condition=Nieuw
# Used cameras with shipping
marktplaats-search "camera" --param condition=Gebruikt --param delivery=Verzenden
# Cars under €15k
marktplaats-search "bmw 330d" --category 96 --max-price 1500000
# Furniture, pickup only
marktplaats-search "eettafel" --param delivery=Ophalen --sort price-asc
# Get details for first result
marktplaats-search "iphone" -n 1 --details first
# List all categories
marktplaats-categories
# BMW sub-categories
marktplaats-categories 96
Programmatic API (ESM)
import { searchListings, fetchCategories, getListingDetails } from '{baseDir}';
// Search with filters
const results = await searchListings({
query: 'espresso machine',
params: { condition: 'Nieuw', delivery: 'Verzenden' },
limit: 10,
});
// Get categories
const categories = await fetchCategories(); // top-level
const bmw = await fetchCategories(96); // BMW sub-categories
// Fetch listing details
const details = await getListingDetails(results.listings[0].vipUrl);
Notes
- Prices are in euro cents (€15,000 = 1500000)
- Results include full URLs to listings
- Use
--jsonto see all available facets and filter keys - Filter hints are shown after search results
Marktplaats CLI & JS Client
Search Marktplaats.nl classifieds with a clean CLI and JavaScript client. Works for all categories, supports attribute filtering, and includes a detail fetcher.
Install
npm install -g .
# or use locally with: npx marktplaats-search "road bike"
Requires Node 18+ (uses built-in fetch).
CLI
Search
marktplaats-search "<query>" [options]
Options:
-n, --limit <num> Number of results (default 10, max 100)
-c, --category <id> Category ID (top-level)
--min-price <cents> Minimum price in euro cents
--max-price <cents> Maximum price in euro cents
--sort <relevance|date|price-asc|price-desc>
--param key=value Filter by attribute (repeatable)
--details [target] Fetch detail page for "first" result or a URL/ID
--json Output raw JSON from the API
-h, --help Show help
Filters
Filter results with --param:
| Filter | Values |
|---|---|
condition | Nieuw, Refurbished, Zo goed als nieuw, Gebruikt, Niet werkend |
delivery | Ophalen, Verzenden |
buyitnow | true (Direct Kopen only) |
English aliases work too: new, used, like-new, broken, pickup, shipping
Examples
# New laptops only
marktplaats-search "laptop" --param condition=Nieuw
# Used cameras with shipping
marktplaats-search "camera" --param condition=Gebruikt --param delivery=Verzenden
# BMW under €15k, sorted by price
marktplaats-search "bmw 330d" --category 96 --max-price 1500000 --sort price-asc
# Furniture, pickup only
marktplaats-search "eettafel" --param delivery=Ophalen
# Get full details for first result
marktplaats-search "iphone" -n 1 --details first
Categories
marktplaats-categories # main categories
marktplaats-categories <id> # sub-categories
Options:
--json Output raw JSON
-h, --help Show help
Examples:
marktplaats-categories # Show all 36 main categories
marktplaats-categories 91 # Cars sub-categories (BMW, Audi, etc.)
marktplaats-categories 504 # Home & Living sub-categories
Programmatic API
import { searchListings, fetchCategories, getListingDetails } from 'marktplaats';
// Search with filters
const results = await searchListings({
query: 'espresso machine',
limit: 10,
params: { condition: 'Nieuw', delivery: 'Verzenden' },
});
console.log(`Found ${results.total} results`);
results.listings.forEach(listing => {
console.log(`${listing.title} - ${listing.priceDisplay}`);
});
// Get categories
const categories = await fetchCategories(); // top-level
const bmw = await fetchCategories(96); // BMW sub-categories
// Fetch listing details
const details = await getListingDetails(results.listings[0].vipUrl);
console.log(details.description);
API Reference
searchListings(options)
Search for listings.
Options:
query(string, required) - Search querylimit(number) - Max results (default: 10, max: 100)categoryId(number) - Category ID filterminPrice(number) - Min price in centsmaxPrice(number) - Max price in centssort('relevance' | 'date' | 'price-asc' | 'price-desc')params(object) - Attribute filters like{ condition: 'Nieuw' }
Returns: { listings, total, facets, categories, raw }
fetchCategories(parentId?)
Get category options.
Returns: { categories, facets, raw }
getListingDetails(urlOrPath)
Fetch details from a listing page.
Returns: { url, description, priceDisplay, images, structuredData, contentLength }
Notes
- Prices are in euro cents (€15,000 = 1500000)
- Results include full clickable URLs
- Use
--jsonto explore all available facets and filter options - Filter hints are shown after each search
Testing
npm test
License
MIT
Permissions & Security
Security level L1: Low-risk skills with minimal permissions. Review inputs and outputs before running in production.
Requirements
- OpenClaw CLI installed and configured.
- Language: Markdown
- License: MIT
- Topics:
FAQ
How do I install marktplaats?
Run openclaw add @pvoo/marktplaats in your terminal. This installs marktplaats into your OpenClaw Skills catalog.
Does this skill run locally or in the cloud?
OpenClaw Skills execute locally by default. Review the SKILL.md and permissions before running any skill.
Where can I verify the source code?
The source repository is available at https://github.com/openclaw/skills/tree/main/skills/pvoo/marktplaats. Review commits and README documentation before installing.
