このMCPでできること
Searches Marktplaats and 2dehands listings, compares asking prices, and provides listing and seller trust information.
ツール
入力スキーマ
{'type': 'object', 'required': ['query'], 'properties': {'site': {'enum': ['marktplaats', '2dehands'], 'type': 'string', 'default': 'marktplaats', 'description': 'Which marketplace: marktplaats (Netherlands) or 2dehands (Belgium).'}, 'query': {'type': 'string', 'description': "Free-text search, e.g. 'racefiets' or 'iphone 15'. May be empty if a category is given."}, 'exclude': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'default': None, 'description': "Drop listings whose title or description contains any of these words, e.g. ['hoesje', 'defect', 'gezocht']."}, 'category': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': "Top-level category name (Dutch, e.g. 'Fietsen en Brommers') or numeric id. See list_categories."}, 'delivery': {'anyOf': [{'enum': ['pickup', 'shipping'], 'type': 'string'}, {'type': 'null'}], 'default': None, 'description': "'shipping' for ads that can be shipped, 'pickup' for collection."}, 'language': {'anyOf': [{'enum': ['nl', 'fr', 'all'], 'type': 'string'}, {'type': 'null'}], 'default': None, 'description': "2dehands only: 'nl' for Dutch-language ads, 'fr' for French, 'all' (default)."}, 'postcode': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': "Dutch/Belgian postal code to search around, e.g. '1011 AB' or '2000'. Required for distance filtering and for distance_km in results."}, 'price_to': {'anyOf': [{'type': 'number', 'minimum': 0}, {'type': 'null'}], 'default': None, 'description': 'Maximum price in euros.'}, 'condition': {'anyOf': [{'enum': ['new', 'as_good_as_new', 'used', 'refurbished', 'not_working'], 'type': 'string'}, {'type': 'null'}], 'default': None, 'description': 'Filter by item condition.'}, 'attributes': {'anyOf': [{'type': 'object', 'additionalProperties': {'anyOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, {'type': 'null'}], 'default': None, 'description': "Category-specific filters as {filter: value}, using the labels from list_category_filters, e.g. {'Merk': 'Gazelle', 'Framehoogte': '57 tot 61 cm'} or {'Bouwjaar': '2018-2022', 'Kilometerstand': '-100000', 'Brandstof': 'Benzine'}. A list means any of those values. Ranges are 'min-max', 'min-' or '-max'."}, 'price_from': {'anyOf': [{'type': 'number', 'minimum': 0}, {'type': 'null'}], 'default': None, 'description': 'Minimum price in euros.'}, 'distance_km': {'anyOf': [{'type': 'number', 'exclusiveMinimum': 0}, {'type': 'null'}], 'default': None, 'description': 'Max distance from postcode in kilometers (needs postcode).'}, 'sample_size': {'type': 'integer', 'default': 60, 'maximum': 100, 'minimum': 10, 'description': 'Listings to sample, most relevant first (10-100).'}, 'subcategory': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': "Subcategory name (e.g. 'Fietsen | Racefietsen' or 'Fietsen | Heren | Herenfietsen') or numeric id. See list_categories with a parent."}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'title': 'PriceStats', 'required': ['site', 'query', 'total_count', 'sample_size'], 'properties': {'max': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'title': 'Max', 'default': None}, 'min': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'title': 'Min', 'default': None}, 'p25': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'title': 'P25', 'default': None}, 'p75': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'title': 'P75', 'default': None}, 'mean': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'title': 'Mean', 'default': None}, 'note': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Note', 'default': None}, 'site': {'type': 'string', 'title': 'Site'}, 'query': {'type': 'string', 'title': 'Query'}, 'median': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'title': 'Median', 'default': None}, 'cheapest': {'type': 'array', 'items': {'type': 'object', 'title': 'Listing', 'required': ['id', 'title', 'price', 'url'], 'properties': {'id': {'type': 'string', 'title': 'Id'}, 'url': {'type': 'string', 'title': 'Url'}, 'city': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'City', 'default': None}, 'price': {'type': 'string', 'title': 'Price'}, 'title': {'type': 'string', 'title': 'Title'}, 'listed': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Listed', 'default': None}, 'seller': {'anyOf': [{'type': 'object', 'title': 'Seller', 'properties': {'id': {'anyOf': [{'type': 'integer'}, {'type': 'null'}], 'title': 'Id', 'default': None}, 'name': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Name', 'default': None}, 'is_verified': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'title': 'Is Verified', 'default': None}}}, {'type': 'null'}], 'default': None}, 'reserved': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'title': 'Reserved', 'default': None}, 'attributes': {'anyOf': [{'type': 'object', 'additionalProperties': {'type': 'string'}}, {'type': 'null'}], 'title': 'Attributes', 'default': None}, 'image_urls': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'title': 'Image Urls', 'default': None}, 'category_id': {'anyOf': [{'type': 'integer'}, {'type': 'null'}], 'title': 'Category Id', 'default': None}, 'description': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Description', 'default': None}, 'distance_km': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'title': 'Distance Km', 'default': None}, 'is_business': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'title': 'Is Business', 'default': None}, 'price_euros': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'title': 'Price Euros', 'default': None}, 'is_sponsored': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'title': 'Is Sponsored', 'default': None}}}, 'title': 'Cheapest', 'default': []}, 'sample_size': {'type': 'integer', 'title': 'Sample Size'}, 'total_count': {'type': 'integer', 'title': 'Total Count'}, 'excluded_outliers': {'anyOf': [{'type': 'integer'}, {'type': 'null'}], 'title': 'Excluded Outliers', 'default': None}}}
入力スキーマ
{'type': 'object', 'properties': {'site': {'enum': ['marktplaats', '2dehands'], 'type': 'string', 'default': 'marktplaats', 'description': 'Which marketplace: marktplaats (Netherlands) or 2dehands (Belgium).'}, 'limit': {'type': 'integer', 'default': 30, 'maximum': 100, 'minimum': 1, 'description': 'Max new listings to return (1-100).'}, 'query': {'type': 'string', 'default': '', 'description': "Free-text search, e.g. 'racefiets' or 'iphone 15'. May be empty if a category is given."}, 'since': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': "ISO 8601 timestamp (e.g. '2026-07-15T09:00:00Z'); only listings placed after this moment are returned. Defaults to 24 hours ago. Pass the 'cursor' from the previous call to poll incrementally."}, 'exclude': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'default': None, 'description': "Drop listings whose title or description contains any of these words, e.g. ['hoesje', 'defect', 'gezocht']."}, 'category': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': "Top-level category name (Dutch, e.g. 'Fietsen en Brommers') or numeric id. See list_categories."}, 'delivery': {'anyOf': [{'enum': ['pickup', 'shipping'], 'type': 'string'}, {'type': 'null'}], 'default': None, 'description': "'shipping' for ads that can be shipped, 'pickup' for collection."}, 'language': {'anyOf': [{'enum': ['nl', 'fr', 'all'], 'type': 'string'}, {'type': 'null'}], 'default': None, 'description': "2dehands only: 'nl' for Dutch-language ads, 'fr' for French, 'all' (default)."}, 'postcode': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': "Dutch/Belgian postal code to search around, e.g. '1011 AB' or '2000'. Required for distance filtering and for distance_km in results."}, 'price_to': {'anyOf': [{'type': 'number', 'minimum': 0}, {'type': 'null'}], 'default': None, 'description': 'Maximum price in euros.'}, 'condition': {'anyOf': [{'enum': ['new', 'as_good_as_new', 'used', 'refurbished', 'not_working'], 'type': 'string'}, {'type': 'null'}], 'default': None, 'description': 'Filter by item condition.'}, 'attributes': {'anyOf': [{'type': 'object', 'additionalProperties': {'anyOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, {'type': 'null'}], 'default': None, 'description': "Category-specific filters as {filter: value}, using the labels from list_category_filters, e.g. {'Merk': 'Gazelle', 'Framehoogte': '57 tot 61 cm'} or {'Bouwjaar': '2018-2022', 'Kilometerstand': '-100000', 'Brandstof': 'Benzine'}. A list means any of those values. Ranges are 'min-max', 'min-' or '-max'."}, 'price_from': {'anyOf': [{'type': 'number', 'minimum': 0}, {'type': 'null'}], 'default': None, 'description': 'Minimum price in euros.'}, 'distance_km': {'anyOf': [{'type': 'number', 'exclusiveMinimum': 0}, {'type': 'null'}], 'default': None, 'description': 'Max distance from postcode in kilometers (needs postcode).'}, 'subcategory': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': "Subcategory name (e.g. 'Fietsen | Racefietsen' or 'Fietsen | Heren | Herenfietsen') or numeric id. See list_categories with a parent."}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'title': 'NewListingsResult', 'required': ['site', 'since', 'cursor', 'new_count', 'listings'], 'properties': {'note': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Note', 'default': None}, 'site': {'type': 'string', 'title': 'Site'}, 'since': {'type': 'string', 'title': 'Since'}, 'cursor': {'type': 'string', 'title': 'Cursor'}, 'listings': {'type': 'array', 'items': {'type': 'object', 'title': 'Listing', 'required': ['id', 'title', 'price', 'url'], 'properties': {'id': {'type': 'string', 'title': 'Id'}, 'url': {'type': 'string', 'title': 'Url'}, 'city': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'City', 'default': None}, 'price': {'type': 'string', 'title': 'Price'}, 'title': {'type': 'string', 'title': 'Title'}, 'listed': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Listed', 'default': None}, 'seller': {'anyOf': [{'type': 'object', 'title': 'Seller', 'properties': {'id': {'anyOf': [{'type': 'integer'}, {'type': 'null'}], 'title': 'Id', 'default': None}, 'name': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Name', 'default': None}, 'is_verified': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'title': 'Is Verified', 'default': None}}}, {'type': 'null'}], 'default': None}, 'reserved': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'title': 'Reserved', 'default': None}, 'attributes': {'anyOf': [{'type': 'object', 'additionalProperties': {'type': 'string'}}, {'type': 'null'}], 'title': 'Attributes', 'default': None}, 'image_urls': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'title': 'Image Urls', 'default': None}, 'category_id': {'anyOf': [{'type': 'integer'}, {'type': 'null'}], 'title': 'Category Id', 'default': None}, 'description': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Description', 'default': None}, 'distance_km': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'title': 'Distance Km', 'default': None}, 'is_business': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'title': 'Is Business', 'default': None}, 'price_euros': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'title': 'Price Euros', 'default': None}, 'is_sponsored': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'title': 'Is Sponsored', 'default': None}}}, 'title': 'Listings'}, 'new_count': {'type': 'integer', 'title': 'New Count'}, 'truncated': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'title': 'Truncated', 'default': None}}}
入力スキーマ
{'type': 'object', 'required': ['listing_id'], 'properties': {'site': {'enum': ['marktplaats', '2dehands'], 'type': 'string', 'default': 'marktplaats', 'description': 'Which marketplace: marktplaats (Netherlands) or 2dehands (Belgium).'}, 'listing_id': {'type': 'string', 'description': "Listing id from search results (e.g. 'm2400641485') or a pasted marktplaats.nl / 2dehands.be listing URL."}, 'max_images': {'type': 'integer', 'default': 5, 'maximum': 20, 'minimum': 0, 'description': 'Max image URLs to return (0-20).'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'title': 'ListingDetails', 'required': ['id', 'site', 'url'], 'properties': {'id': {'type': 'string', 'title': 'Id'}, 'url': {'type': 'string', 'title': 'Url'}, 'city': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'City', 'default': None}, 'note': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Note', 'default': None}, 'site': {'type': 'string', 'title': 'Site'}, 'price': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Price', 'default': None}, 'since': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Since', 'default': None}, 'title': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Title', 'default': None}, 'seller': {'anyOf': [{'type': 'object', 'title': 'Seller', 'properties': {'id': {'anyOf': [{'type': 'integer'}, {'type': 'null'}], 'title': 'Id', 'default': None}, 'name': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Name', 'default': None}, 'is_verified': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'title': 'Is Verified', 'default': None}}}, {'type': 'object', 'title': 'SellerDetails', 'properties': {'id': {'anyOf': [{'type': 'integer'}, {'type': 'null'}], 'title': 'Id', 'default': None}, 'name': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Name', 'default': None}, 'type': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Type', 'default': None}, 'active_since': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Active Since', 'default': None}, 'average_score': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'title': 'Average Score', 'default': None}, 'listings_count': {'anyOf': [{'type': 'integer'}, {'type': 'null'}], 'title': 'Listings Count', 'default': None}, 'response_label': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Response Label', 'default': None}, 'number_of_reviews': {'anyOf': [{'type': 'integer'}, {'type': 'null'}], 'title': 'Number Of Reviews', 'default': None}, 'response_rate_percent': {'anyOf': [{'type': 'integer'}, {'type': 'null'}], 'title': 'Response Rate Percent', 'default': None}}}, {'type': 'null'}], 'title': 'Seller', 'default': None}, 'status': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Status', 'default': None}, 'bidding': {'anyOf': [{'type': 'object', 'title': 'Bidding', 'required': ['enabled'], 'properties': {'enabled': {'type': 'boolean', 'title': 'Enabled'}, 'bids_count': {'anyOf': [{'type': 'integer'}, {'type': 'null'}], 'title': 'Bids Count', 'default': None}, 'highest_bid_euros': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'title': 'Highest Bid Euros', 'default': None}, 'minimum_bid_euros': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'title': 'Minimum Bid Euros', 'default': None}}}, {'type': 'null'}], 'default': None}, 'country': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Country', 'default': None}, 'delivery': {'anyOf': [{'enum': ['pickup', 'shipping', 'both'], 'type': 'string'}, {'type': 'null'}], 'title': 'Delivery', 'default': None}, 'postcode': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Postcode', 'default': None}, 'reserved': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'title': 'Reserved', 'default': None}, 'listed_at': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Listed At', 'default': None}, 'attributes': {'anyOf': [{'type': 'object', 'additionalProperties': {'type': 'string'}}, {'type': 'null'}], 'title': 'Attributes', 'default': None}, 'buy_it_now': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'title': 'Buy It Now', 'default': None}, 'image_urls': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'title': 'Image Urls', 'default': None}, 'price_type': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Price Type', 'default': None}, 'view_count': {'anyOf': [{'type': 'integer'}, {'type': 'null'}], 'title': 'View Count', 'default': None}, 'category_id': {'anyOf': [{'type': 'integer'}, {'type': 'null'}], 'title': 'Category Id', 'default': None}, 'description': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Description', 'default': None}, 'image_count': {'anyOf': [{'type': 'integer'}, {'type': 'null'}], 'title': 'Image Count', 'default': None}, 'price_euros': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'title': 'Price Euros', 'default': None}, 'car_attributes': {'anyOf': [{'type': 'object', 'additionalProperties': {'type': 'string'}}, {'type': 'null'}], 'title': 'Car Attributes', 'default': None}, 'favorited_count': {'anyOf': [{'type': 'integer'}, {'type': 'null'}], 'title': 'Favorited Count', 'default': None}}}
入力スキーマ
{'type': 'object', 'required': ['seller_id'], 'properties': {'site': {'enum': ['marktplaats', '2dehands'], 'type': 'string', 'default': 'marktplaats', 'description': 'Which marketplace: marktplaats (Netherlands) or 2dehands (Belgium).'}, 'seller_id': {'type': 'integer', 'description': "Numeric seller id from a listing's seller field."}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'title': 'SellerProfile', 'required': ['seller_id', 'site'], 'properties': {'site': {'type': 'string', 'title': 'Site'}, 'seller_id': {'type': 'integer', 'title': 'Seller Id'}, 'average_score': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'title': 'Average Score', 'default': None}, 'payment_method': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Payment Method', 'default': None}, 'business_verified': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'title': 'Business Verified', 'default': None}, 'number_of_reviews': {'anyOf': [{'type': 'integer'}, {'type': 'null'}], 'title': 'Number Of Reviews', 'default': None}, 'bank_account_verified': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'title': 'Bank Account Verified', 'default': None}, 'phone_number_verified': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'title': 'Phone Number Verified', 'default': None}, 'identification_verified': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'title': 'Identification Verified', 'default': None}, 'low_bid_threshold_percent': {'anyOf': [{'type': 'integer'}, {'type': 'null'}], 'title': 'Low Bid Threshold Percent', 'default': None}}}
入力スキーマ
{'type': 'object', 'properties': {'parent': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': 'Omit for all top-level categories; pass a top-level category name or id for its subcategories.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'title': 'CategoriesResult', 'required': ['level', 'categories'], 'properties': {'level': {'enum': ['L1', 'L2'], 'type': 'string', 'title': 'Level'}, 'parent': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Parent', 'default': None}, 'categories': {'type': 'array', 'items': {'type': 'object', 'title': 'Category', 'required': ['id', 'name'], 'properties': {'id': {'type': 'integer', 'title': 'Id'}, 'name': {'type': 'string', 'title': 'Name'}, 'parent': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Parent', 'default': None}}}, 'title': 'Categories'}}}
入力スキーマ
{'type': 'object', 'properties': {'site': {'enum': ['marktplaats', '2dehands'], 'type': 'string', 'default': 'marktplaats', 'description': 'Which marketplace: marktplaats (Netherlands) or 2dehands (Belgium).'}, 'query': {'type': 'string', 'default': '', 'description': 'Optional search text; needed when no category is given.'}, 'category': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': "Top-level category name (Dutch, e.g. 'Fietsen en Brommers') or numeric id. See list_categories."}, 'max_options': {'type': 'integer', 'default': 25, 'maximum': 200, 'minimum': 1, 'description': 'Max values per filter, most common first (1-200).'}, 'subcategory': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': "Subcategory name (e.g. 'Fietsen | Racefietsen' or 'Fietsen | Heren | Herenfietsen') or numeric id. See list_categories with a parent."}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'title': 'FiltersResult', 'required': ['site', 'filters'], 'properties': {'note': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Note', 'default': None}, 'site': {'type': 'string', 'title': 'Site'}, 'query': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Query', 'default': None}, 'filters': {'type': 'array', 'items': {'type': 'object', 'title': 'SearchFilter', 'required': ['key', 'label', 'type'], 'properties': {'key': {'type': 'string', 'title': 'Key'}, 'max': {'anyOf': [{'type': 'integer'}, {'type': 'null'}], 'title': 'Max', 'default': None}, 'min': {'anyOf': [{'type': 'integer'}, {'type': 'null'}], 'title': 'Min', 'default': None}, 'type': {'enum': ['choice', 'range'], 'type': 'string', 'title': 'Type'}, 'unit': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Unit', 'default': None}, 'label': {'type': 'string', 'title': 'Label'}, 'options': {'type': 'array', 'items': {'type': 'object', 'title': 'FilterOption', 'required': ['label', 'id'], 'properties': {'id': {'type': 'integer', 'title': 'Id'}, 'count': {'anyOf': [{'type': 'integer'}, {'type': 'null'}], 'title': 'Count', 'default': None}, 'label': {'type': 'string', 'title': 'Label'}}}, 'title': 'Options', 'default': []}}}, 'title': 'Filters'}, 'category': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Category', 'default': None}, 'subcategory': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Subcategory', 'default': None}}}
入力スキーマ
{'type': 'object', 'required': ['seller_id'], 'properties': {'site': {'enum': ['marktplaats', '2dehands'], 'type': 'string', 'default': 'marktplaats', 'description': 'Which marketplace: marktplaats (Netherlands) or 2dehands (Belgium).'}, 'limit': {'type': 'integer', 'default': 20, 'maximum': 100, 'minimum': 1, 'description': 'Results per page (1-100).'}, 'query': {'type': 'string', 'default': '', 'description': "Optional text to filter the seller's ads."}, 'offset': {'type': 'integer', 'default': 0, 'minimum': 0, 'description': "Pagination: pass 'next_offset' from the previous result."}, 'compact': {'type': 'boolean', 'default': True, 'description': 'True (default) returns a token-efficient shortlist; False adds description, seller, images and attributes per listing.'}, 'sort_by': {'enum': ['relevance', 'date', 'price', 'location'], 'type': 'string', 'default': 'date', 'description': "'relevance' (default), 'date' (newest first with desc), 'price' or 'location'."}, 'seller_id': {'type': 'integer', 'description': 'Numeric seller id.'}, 'sort_order': {'enum': ['asc', 'desc'], 'type': 'string', 'default': 'desc', 'description': "'asc' or 'desc'."}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'title': 'SearchResult', 'required': ['site', 'total_count', 'offset', 'limit', 'returned', 'listings'], 'properties': {'note': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Note', 'default': None}, 'site': {'type': 'string', 'title': 'Site'}, 'limit': {'type': 'integer', 'title': 'Limit'}, 'offset': {'type': 'integer', 'title': 'Offset'}, 'listings': {'type': 'array', 'items': {'type': 'object', 'title': 'Listing', 'required': ['id', 'title', 'price', 'url'], 'properties': {'id': {'type': 'string', 'title': 'Id'}, 'url': {'type': 'string', 'title': 'Url'}, 'city': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'City', 'default': None}, 'price': {'type': 'string', 'title': 'Price'}, 'title': {'type': 'string', 'title': 'Title'}, 'listed': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Listed', 'default': None}, 'seller': {'anyOf': [{'type': 'object', 'title': 'Seller', 'properties': {'id': {'anyOf': [{'type': 'integer'}, {'type': 'null'}], 'title': 'Id', 'default': None}, 'name': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Name', 'default': None}, 'is_verified': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'title': 'Is Verified', 'default': None}}}, {'type': 'null'}], 'default': None}, 'reserved': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'title': 'Reserved', 'default': None}, 'attributes': {'anyOf': [{'type': 'object', 'additionalProperties': {'type': 'string'}}, {'type': 'null'}], 'title': 'Attributes', 'default': None}, 'image_urls': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'title': 'Image Urls', 'default': None}, 'category_id': {'anyOf': [{'type': 'integer'}, {'type': 'null'}], 'title': 'Category Id', 'default': None}, 'description': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Description', 'default': None}, 'distance_km': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'title': 'Distance Km', 'default': None}, 'is_business': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'title': 'Is Business', 'default': None}, 'price_euros': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'title': 'Price Euros', 'default': None}, 'is_sponsored': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'title': 'Is Sponsored', 'default': None}}}, 'title': 'Listings'}, 'returned': {'type': 'integer', 'title': 'Returned'}, 'next_offset': {'anyOf': [{'type': 'integer'}, {'type': 'null'}], 'title': 'Next Offset', 'default': None}, 'total_count': {'type': 'integer', 'title': 'Total Count'}, 'suggested_query': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Suggested Query', 'default': None}}}
入力スキーマ
{'type': 'object', 'properties': {'site': {'enum': ['marktplaats', '2dehands'], 'type': 'string', 'default': 'marktplaats', 'description': 'Which marketplace: marktplaats (Netherlands) or 2dehands (Belgium).'}, 'limit': {'type': 'integer', 'default': 10, 'maximum': 100, 'minimum': 1, 'description': 'Results per page (1-100).'}, 'query': {'type': 'string', 'default': '', 'description': "Free-text search, e.g. 'racefiets' or 'iphone 15'. May be empty if a category is given."}, 'offset': {'type': 'integer', 'default': 0, 'minimum': 0, 'description': "Pagination: pass 'next_offset' from the previous result."}, 'compact': {'type': 'boolean', 'default': True, 'description': 'True (default) returns a token-efficient shortlist; False adds description, seller, images and attributes per listing.'}, 'exclude': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'default': None, 'description': "Drop listings whose title or description contains any of these words, e.g. ['hoesje', 'defect', 'gezocht']."}, 'sort_by': {'enum': ['relevance', 'date', 'price', 'location'], 'type': 'string', 'default': 'relevance', 'description': "'relevance' (default), 'date' (newest first with desc), 'price' or 'location'."}, 'category': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': "Top-level category name (Dutch, e.g. 'Fietsen en Brommers') or numeric id. See list_categories."}, 'delivery': {'anyOf': [{'enum': ['pickup', 'shipping'], 'type': 'string'}, {'type': 'null'}], 'default': None, 'description': "'shipping' for ads that can be shipped, 'pickup' for collection."}, 'language': {'anyOf': [{'enum': ['nl', 'fr', 'all'], 'type': 'string'}, {'type': 'null'}], 'default': None, 'description': "2dehands only: 'nl' for Dutch-language ads, 'fr' for French, 'all' (default)."}, 'postcode': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': "Dutch/Belgian postal code to search around, e.g. '1011 AB' or '2000'. Required for distance filtering and for distance_km in results."}, 'price_to': {'anyOf': [{'type': 'number', 'minimum': 0}, {'type': 'null'}], 'default': None, 'description': 'Maximum price in euros.'}, 'condition': {'anyOf': [{'enum': ['new', 'as_good_as_new', 'used', 'refurbished', 'not_working'], 'type': 'string'}, {'type': 'null'}], 'default': None, 'description': 'Filter by item condition.'}, 'attributes': {'anyOf': [{'type': 'object', 'additionalProperties': {'anyOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}]}}, {'type': 'null'}], 'default': None, 'description': "Category-specific filters as {filter: value}, using the labels from list_category_filters, e.g. {'Merk': 'Gazelle', 'Framehoogte': '57 tot 61 cm'} or {'Bouwjaar': '2018-2022', 'Kilometerstand': '-100000', 'Brandstof': 'Benzine'}. A list means any of those values. Ranges are 'min-max', 'min-' or '-max'."}, 'price_from': {'anyOf': [{'type': 'number', 'minimum': 0}, {'type': 'null'}], 'default': None, 'description': 'Minimum price in euros.'}, 'sort_order': {'enum': ['asc', 'desc'], 'type': 'string', 'default': 'desc', 'description': "'asc' or 'desc'."}, 'distance_km': {'anyOf': [{'type': 'number', 'exclusiveMinimum': 0}, {'type': 'null'}], 'default': None, 'description': 'Max distance from postcode in kilometers (needs postcode).'}, 'subcategory': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'default': None, 'description': "Subcategory name (e.g. 'Fietsen | Racefietsen' or 'Fietsen | Heren | Herenfietsen') or numeric id. See list_categories with a parent."}, 'include_unpriced': {'type': 'boolean', 'default': False, 'description': "Keep ads without an asking price (free, 'Bieden' without amount) when sorting by price or filtering on price. Default False: those ads would otherwise sort as â\x82¬0 and flood the cheapest pages."}, 'include_sponsored': {'type': 'boolean', 'default': False, 'description': 'Include paid promotions (DAGTOPPER/TOPADVERTENTIE) and the sponsored top block.'}, 'offered_since_days': {'anyOf': [{'type': 'number', 'exclusiveMinimum': 0}, {'type': 'null'}], 'default': None, 'description': 'Only listings placed within the last N days.'}}, 'additionalProperties': False}
出力スキーマ
{'type': 'object', 'title': 'SearchResult', 'required': ['site', 'total_count', 'offset', 'limit', 'returned', 'listings'], 'properties': {'note': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Note', 'default': None}, 'site': {'type': 'string', 'title': 'Site'}, 'limit': {'type': 'integer', 'title': 'Limit'}, 'offset': {'type': 'integer', 'title': 'Offset'}, 'listings': {'type': 'array', 'items': {'type': 'object', 'title': 'Listing', 'required': ['id', 'title', 'price', 'url'], 'properties': {'id': {'type': 'string', 'title': 'Id'}, 'url': {'type': 'string', 'title': 'Url'}, 'city': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'City', 'default': None}, 'price': {'type': 'string', 'title': 'Price'}, 'title': {'type': 'string', 'title': 'Title'}, 'listed': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Listed', 'default': None}, 'seller': {'anyOf': [{'type': 'object', 'title': 'Seller', 'properties': {'id': {'anyOf': [{'type': 'integer'}, {'type': 'null'}], 'title': 'Id', 'default': None}, 'name': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Name', 'default': None}, 'is_verified': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'title': 'Is Verified', 'default': None}}}, {'type': 'null'}], 'default': None}, 'reserved': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'title': 'Reserved', 'default': None}, 'attributes': {'anyOf': [{'type': 'object', 'additionalProperties': {'type': 'string'}}, {'type': 'null'}], 'title': 'Attributes', 'default': None}, 'image_urls': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'null'}], 'title': 'Image Urls', 'default': None}, 'category_id': {'anyOf': [{'type': 'integer'}, {'type': 'null'}], 'title': 'Category Id', 'default': None}, 'description': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Description', 'default': None}, 'distance_km': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'title': 'Distance Km', 'default': None}, 'is_business': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'title': 'Is Business', 'default': None}, 'price_euros': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'title': 'Price Euros', 'default': None}, 'is_sponsored': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}], 'title': 'Is Sponsored', 'default': None}}}, 'title': 'Listings'}, 'returned': {'type': 'integer', 'title': 'Returned'}, 'next_offset': {'anyOf': [{'type': 'integer'}, {'type': 'null'}], 'title': 'Next Offset', 'default': None}, 'total_count': {'type': 'integer', 'title': 'Total Count'}, 'suggested_query': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Suggested Query', 'default': None}}}
最近のツール変更
類似のMCPサーバー
API Direct
Searches and retrieves data from social networks, news and Google services, while also providing Amazon product, seller, ranking,…
Bonanza
Searches active Bonanza marketplace listings and retrieves individual item details.
cyclesite-mcp-server
Supports searching, comparing, valuing, buying, selling, reserving, and messaging about used bicycles on a UK marketplace.
MONO Social
Provides directory search for local places, events, listings, services, offers, bookings, reservations, tickets, and products.
Campo Belo
Provides Campo Belo local discovery for places, events, menus, offers, services, bookings, reservations, tickets, and purchases.
Bom Retiro
Provides Bom Retiro local place, event, menu, offer, service, booking, reservation, ticketing, and checkout capabilities.
Bogeyland
Provides directory search for places, events, services, offers, bookings, reservations, tickets, menus, and purchases.
Genesis Social
Provides directory search and transactions for local places, events, restaurants, services, offers, bookings, and tickets.