Defici Marketplace MCP Server
Server Details
Search and browse global classifieds across 80 markets. No auth required for read-only access.
- Status
- Healthy
- Uptime
- 100.0% over 37 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-03-26
- URL
TDQS
Scored across 7 tools
Each tool targets a distinct resource: single listing, search results, regions, categories, modules, platform overview, and subscription tiers. The only mild overlap is between get_platform_overview and list_modules since both mention enabled modules, but their purposes are clearly separated as summary/metrics versus enumeration/manifests.
All tool names follow a consistent lowercase verb_noun pattern using get_, list_, or search_. The verbs are appropriate to the action, and there are no mixed naming conventions or vague generic names.
Seven tools is well-scoped for a marketplace discovery and platform-information server. Each tool covers a distinct need without redundancy or bloat.
The server covers the full read-only discovery surface: searching listings, retrieving individual listing details, and fetching supporting reference data like regions, categories, modules, platform overview, and subscription info. Contact details are intentionally omitted, and no obvious dead-end workflow remains for the stated marketplace discovery purpose.
Available Tools
7 toolsget_listingARead-onlyIdempotentInspect
Fetch full details for a single listing by its UUID. Returns the listing if active, sold, or expired. Contact details are not returned — use the platform web interface for seller contact. The price is in USD; currency_original and price_original (when present) show what the seller originally priced in before conversion.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Listing UUID (e.g. from search_listings results) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish readOnly/idempotent/non-destructive behavior, so the description only needs to add context beyond that. It does: it documents return coverage (active/sold/expired), a data limitation (contact details omitted), and price semantics (USD with original currency fields). No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, each serving a distinct purpose: core operation, status scope, and output semantics/limitations. Front-loaded and free of filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple single-parameter read tool with no output schema, the description covers scope, notable omissions, and price conversion. It doesn't describe error behavior or a full field list, but the annotations and input schema cover safety and parameter origin, making it adequately complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the id parameter is clearly documented as a listing UUID sourced from search_listings. The tool description mostly repeats 'UUID' rather than adding new input semantics; its price/currency remarks concern output fields, not the input parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific action ('Fetch full details') with a precise target ('a single listing by its UUID'). Also delimits scope by listing statuses (active, sold, expired), which distinguishes it from search_listings and other platform-level sibling tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied rather than explicit: the description indicates the tool is for fetching one known listing by UUID, and the schema points to search_listings as the source of that UUID. However, it never explicitly states when to prefer this tool over search_listings or when not to use it, so the agent must infer the decision context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_platform_overviewARead-onlyIdempotentInspect
What Defici is and its current live scale — not a listings search result, a description of the platform itself: what agents can do here, how many markets and categories are served, how many modules are enabled beyond listing search, and live platform-scale metrics (e.g. total/active listings). Every number is read live at request time; a field is omitted rather than shown as zero or guessed when no real data backs it yet (CBR41). Call this first if you only know Defici as "a place with a search_listings tool."
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses that all numbers are read live at request time and that fields are omitted rather than shown as zero or guessed, a key behavioral trait. This goes beyond the annotations (readOnlyHint, openWorldHint, idempotentHint) by explaining the live-data policy and omission handling, which significantly aids the agent in interpreting results.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is moderately long but well-structured: it starts with the core purpose, clarifies what it is not, lists content, and gives usage guidance. The parenthetical 'CBR41' is internal jargon that may not be useful to all agents, slightly reducing clarity, but it does not detract from the overall structure.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no parameters and no output schema, the description covers the essential context: what the tool returns (platform description, metrics), when to call it, and behavioral notes (live data, omission policy). It does not describe the exact response format, but for an overview tool with a dynamic set of fields, this is acceptable. The guidance to call it first when unfamiliar with Defici is helpful.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the schema coverage is 100% (empty schema). The description does not need to add parameter semantics, but it does add value by explaining the kind of data returned (platform-scale metrics, module counts). With no parameters, the baseline for parameter semantics is high, and the description maintains it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns a platform overview, not a listing search result, and explicitly lists what it includes (agent capabilities, market/category counts, module counts, live metrics). This distinguishes it from siblings like search_listings and get_listing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides an explicit usage scenario: 'Call this first if you only know Defici as a place with a search_listings tool.' It also clarifies it is not a listings search result, which guides the agent away from using it for listing queries. However, it does not name alternative tools or specify when not to use it beyond that scenario.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_regionsARead-onlyIdempotentInspect
Return all supported market regions with their id, country, currency, and languages. Use the region id as the market argument in search_listings.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=true, idempotentHint=true, and destructiveHint=false, covering safety. The description adds the returned fields and the relationship to search_listings, which is useful beyond annotations. It does not contradict them, and the added context is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two compact sentences, with the core function first and usage guidance second. No filler or redundant details; every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter read-only tool with no output schema, the description fully specifies what is returned and how to use the result. Nothing essential is missing for an agent to call this tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero parameters, so the schema carries no parameter info. The description does not need to explain parameters, and the baseline of 4 applies. It appropriately focuses on the output instead.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns all supported market regions with specific fields (id, country, currency, languages), using a specific verb and resource. It also distinguishes itself from siblings like get_listing by focusing on the region list and explicitly ties to search_listings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly instructs to use the region id as the market argument in search_listings, providing a clear when-to-use directive and connecting to a related sibling. This leaves no ambiguity about the tool's role.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_subscription_infoARead-onlyIdempotentInspect
Capability tiers available on Defici, described by what each tier unlocks — not by price (pricing is not finalized yet, so no price figure is returned by this tool). Covers two independent tiers an agent can hold at once: the AI API plan (listing/photo/rate caps) and, where enabled, the partner tier (placement, multi-seat, analytics). Only capabilities that are live today are listed here.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, and idempotentHint=true, covering safety. The description adds valuable context beyond that: it explains the two independent tiers (AI API plan and partner tier), clarifies that no price is returned, and notes that only live capabilities are listed. This gives the agent a good sense of the response's scope without contradicting annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph of three sentences, front-loading the core purpose ('Capability tiers available on Defici...'). It efficiently adds the pricing exclusion and details about the two tiers without excessive fluff. It is slightly verbose but still well-structured and information-dense.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no parameters and no output schema, the description does a good job of explaining what the tool returns (capability tiers and their unlocks) and important caveats (no price, only live capabilities). It does not specify the exact response format (e.g., JSON structure), but for a simple getter with no schema, this is a minor gap. The description is sufficient for an agent to call it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, and the schema description coverage is 100% (trivially). With no parameters to document, the description does not need to add parameter-level details. The baseline for 0-parameter tools is 4, and the description adequately explains what the tool returns, so no deduction is needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: to return capability tiers on Defici, describing what each tier unlocks. It differentiates itself from siblings like get_platform_overview and get_listing by focusing specifically on subscription tiers and explicitly noting that pricing is not returned. The verb 'get' plus the resource 'subscription info' is specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context that this tool is for capability tiers and excludes pricing ('pricing is not finalized yet, so no price figure is returned'). However, it does not explicitly mention when to use this tool over alternatives like get_platform_overview, nor does it state any 'when not to use' beyond pricing. The guidance is implied but not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_categoriesARead-onlyIdempotentInspect
Return the complete category taxonomy for Defici.com. Use the category id values as the category argument in search_listings.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, idempotent, non-destructive). The description adds useful context that the tool returns a taxonomy and how its ids are used elsewhere, which complements the annotations without redundancy.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences with no fluff. The primary purpose is front-loaded, and the usage note is placed second, making it easy to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter read-only tool, the description is fully sufficient: it states what is returned, where the ids are used, and nothing else is required. The absence of an output schema is mitigated by the clear statement that it returns the category taxonomy.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the baseline is 4. No parameter documentation is needed, and the description correctly focuses on the return value and usage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Return the complete category taxonomy for Defici.com' with a specific verb and resource. It distinguishes itself from siblings like get_regions and get_platform_overview by naming the exact data returned.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly instructs to 'Use the category id values as the category argument in search_listings', providing direct guidance on how the output should be consumed and routing the agent to the relevant sibling tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_modulesARead-onlyIdempotentInspect
List every module currently enabled on Defici beyond core listings — contests, market search, agent forum, and others. Read live from the same module registry /api/v1/index and /llms.txt use, so this can never list a module that is not actually reachable right now. Each entry includes its manifest URL — call GET on it for that module's full endpoint list, auth requirements, and capabilities.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint=false. The description adds valuable behavioral context beyond annotations: it reads live from the same registry as /api/v1/index and /llms.txt, guaranteeing reachability, and explains the manifest URL entry. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, each earning its place: the first states purpose and scope, the second explains the live guarantee and what each entry contains. Front-loaded and free of filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless list tool with no output schema, the description covers everything an agent needs: what it lists, why it's reliable (live), and how to proceed with each entry (GET the manifest URL). Complete for its complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, and schema coverage is trivially 100%. Per the rubric, a baseline of 4 applies when no parameters exist. The description doesn't need to add parameter semantics; it correctly focuses on behavior and output.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('List') and a specific resource ('every module currently enabled on Defici'), with explicit scope (beyond core listings) and examples (contests, market search, agent forum). It clearly distinguishes from sibling tools like get_listing or list_categories by targeting the module registry, so an agent can immediately identify its purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context: it lists live modules from the registry, and instructs the agent to call GET on each manifest URL for details. It implies this is the tool to discover available modules, though it does not explicitly name an alternative or state when not to use it. The guidance is sufficient but not exhaustive.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_listingsARead-onlyIdempotentInspect
Search active listings on Defici.com global marketplace. Returns paginated results. Contact details are not included — this is a read-only discovery tool. Prices are in USD: every listing price is stored in USD (converted at ingest from the seller's currency via daily FX rates), and price_min/price_max filter in USD. Each listing may carry currency_original and price_original showing what the seller originally priced in.
| Name | Required | Description | Default |
|---|---|---|---|
| q | No | Free-text search query (matches title and description). Max 200 characters. | |
| city | No | City name filter (partial match, case-insensitive). | |
| page | No | Page number for pagination (default: 1). | |
| limit | No | Results per page (default: 20, max: 30). | |
| market | No | Market/region filter. Use get_regions for valid IDs (e.g. global, dubai, india, lithuania, nigeria). Default: global (all markets). | |
| category | No | Category filter. Use list_categories to get valid IDs (e.g. JOBS, CARS_VEHICLES, PROPERTY_RENT, MOBILES_ELECTRONICS). Human-friendly aliases also accepted (e.g. "cars", "jobs", "electronics"). | |
| price_max | No | Maximum price filter, in USD. All listing prices are stored in USD. | |
| price_min | No | Minimum price filter, in USD. All listing prices are stored in USD. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations, the description discloses meaningful behaviors: paginated results, no contact details, USD normalization with conversion at ingest via daily FX rates, and original-currency fields on listings. None of these contradict the readOnlyHint or idempotentHint annotations, and they add useful context about response contents and currency handling.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences carry distinct, non-redundant information: purpose, return behavior and limitation, and currency semantics. The most important scoping detail (active listings and pagination) is front-loaded, and there is no filler or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description compensates by mentioning pagination, absence of contact details, and the USD/currency context, while annotations cover safety and idempotency. Remaining details such as defaults, max limit, and market/category ID sources are already present in the input schema, so nothing critical is missing for an agent to invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already documents all 8 parameters, so the baseline is 3. The description adds genuine value by explaining the currency model: all prices are stored and filtered in USD, converted at ingest, with currency_original and price_original reflecting the seller's original pricing. This directly enhances correct use of price_min/price_max and interpretation of returned listings.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb and resource, 'Search active listings on Defici.com global marketplace,' and further scopes the tool by noting pagination, read-only intent, and exclusion of contact details. This clearly distinguishes it from siblings such as get_listing (singular detail lookup) and list_categories (taxonomy listing), even without naming them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear use context: it is a discovery tool for active listings, with pagination and a note that contact details are intentionally absent. However, it does not explicitly name an alternative or state 'use get_listing when contact details are needed,' leaving the contrast to inference rather than direct guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
- Changed
search_listings2 fields changed- changed
Input schema / properties / price_max / descriptionPrevious value: -"Maximum price filter. Prices are raw numbers with no confirmed currency unit — do not assume denomination."New value: +"Maximum price filter, in USD. All listing prices are stored in USD." - changed
Input schema / properties / price_min / descriptionPrevious value: -"Minimum price filter. Prices are raw numbers with no confirmed currency unit — do not assume denomination."New value: +"Minimum price filter, in USD. All listing prices are stored in USD."
1 tool update
- Changed
search_listings3 fields changed- added
Input schema / additionalPropertiesAdded value: +false - changed
Input schema / properties / q / descriptionPrevious value: -"Free-text search query (matches title and description)"New value: +"Free-text search query (matches title and description). Max 200 characters." - added
Input schema / properties / q / maxLengthAdded value: +200
1 tool update
- Removed
get_roadmap
4 tool updates
- Added
get_platform_overview - Added
get_roadmap - Added
get_subscription_info - Added
list_modules
4 tool updates
- First observed
get_listing - First observed
get_regions - First observed
list_categories - First observed
search_listings
Related MCP Connectors
- AssetLogOAuthai.assetlog
Search vehicles, real estate and jobs; manage your listings, alerts, enquiries and viewings.
Search commercial real estate listings. Reads need no token; authoring is self-serve OAuth (DCR).
Search MCP servers, MCP clients and AI agents, and retrieve listing details. Free, read-only access.
One API for public web data across social, directories and real estate, as clean JSON.
Related MCP Servers
- AlicenseBqualityCmaintenanceEnables AI assistants to search and retrieve classified listings from marktplaats.nl and 2dehands.be, including details, seller info, categories, and saved searches, with optional authenticated access to messages, listings, favorites, and bids.14MIT
- AlicenseAqualityAmaintenanceEnables AI agents to search and monitor Dutch and Belgian classifieds (Marktplaats and 2dehands) for listings, seller profiles, and categories.52MIT
- FlicenseNot gradedqualityFmaintenanceEnables AI agents to search and retrieve listings from Sweden's largest second-hand marketplaces, Blocket and Tradera. Returns unified data including prices, images, seller information, and direct links to listings.8-
- FlicenseNot gradedqualityDmaintenanceEnables searching and browsing 45,000+ classified ads on Joomil.ch, including filtering by category, canton, price, and location, retrieving listing details, and exploring categories.-
Glama MCP Gateway
Add one secure layer between your agents and this server.