Skip to main content
Glama

Server Details

Check if a contractor's remodeling bid is fair: analyze a quote, get cost + labor estimates.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 4.4/5 across 3 of 3 tools scored.

Server CoherenceA
Disambiguation5/5

Each tool targets a distinct task: analyzing a specific bid, getting general cost estimates, and retrieving labor rates. No overlap in purpose.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern: analyze_bid, get_cost_estimate, get_labor_rates.

Tool Count5/5

Three tools cover the core needs for remodeling cost assessment without being too few or excessive for the domain.

Completeness4/5

Covers bid analysis, project cost estimation, and labor rates. A minor gap might be material cost estimation or contractor verification, but the surface is sufficient for primary homeowner queries.

Available Tools

3 tools
analyze_bidA
Read-onlyIdempotent
Inspect

Analyze a home-remodeling contractor's bid/estimate for fairness and risk. Returns a 0-100 confidence score, red flags (deposit traps, vague scope, missing items, payment terms), a plain-English summary, and negotiation talk tracks. Use when a homeowner asks 'is this contractor quote fair?' or shares a remodeling estimate.

ParametersJSON Schema
NameRequiredDescriptionDefault
bid_textYesThe full text of the contractor's bid/estimate (line items, terms, scope).
bid_totalNoThe total dollar amount of the bid, if known.
state_codeNoTwo-letter US state code (e.g. 'TX', 'GA') for localized labor/legal context. Defaults to GA.
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds value by detailing exactly what the tool returns (confidence score, red flags, plain-English summary, negotiation talk tracks), beyond the annotations. No contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences: the first states purpose and outputs, the second lists return components, the third specifies when to use. No unnecessary words, front-loaded with key information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite no output schema, the description fully explains what is returned (confidence score, red flags, summary, talk tracks). All three parameters are described, and the use case is clear. The tool is self-contained and well-documented for an AI agent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, but the description adds meaningful context for bid_total ('if known') and state_code ('for localized labor/legal context, defaults to GA'), going beyond basic schema descriptions. This helps the agent understand optionality and default behavior.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'analyze', the resource 'home-remodeling contractor's bid/estimate', and the specific purpose: fairness and risk assessment. It lists concrete outputs (confidence score, red flags, summary, talk tracks). This clearly distinguishes it from sibling tools like get_cost_estimate and get_labor_rates.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly signals when to use: 'when a homeowner asks 'is this contractor quote fair?' or shares a remodeling estimate.' This provides clear context. It does not explicitly discuss when not to use or alternatives, but the use case is well-defined.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_cost_estimateA
Read-onlyIdempotent
Inspect

Get a 2026 market cost range for a home-remodeling project in a US state/city, backed by Zonda Cost vs. Value benchmarks with regional adjustment. Use when a homeowner asks 'how much does a [kitchen/bathroom/roof/etc.] remodel cost in [place]?'

ParametersJSON Schema
NameRequiredDescriptionDefault
city_keyNoOptional city slug (e.g. 'atlanta-ga') for city-level precision.
state_codeYesTwo-letter US state code (e.g. 'CA', 'TX').
project_typeYesProject type, e.g. 'kitchen-remodel', 'bathroom-remodel', 'roofing', 'siding', 'deck', 'addition', 'basement'.
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate read-only and idempotent behavior. The description adds value by specifying the data source (Zonda benchmarks) and regional adjustment, beyond what annotations provide.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences: the first defines the tool's output and data source, the second gives a concrete usage example. Every word contributes meaning.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description explains the return value (2026 market cost range) and mentions regional adjustment. Missing details: exact format (e.g., low-high) and fallback when city is omitted. Still fairly complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with adequate descriptions. The description does not add new parameter-specific details, but it frames the parameters in the context of remodeling cost estimation, which is baseline acceptable.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: getting a 2026 market cost range for a home-remodeling project in a US state/city, backed by Zonda benchmarks. It distinguishes from siblings by focusing on cost estimation vs. bid analysis or labor rates.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly tells when to use the tool: when a homeowner asks about remodel costs for specific project types and locations. It does not say when not to use, but the sibling names imply alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_labor_ratesA
Read-onlyIdempotent
Inspect

Get 2026 burdened construction trade labor rates ($/hour) for a US state, derived from BLS wage data. Returns rates by trade (carpenter, plumber, electrician, painter, etc.). Use when a homeowner asks what trade labor should cost or whether a bid's labor line is fair.

ParametersJSON Schema
NameRequiredDescriptionDefault
tradeNoOptional specific trade to filter to (e.g. 'plumber', 'electrician', 'carpenter').
state_codeYesTwo-letter US state code (e.g. 'TX', 'NY').
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds that data is derived from BLS wage data and returns rates by trade, providing context beyond what annotations offer. No contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, no fluff. First sentence defines the tool's core function, second gives a precise usage scenario. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple read-only lookup tool with 2 parameters and no output schema, the description provides sufficient context: data source, year, unit, trade examples, and when to use. Complements annotations and parameter descriptions well.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% with both parameters described. The description adds that 'trade' is an optional filter with examples and clarifies that state_code is a two-letter code. It also implies filtering behavior by mentioning 'Returns rates by trade', adding value over schema alone.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Get' and the resource 'burdened construction trade labor rates' for a US state, specifying year, unit, data source, and examples. It differentiates from siblings 'analyze_bid' and 'get_cost_estimate' by focusing on labor rates and provides a specific use case.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly states when to use: 'Use when a homeowner asks what trade labor should cost or whether a bid's labor line is fair.' While it does not explicitly state when not to use, the clear use case and naming of siblings provide adequate guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Discussions

No comments yet. Be the first to start the discussion!

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources