Skip to main content
Glama

Absolute Best Air

Server Details

HVAC facts for Absolute Best Air in Henry County and South Metro Atlanta.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A3.7/5.0

Scored across 7 tools

Disambiguation5/5

Each tool targets a clearly distinct aspect of the company's public information (identity, offers, pricing, completions, service area, services, credentials). The slight overlap between get_company_info's mention of service area and get_service_area is resolved by descriptions clarifying one is general info and the other is a specific ZIP lookup.

Naming Consistency5/5

All seven tools follow the exact same `get_` + noun pattern in snake_case: get_company_info, get_current_offers, get_pricing, get_recent_completions, get_service_area, get_services, get_technician_credentials. No deviation in verb style or casing.

Tool Count5/5

Seven tools is well-scoped for a public information server about a company. Each tool covers a distinct, useful category without redundancy, and the count is neither thin nor bloated.

Completeness5/5

The surface covers all key public information a customer might need: identity, hours, payment, service area, service catalog, pricing, offers/financing, recent jobs, and technician credentials. No obvious gaps for a read-only info server; no missing lifecycle operations because the domain is retrieval-only.

Available Tools

7 tools
get_company_infoC
Read-onlyIdempotent
Inspect

Public company identity, hours, service area and payment methods.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, and openWorldHint=false, so the safety profile is fully covered. The description adds no behavioral context beyond that - no auth requirements, caching, or freshness details - so it earns little credit over the structured hints.

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

Conciseness4/5

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

A single short sentence with no filler, front-loading the content categories. It is a fragment rather than a sentence, but nothing is wasted or buried.

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

Completeness3/5

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

With no output schema, the description is the only source of return-shape information, and 'identity' and 'hours' are too vague to tell an agent what fields come back. Acceptable for a trivial zero-parameter getter but not fully self-sufficient.

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?

The tool takes zero parameters, which is the baseline-4 case; there is nothing for the description to disambiguate. The enumerated content categories hint at the return shape, which is mild extra value.

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

Purpose3/5

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

The phrase names a specific resource and enumerates the data categories returned (identity, hours, service area, payment methods), so an agent can guess the payload. However, it is a noun fragment with no verb and does not distinguish itself from the sibling get_service_area, which the description partially duplicates.

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

Usage Guidelines2/5

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

There is no statement of when to call this tool, no exclusions, and no reference to alternatives such as get_service_area or get_pricing, which overlap with the listed content. Usage is only implied by the tool name.

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

get_current_offersB
Read-onlyIdempotent
Inspect

Standing diagnostic policy and links for financing and ABA Home+ membership; no invented rates or eligibility guarantees.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.1/5.0
Behavior3/5

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

Annotations already cover the safety profile (readOnly, idempotent, non-destructive, closed-world), so the description only needs to add context beyond that. It contributes a useful constraint: no invented rates or eligibility guarantees. However, it does not explain response shape, sourcing, or other behavioral details.

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

Conciseness4/5

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

The description is a single sentence with no wasted words. Its structure is front-loaded with the content areas, though the phrasing is slightly opaque for an agent trying to determine the tool's exact action.

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

Completeness3/5

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

The tool is simple: no parameters, no output schema, and rich annotations already establish the safety profile. The description adds a relevant disclaimer, but with no output schema it still leaves the exact return content unclear, so it is only minimally complete.

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?

This tool takes zero parameters, so the baseline is 4. The empty schema is fully covered by definition, and there are no parameter semantics for the description to clarify.

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

Purpose3/5

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

The description names specific content areas (diagnostic policy, financing, ABA Home+ membership) and adds a constraint about not inventing rates or eligibility guarantees, but it lacks a clear verb and never states that the tool returns current offers. Against siblings like get_pricing, it does not sharply distinguish what this tool provides versus what it merely disclaims.

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

Usage Guidelines2/5

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

There is no explicit when-to-use or when-not-to-use guidance, and no alternative sibling is named. The disclaimer about not inventing rates or eligibility guarantees is a weak usage constraint, but it does not tell an agent when to select this tool over get_pricing or others.

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

get_pricingA
Read-onlyIdempotent
Inspect

Match a service or repair name to published flat-rate pricing. Ambiguous or absent matches return no price, never an estimate.

ParametersJSON Schema
NameRequiredDescriptionDefault
serviceYes

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive, closed-world behavior, so the safety profile is covered. The description adds genuinely useful behavioral context: ambiguous or absent matches return no price and never an estimate, which tells the agent not to treat output as a quote and prevents downstream fabrication.

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 short sentences, zero filler, with the core matching behavior front-loaded and the edge-case behavior second. Nothing needs trimming or reordering.

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

Completeness3/5

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

For a one-parameter lookup with full annotation coverage this is close to sufficient, but with no output schema the description never characterizes the successful response (price fields, currency, units, granularity), leaving the return shape undefined beyond the failure case.

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?

The single 'service' parameter has 0% schema description coverage, so the schema says only 'string'. The description partially compensates by clarifying the parameter is a service or repair name, but it gives no format, matching rules, or examples for ambiguous input.

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

Purpose4/5

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

States a specific verb (match) and resource (service/repair name to published flat-rate pricing), which is clearly distinct from siblings like get_services, get_current_offers, or get_company_info. It does not explicitly name an alternative, but the resource scope is unambiguous.

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

Usage Guidelines3/5

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

Usage is implied: call this to get a price for a named service or repair. There is no explicit when-to-use/when-not guidance and no mention of siblings such as get_current_offers (discounts) or get_services (catalog), so the agent must infer routing.

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

get_recent_completionsA
Read-onlyIdempotent
Inspect

Recent public completed jobs, optionally by city. Returns only public job category, city, state, date and ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
cityNo

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already establish the safety profile (readOnly, idempotent, non-destructive), so the description's added value is the scope constraint: only PUBLIC jobs, and only the field set category/city/state/date/ID are exposed. That tells the agent what it will and won't receive, which is real behavioral context beyond the annotations.

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

Conciseness4/5

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

Two short sentences, front-loaded with the resource and scope, with the return-field list second. Efficient with no filler; the repetition of 'public' is the only minor redundancy.

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?

For a simple read-only list tool with annotations covering safety and no output schema, the description covers purpose, scope, filter, and returned fields — enough to call it correctly. Missing only pagination/limit or ordering behavior for 'recent'.

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 description coverage is 0%, so the description must compensate. Saying 'optionally by city' does establish that the single parameter is an optional city filter, but adds no format, casing, or matching semantics beyond the property name.

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

Purpose4/5

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

States a specific verb+resource: returns recent public completed jobs, with the filterable dimension (city) called out. This clearly separates it from siblings like get_current_offers or get_company_info, which cover other data types, though it never names them explicitly.

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

Usage Guidelines3/5

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

The phrase 'recent public completed jobs, optionally by city' implies the use case and that the city filter is discretionary, but there is no explicit when-to-use/when-not guidance or routing to an alternative. With no sibling covering the same resource, the practical risk is low, so this is implied rather than absent.

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

get_service_areaA
Read-onlyIdempotent
Inspect

Check a US ZIP against available public coverage data. ZIP boundaries and response-time estimates are not published; unknown is not a coverage denial. Includes the current EntityGraph city-guide list.

ParametersJSON Schema
NameRequiredDescriptionDefault
zipCodeYes

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare read-only, idempotent, non-destructive, closed-world behavior, so the bar is lower. The description adds real value beyond that: ZIP boundaries and response-time estimates are not published, and an unknown result is not a denial — important interpretive context. It stops short of describing error behavior or coverage granularity.

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

Conciseness4/5

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

Three compact sentences with the core action front-loaded and no wasted filler. The final clause about the EntityGraph city-guide list is slightly jargon-heavy but still informative.

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?

With no output schema, the description carries the burden of explaining results, and it does so reasonably: hinting at coverage data, the city-guide list, and the unknown-vs-denied distinction. Minor gaps remain around response shape and error cases, but the agent has enough to call it correctly.

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 0% for the single zipCode parameter, so the description must compensate. 'Check a US ZIP' clarifies the parameter is a US ZIP code, adding meaning beyond the bare ^\d{5}$ pattern constraint, though it omits explicit format or normalization guidance.

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

Purpose4/5

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

States a specific verb and resource ('Check a US ZIP against available public coverage data'), which is concrete and clearly distinct from the sibling tools (pricing, offers, services, credentials). It does not explicitly name a sibling, but the coverage-domain purpose is unambiguous.

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

Usage Guidelines3/5

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

The description implies its usage (coverage lookup for a ZIP) but gives no explicit when-to-use or when-not-to-use guidance. The caveat 'unknown is not a coverage denial' helps interpret results but does not route the agent between alternatives.

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

get_servicesB
Read-onlyIdempotent
Inspect

Complete shared flat-rate repair catalog with descriptions, plus public service offerings.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.1/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, covering the safety profile. The description adds no behavioral context beyond that — no mention of pagination, result size, caching, or whether the catalog is exhaustive or filtered.

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

Conciseness4/5

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

A single front-loaded sentence with no filler or repetition. It is appropriately sized for a no-argument listing tool, though the phrase 'shared flat-rate repair catalog' is slightly jargon-heavy.

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

Completeness3/5

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

With no output schema, the description carries the burden of explaining what comes back, and it only loosely gestures at this ('with descriptions, plus public service offerings'). For a simple no-param read tool with full annotation coverage this is minimum viable, but return shape and scope remain underspecified.

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?

The tool takes zero parameters, so per the rubric this is the baseline 4. There are no parameter semantics for the description to clarify or compensate for.

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

Purpose4/5

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

The description names a specific resource set — a flat-rate repair catalog with descriptions plus public service offerings — so an agent knows this is a catalog/listing tool rather than a pricing or offers lookup. It does not, however, explicitly distinguish itself from siblings like get_pricing or get_current_offers, leaving some overlap ambiguous.

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

Usage Guidelines2/5

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

There is no statement of when to use this tool, when not to, or which sibling to prefer for overlapping needs (e.g., get_pricing vs get_current_offers vs this catalog). The agent must infer usage entirely from the noun phrase.

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

get_technician_credentialsB
Read-onlyIdempotent
Inspect

Professional credentials, verified BBB accreditation and active dealer authorizations, plus published dealer awards. Unverified technician counts are explicitly unknown.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds useful behavioral context by disclosing that unverified technician counts are explicitly unknown, which prevents an agent from assuming such counts are returned. It still does not describe response format or pagination, but for a no-parameter read-only lookup the added caveat meaningfully supplements the annotations.

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

Conciseness4/5

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

The description is two compact sentences with no filler. It is front-loaded with the main returned data categories and then adds the unverified-counts caveat. It could be slightly clearer with an explicit subject/verb, but it wastes no words.

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

Completeness3/5

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

For a simple no-parameter, read-only tool with no output schema, the description gives a reasonable inventory of returned data types and a notable data caveat. However, it leaves ambiguity about whether the credentials are company-level or technician-level, and it does not help an agent understand when to choose it over adjacent tools.

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?

The schema has zero parameters, so there are no parameter semantics for the description to clarify. The baseline for a 0-parameter tool is 4. The description does not need to compensate for missing parameter documentation.

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

Purpose3/5

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

The description is a noun-phrase list of data types ('Professional credentials, verified BBB accreditation... plus published dealer awards') rather than a clear verb-plus-resource statement. It never explicitly says it retrieves technician credentials, and BBB accreditation / dealer authorizations sound company-level, creating ambiguity about whether this tool returns per-technician or company-wide data. It is distinguishable from siblings like get_company_info or get_pricing, but only weakly.

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

Usage Guidelines2/5

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

No when-to-use guidance is given. It does not mention the sibling tools or explain when an agent should call this instead of get_company_info or another credentials source. The only contextual clue is the unverified-counts caveat, which is data-oriented rather than usage-oriented.

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. 7 tool updates
    • First observedget_company_info
    • First observedget_current_offers
    • First observedget_pricing
    • First observedget_recent_completions
    • First observedget_service_area
    • First observedget_services
    • First observedget_technician_credentials

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Provides AI agents with manufacturer-sourced HVAC technical documentation, enabling error-code lookup, diagnostics, and guided troubleshooting with exact source citations.
    MIT
  • A
    license
    A
    quality
    F
    maintenance
    AI assistants can size heat pumps, estimate energy costs, and verify cold-climate performance using bundled data and no API keys.
    6
    3
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    Private TypeScript runtime for a shadow-first AI operating system and company operating intelligence layer for HVAC, plumbing, electrical, sewer, and cross-trades businesses.
    4
    1
    Apache 2.0
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables AI agents to search cited home water treatment pages, retrieve quotable quick answers with verified dates and sources, diagnose water problems from symptoms or lab results, find replacement parts and product picks, and run water hardness and softener sizing calculators. Every response includes the URL to cite and the date its facts were verified.
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources