fixou
Server Details
Create and track quote requests to local French tradespeople (80 trades) on fixou.fr.
- Status
- Healthy
- Uptime
- 100.0% over 72 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 3 tools
Each tool maps to a distinct action on a distinct resource: create_request (write), get_request (read by id), list_categories (reference data). The descriptions explicitly cross-reference each other (list_categories before create_request, requestId for get_request), leaving no realistic chance of misselection.
Uniform snake_case verb_noun pattern: create_request, get_request, list_categories. Verbs are standard CRUD-style and the noun always names the resource acted upon.
Three tools is on the thin side but each earns its place in a narrow submit-and-track workflow: reference lookup, creation, and status retrieval. It is defensible for the scope, though one or two more tools (e.g. listing own requests) would make it feel less minimal.
The create/read lifecycle is covered and list_categories supports correct request construction. However, there is no way to list previously created requests (the agent must retain the requestId itself), no cancellation/withdrawal, and no way to resend the confirmation email — real gaps for a double opt-in flow.
Available Tools
3 toolscreate_requestAInspect
Cree une demande de devis Fixou au nom du client final. IMPORTANT : la demande n'est PAS publiee immediatement — elle attend une confirmation par email (double opt-in). L'email est celui du CLIENT FINAL (pas de l'agent) et est obligatoire : le client recevra un email « Confirmez votre demande » avec un lien valable 48 heures ; tant qu'il n'a pas clique, aucun artisan n'est contacte. Apres cet appel, invitez explicitement l'utilisateur a ouvrir sa boite mail et a cliquer sur ce lien de confirmation pour publier sa demande et suivre les reponses sur fixou.fr ; l'agent lui-meme n'a jamais acces a cet espace. La description doit faire au moins 20 caracteres. answers reprend les id de questions et les value d'options du metier (voir list_categories). Renvoie le requestId a utiliser avec get_request.
| Name | Required | Description | Default |
|---|---|---|---|
| Yes | Email du client final (obligatoire) ; il y recevra le lien de confirmation a cliquer pour publier sa demande, puis le suivi. | ||
| phone | No | Telephone du client final (optionnel), transmis aux artisans qu'il choisira. | |
| answers | Yes | Reponses au questionnaire du metier, indexees par `id` de question. Valeur unique (question single) ou tableau de valeurs (question multi), choisies parmi les `value` des options. | |
| postalCode | Yes | Code postal francais du lieu d'intervention (5 chiffres). | |
| description | Yes | Description libre du besoin, en francais, de 20 a 5000 caracteres. | |
| categorySlug | Yes | Slug du metier concerne, obtenu via list_categories. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does so thoroughly: double opt-in, non-immediate publication, no artisan contacted until confirmation, 48-hour link validity, the email must belong to the end client (not the agent), and the agent has no access to the client's space. These are exactly the behavioral traits an agent could not infer otherwise.
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 critical constraint ("IMPORTANT : la demande n'est PAS publiee immediatement") is front-loaded, which is good, but the text contains an editing artifact — "La description doit faire au moins 20 caracteres" — that is pure noise and slightly damages trust in the rest of the content.
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 6-parameter mutation tool with no annotations and no output schema, the description covers the write's side effects, the confirmation flow, the required email semantics, and what the return value is used for. It does not cover authentication/authorization needs or failure modes (duplicate requests, invalid category slug), which would round it out.
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%, so the baseline is 3, but the description adds real semantic linkage: `answers` uses question `id`s and option `value`s from list_categories, and the returned `requestId` feeds get_request. It also stresses that `email` is the end client's address and is mandatory, reinforcing rather than duplicating the schema.
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 ("Cree une demande de devis Fixou au nom du client final") and implicitly frames it against get_request, which is named at the end. An agent knows exactly what is being created and on whose behalf without opening the schema.
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 clearly describes the context of use, names list_categories as the source of slugs and answers, and prescribes the follow-up action (invite the user to check email and click the link). It stops short of explicit exclusions or a direct when-to-use comparison with get_request, so it is clear guidance rather than a complete routing rule.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_requestAInspect
Consulte le statut d'une demande Fixou et les reponses des artisans (nom de l'entreprise, message, prix indicatif, delai, note moyenne). Ne renvoie jamais de coordonnees : celles-ci ne sont communiquees qu'au client final, une fois qu'il a choisi un artisan sur fixou.fr. Une cle API ne peut consulter que les demandes qu'elle a elle-meme creees.
| Name | Required | Description | Default |
|---|---|---|---|
| requestId | Yes | Identifiant de la demande, renvoye par create_request. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral burden and does well: it discloses that the tool returns request status plus artisan details, never returns contact information, and is scoped to requests created by the same API key. It does not explicitly state read-only behavior or error conditions, but 'consulte' strongly implies a read.
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 compact and front-loaded: purpose and returned data come first, followed by privacy scope and API-key restriction. Every sentence adds useful information without 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?
Because there is no output schema, the description usefully names the return fields (company name, message, indicative price, delay, average rating) and privacy limitation. It is complete enough for an agent to call the tool and understand the response shape, though it does not describe edge cases or empty results.
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 description coverage is 100%, and the single requestId parameter is already documented in the schema as the identifier returned by create_request. The description adds no additional format or constraint details for requestId, so baseline 3 is appropriate.
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 gives a specific verb and resource: 'Consulte le statut d'une demande Fixou'. It also lists the returned artisan fields, making the tool's purpose concrete. It does not explicitly contrast with siblings, but the read-only 'consulte' framing is distinct from create_request.
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 clearly indicates the tool is used to check request status and artisan responses, and adds an important usage constraint: an API key can only consult requests it created. It does not name alternatives, but for this retrieval operation no direct alternative is apparent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_categoriesAInspect
Liste tous les metiers proposes par Fixou, regroupes par famille, avec le questionnaire propre a chaque metier. A appeler avant create_request : le slug d'un metier devient le categorySlug, et le questionnaire indique les questions a couvrir. Dans create_request, l'objet answers doit utiliser les id de question comme cles et, comme valeurs, les value des options proposees (jamais les libelles).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It describes the tool's output structure (metiers, families, questionnaires) and indicates it is a read operation (listing) with no side effects. However, it does not explicitly state read-only nature or mention potential limitations like pagination.
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 concise sentences, front-loaded with main action, followed by essential usage context. No redundant words; every sentence adds value.
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 annotations or output schema, the description provides thorough context: lists all professions with grouping and questionnaire, explains how to use the output in create_request, and specifies data mapping. Complete for a list tool that serves as a prerequisite.
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?
Tool has zero parameters, so baseline is 4. Description correctly omits parameter details as they are unnecessary. The schema coverage is 100% with no properties.
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 verb 'Liste' and the resource 'tous les metiers' with grouping by family and questionnaire. It is specific and distinct from sibling tools (create_request, get_request) which have different purposes.
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 states 'A appeler avant create_request' and explains how the tool's output maps to create_request parameters (slug becomes categorySlug, questionnaire indicates questions). Provides direct guidance on when and how to use this tool.
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.
2 tool updates
- Changed
create_request3 fields changed- removed
Input schema / additionalPropertiesRemoved value: -false - added
Input schema / properties / answers / propertyNamesAdded value: +{ + "type": "string" +} - added
Input schema / properties / email / patternAdded value: +"^(?:[A-Za-z0-9_'+\\-]+\\.)*[A-Za-z0-9_'+\\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"
- Changed
get_request1 field changed- removed
Input schema / additionalPropertiesRemoved value: -false
3 tool updates
- First observed
create_request - First observed
get_request - First observed
list_categories
Related MCP Connectors
Find French tradespeople, plan multi-trade projects, submit moderated contacts, create profiles.
- resadockOAuthcom.resadock
Search and book local services in France: real availability, quotes, consented one-tap bookings.
Post a request, get and compare sellers' offers; sellers answer requests. 27 countries.
Get quotes from local shops for a home repair or project anywhere in the US. Free for homeowners.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceEnables users to find and contact building tradespeople in France, and lets independent tradespeople create free profiles.Apache 2.0
- AlicenseAqualityCmaintenanceBooks professional home cleaning services anywhere in metropolitan France end-to-end (coverage check, firm quote, booking creation, URSSAF "avance immédiate" enrollment, status polling). End users pay only 50% via SEPA direct debit thanks to the URSSAF immediate tax credit advance — no card payment required.538 npmMIT
- AlicenseNot gradedqualityCmaintenanceAccess 17M+ geocoded French property transactions (DVF), 22M+ DPE energy ratings, and 20M+ building records via MCP or REST API. Search transactions, market stats, comparables, price trends, rental yield, flip detection, and more.MIT
- AlicenseNot gradedqualityAmaintenanceEnables an assistant to report repair issues, compare source-backed quotes, propose appointment times, and retrieve, list, or cancel local repair tasks with explicit household confirmation.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.