renovation-room
Server Details
Find vetted Chicagoland renovation contractors and get fact-checked Chicago renovation answers.
- Status
- Healthy
- Uptime
- 99.4% over 25 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
TDQS
Scored across 5 tools
get_pro and search_pros are clearly distinct (id lookup vs search). how_to_submit_project and start_project both concern project submission but descriptions delineate general explanation vs prefilled link for a specific project. renovation_faq could overlap with process questions, but boundaries are mostly clear.
All names use snake_case, but patterns vary: verb_noun (get_pro, search_pros, start_project), how_to_* (how_to_submit_project), and noun_noun (renovation_faq). Readable but not a consistent convention.
Five tools is well-scoped for a directory and lead-generation service. Each tool serves a distinct purpose: search, detail retrieval, FAQ, process explanation, and project link generation.
The tool set covers the core consumer workflow: search contractors, view details, answer FAQs, explain submission, and generate a prefilled project form. Minor gaps include no review/rating retrieval or direct contact tool, though contact happens externally by design.
Available Tools
5 toolsget_proGet Pro DetailsARead-onlyInspect
Get one contractor's public listing summary from The Renovation Room directory by the numeric id returned from search_pros. Returns trades, service areas, services offered, and the about text — no contact details; contact happens on the profile page or through the project form.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The listing id from search_pros results. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish this as a safe read (readOnlyHint, destructiveHint false, closed-world), so the description's job is to add scope detail, which it does: it enumerates the returned fields and explicitly states contact details are excluded. This tells the agent what it will and will not get back.
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 tight sentences: purpose and id provenance first, then the returned fields and the contact exclusion. Every clause earns its place with no redundancy.
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?
There is no output schema, so the description compensates by enumerating the returned fields (trades, service areas, services offered, about text) and stating what is omitted. For a single-parameter read tool, nothing an agent needs to invoke or interpret it is missing.
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 single id parameter is already documented as 'The listing id from search_pros results', which the description essentially repeats. Baseline 3 is appropriate since the schema carries full parameter meaning.
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 verb and resource ('Get one contractor's public listing summary'), names the source directory, and ties the lookup to the id produced by search_pros, which cleanly separates it from its sibling search tool.
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 makes the natural workflow explicit ('id returned from search_pros') and routes contact-related needs elsewhere ('contact happens on the profile page or through the project form'), implicitly pointing at start_project. It stops short of stating explicit when-not-to-use conditions or naming the contact sibling directly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
how_to_submit_projectHow to Get Quotes for a ProjectARead-onlyInspect
Explains how getting quotes from Renovation Room Pros works: the free project-submission wizard, what happens after submitting, and the direct link. Use for general how-does-it-work questions about the Chicago area (including Northwest Indiana and Southern Wisconsin); when the user has already described a specific project, use start_project instead to hand them a prefilled link.
| 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=false, destructiveHint=false, so the safety profile is covered. The description goes beyond that by disclosing what the tool actually returns (wizard explanation, post-submission behavior, direct link), which is proprietary content rather than restated structured data. It stops short of describing output format or length, so not a 5.
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, both earning their place: the first front-loads what the tool produces, the second carries scope and the sibling routing rule. No filler, no repetition of the title.
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?
No output schema and no parameters, so the description must carry the burden — and it does, by telling the agent what content it will yield and where the boundary with start_project lies. Nothing needed for correct invocation is missing.
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?
Zero parameters, so the baseline is 4 per the rubric. Nothing in the description is needed to clarify inputs, and it correctly implies this is a no-argument informational call.
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 verb+resource ('Explains how getting quotes ... works') and enumerates the substantive content: the free project-submission wizard, post-submission flow, and the direct link. It also names the sibling it is not (start_project), so the agent can disambiguate immediately.
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?
Gives explicit when-to-use (general how-does-it-work questions, scoped to Chicago area / Northwest Indiana / Southern Wisconsin) and explicit when-not-to-use with the alternative ('when the user has already described a specific project, use start_project instead'). This is a model routing rule, not an inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
renovation_faqChicagoland Renovation FAQARead-onlyInspect
Answer Chicago-area home-renovation questions from The Renovation Room's fact-checked FAQ: building permits and inspections, hiring and vetting contractors, remodel costs (including current tariff impacts), and project planning. Every answer cites its primary source.
| Name | Required | Description | Default |
|---|---|---|---|
| question | Yes | The renovation question, in plain language. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=false and destructiveHint=false, so the safety profile is covered. The description adds genuinely useful behavioral context outside the annotations — answers are fact-checked and every answer cites its primary source — but says nothing about coverage limits or what happens when a question falls outside the FAQ.
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 tight sentences, front-loaded with the core purpose and followed by the topic enumeration and the sourcing guarantee. 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 one fully documented parameter, no output schema, and annotations covering the safety profile, the description carries the important remaining context (domain, topic coverage, source citation) well. It stops short of stating scope boundaries or expected response shape, but nothing critical for invoking it is missing.
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% for the single 'question' parameter, so the schema already documents the input. The description adds no syntax, phrasing, or format guidance beyond 'plain language' that the schema itself states. Baseline 3 applies.
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 verb and resource ('answer Chicago-area home-renovation questions from ... FAQ') and pinpoints the covered topics: permits/inspections, contractor hiring, remodel costs, project planning. This domain scope cleanly separates it from the sibling tools, which are all about finding or starting projects with pros.
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 topic list implies when the tool applies (informational renovation questions in the Chicago area), but there is no explicit when-to-use/when-not guidance and no reference to the sibling tools it should be preferred over. Usage must be inferred from the subject matter.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_prosSearch Renovation ProsARead-onlyInspect
Search The Renovation Room's directory of Chicagoland member contractors by trade, service, or company name. Coverage is Chicago, its suburbs, Northwest Indiana, and Southern Wisconsin only. Returns published member businesses with their trades, service areas, and profile links; use each result's id with get_pro for details.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Pass ONLY the trade, service, or company name (e.g. "roofing", "fence installation", "Grindstone Roofing") — not a sentence and not a location. 2-80 characters. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish this is a safe read-only, closed-world operation. The description adds genuinely useful behavior beyond that: the fixed geographic coverage boundary and the fact that only published members are returned, which tells the agent what results will and won't appear.
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 tight sentences that front-load the purpose, then coverage limits, then return shape and the get_pro handoff. No filler, though the geographic scope and return details could be marginally tightened.
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 describing the return contents (published members with trades, service areas, profile links) and how to continue (id with get_pro). For a single-param search tool this covers everything an agent needs 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?
Schema description coverage is 100%, so the query parameter's constraints (single trade/service/name, 2-80 chars, no sentence, no location) are already fully documented in the schema. The description adds minimal parameter-level meaning beyond naming the searchable dimensions.
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 verb (search) and resource (Chicagoland member contractor directory) and names the qualifying dimensions (trade, service, company name). It is clearly distinguishable from get_pro, which it explicitly points to for details.
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?
Gives clear context for when to use it and names get_pro as the follow-up for result details via the id. It does not state exclusions (e.g., non-member or out-of-region searching), so it falls just short of full when/when-not guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
start_projectStart a Project (Prefilled Form Link)ARead-onlyInspect
Build a personalized link to The Renovation Room's free project-submission form with the homeowner's details already filled in. Collect what the homeowner wants done, then give them this link — they review and submit it themselves, and matching vetted Chicagoland contractors are alerted. Use after the user describes a real project they want quotes for.
| Name | Required | Description | Default |
|---|---|---|---|
| zip | No | 5-digit ZIP code of the project location. | |
| city | No | Project city (Chicagoland, NW Indiana, or Southern Wisconsin). | |
| budget | No | Rough budget range, if the homeowner offered one. | |
| services | Yes | The service(s) the project needs. | |
| timeline | No | How soon they want to start. | |
| description | Yes | What the homeowner wants done, in their own words. 15-2000 characters. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnlyHint=true and destructiveHint=false. The description adds useful behavioral context: the tool only generates a pre-filled link, the homeowner submits it themselves, and no direct project creation occurs on the agent's side. This clarifies the read-only nature beyond 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 compact and front-loaded with the core action, then adds a clear usage directive. It is slightly dense but each sentence earns its place and no extraneous content appears.
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 tool with no output schema, the description still makes the return value implicit ('give them this link') and covers the complete user flow. It also includes the use trigger and explains why the tool exists, which is sufficient given the schema's full parameter coverage.
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%, so the input schema already documents all six parameters well. The description adds no additional parameter-level detail, but does not need to—the schema carries the full burden and the baseline of 3 applies.
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 specific action ('Build a personalized link') and the resource ('The Renovation Room's free project-submission form'). It also conveys the intended outcome—homeowner reviews and submits, contractors are alerted—which distinguishes it from sibling tools like search_pros or renovation_faq.
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 includes an explicit trigger: 'Use after the user describes a real project they want quotes for.' It provides clear context for when the tool is appropriate, though it does not explicitly list when not to use it or name alternative tools.
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_pros1 field changed- changed
Input schema / properties / query / descriptionPrevious value: -"Trade, service, or company name to search for. 2-80 characters."New value: +"Pass ONLY the trade, service, or company name (e.g. \"roofing\", \"fence installation\", \"Grindstone Roofing\") — not a sentence and not a location. 2-80 characters."
1 tool update
- Added
start_project
4 tool updates
- First observed
get_pro - First observed
how_to_submit_project - First observed
renovation_faq - First observed
search_pros
Related MCP Connectors
Hire evidence-verified home-service contractors. Confirmed-job reviews only; rank is never buyable.
Fair-price checks for Japanese renovation quotes, plus Japan and US construction cost data.
Find and verify trustworthy US home-services contractors by their un-buyable HomeClip Trust Score.
Find owner-operated plumbers, HVAC techs, electricians and roofers in OK, KS, NE, IA and MO.
21
Related MCP Servers
- FlicenseNot gradedqualityBmaintenanceCheck if a contractor's remodeling bid is fair — analyze a quote (fairness score + red flags), get 2026 cost estimates by city, and look up BLS trade labor rates.-
- FlicenseNot gradedqualityCmaintenanceProvides home renovation guidance including building info, recent deals, permit procedures, checklists, and contractor verification based on address, powered by Korean public data.-
- AlicenseAqualityAmaintenanceRead-only MCP server for the Renology 2026 city-level renovation cost dataset. Enables AI assistants to list markets and project types, retrieve cost ranges, compare costs across cities, and access methodology and citation information.5MIT
- AlicenseAqualityDmaintenanceReal-time contractor license verification across 45 US states. Verifies license status, expiration, and disciplinary history directly against state licensing board portals.425 npmMIT
Glama MCP Gateway
Add one secure layer between your agents and this server.