Skip to main content
Glama

FURRINGLINE

Server Details

Thai building materials: product search, prices before VAT, stock and material calculators.

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
Repository
nueyprap/furringline-mcp
GitHub Stars
0
Server Listing
FURRINGLINE MCP

TDQS

A4.1/5.0

Scored across 5 tools

Disambiguation5/5

Each tool has a clearly distinct purpose: two listing tools for different resource types (calculators vs categories), one detail tool, one search tool, and one calculator runner. There is no overlap between search_products (catalog browsing) and get_product (single-item detail), and calculate_materials is uniquely tied to list_calculators.

Naming Consistency5/5

All tool names follow a consistent snake_case verb_noun pattern: calculate_materials, get_product, list_calculators, list_categories, search_products. The verbs (calculate, get, list, search) accurately reflect each tool's action.

Tool Count5/5

Five tools is well-scoped for a public product catalog with material calculators. Each tool serves a distinct purpose (discovery, detail, category listing, calculator listing, calculation) and none feels redundant.

Completeness4/5

The read-only public surface covers core workflows: browse categories, search products, inspect one product, list calculators, and run a calculation. Minor gaps exist, such as no direct category-detail endpoint or a way to preview calculator option sets before running, but agents can work around these.

Available Tools

5 tools
calculate_materialsCalculate materials for a ceiling, wall or insulation jobA
Read-onlyIdempotent
Inspect

Runs one of the website calculators for an area in square metres and returns the material list: items, quantities, unit prices and amounts before VAT, subtotal, 7% VAT and total, plus the matching website product for each line. Choices not given use the calculator defaults; the result lists the choices the customer can change. Nothing is saved or ordered.

ParametersJSON Schema
NameRequiredDescriptionDefault
area_m2YesArea in square metres.
choicesNoOptional. Choice id (from a previous result) to the option label, e.g. {"2960": "แผ่นยิปซัม ตราช้าง รุ่น มาตรฐาน 9 มม. ขอบลาด"}.
calculatorYesCalculator key from list_calculators, e.g. "concealed-ceiling-calculator".

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already establish a safe read-only, idempotent operation. The description adds useful context beyond those hints: it lists return fields, explains that omitted choices fall back to calculator defaults, notes that the result exposes changeable choices, and confirms nothing is saved or ordered. It stops short of error or rate-limit behavior.

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?

The description is three tight sentences: it front-loads the action and return payload, then adds default and persistence notes. Every sentence adds distinct information with no redundancy.

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?

With no output schema, the description carries the burden of explaining return values and does so thoroughly, listing the material fields, VAT breakdown, and matching products. Combined with complete parameter documentation and annotations covering safety, the agent has everything needed to invoke 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 coverage is 100%, so the baseline is 3. The description adds meaning for the choices parameter—omitted choices use defaults and the result lists changeable choices—and contextualizes the calculator parameter as 'one of the website calculators', going beyond the schema's raw descriptions.

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 states a specific verb ('Runs one of the website calculators') and resource ('material list'), and the action is clearly distinct from sibling tools like list_calculators and search_products. An agent can immediately tell this tool performs a calculation rather than listing or searching.

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 usage by explaining it runs a calculator for an area and returns materials, but it never names alternative tools or states when to prefer this over list_calculators or search_products. The note that nothing is saved or ordered gives a mild exclusion but no explicit when-to-use routing.

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

get_productGet a FURRINGLINE productA
Read-onlyIdempotent
Inspect

Full public details of one product: dimensions, attributes, and each option (variation) with its SKU, price before VAT and stock. Give exactly one of sku or url.

ParametersJSON Schema
NameRequiredDescriptionDefault
skuNoProduct or option SKU.
urlNoProduct URL on furringline.com (from search_products).

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive and closed-world, so the safety profile is covered. With no output schema, the description usefully carries the return-shape burden by spelling out what comes back (dimensions, attributes, per-option SKU/price/stock) and that only public data is exposed.

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, zero filler, and the payload scope is front-loaded before the identifier rule. Every clause earns its place.

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 two-param read tool with full schema coverage and annotations, the description covers the return payload and the identifier constraint adequately. It stops short of stating behavior for an unknown SKU or an ambiguous/mismatched sku+url pair, which is the remaining gap.

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% so the baseline is 3, and the description earns above that by supplying the mutual-exclusivity constraint (exactly one of sku or url) that the flat schema with zero required fields cannot express. It also notes pricing is stated before VAT, a nuance absent from the schema.

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?

Names a specific verb+resource (get one product) and enumerates the payload: dimensions, attributes, and each option/variation with SKU, price before VAT and stock. That granularity distinguishes it from list-style siblings like search_products, though no sibling is named 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 description gives a hard selection rule for the two identifiers ("Give exactly one of sku or url") and ties url provenance to search_products, but it never states when to reach for this tool instead of search_products or calculate_materials — the lookup-then-detail flow is only implied.

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

list_calculatorsList FURRINGLINE material calculatorsA
Read-onlyIdempotent
Inspect

The material calculators on furringline.com (ceilings, partition walls, insulation). Use a key with calculate_materials.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.9/5.0
Behavior3/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 fully covered by structured data. The description adds only the fact that returned keys feed calculate_materials; it says nothing about ordering, count, or shape of the returned list. Useful but thin context on top of annotations.

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 with zero filler, and the resource identification is front-loaded ahead of the workflow hint. Every clause earns its place.

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 zero-parameter, read-only listing tool with no output schema, the description covers what it returns (calculator identifiers) and how they are consumed downstream. Nothing critical is missing, though a hint about whether the list is stable/complete would close the remaining gap.

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 the baseline is 4. There is nothing for the description to explain, and it correctly doesn't invent parameter 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?

The description names the resource (material calculators on furringline.com) and scopes it with concrete examples (ceilings, partition walls, insulation), so an agent knows exactly what comes back. It stops short of an explicit verb like 'lists all', relying on the title for that, but the 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 Guidelines4/5

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

'Use a key with calculate_materials' tells the agent this tool is the entry point that produces input for the sibling calculate_materials, which is real routing guidance. It doesn't state an explicit when-not to call it or cover the other siblings (get_product, search_products), so it falls short of a 5.

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

list_categoriesList FURRINGLINE product categoriesA
Read-onlyIdempotent
Inspect

All public product categories with slug, parent slug, product count and URL.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.6/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint and non-destructive behavior, so the safety profile is covered. The description adds genuine context beyond them: the 'public' visibility scope (implying non-public categories are excluded) and the exact shape of the returned record fields, which matters because no output schema exists.

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 telegraphic sentence with zero filler, and the scope qualifier ('All public') is front-loaded. It is a noun phrase rather than a verb-led statement, which is slightly less direct but not wasteful.

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 zero-parameter, no-output-schema read tool, the description supplies what the schema cannot: the returned fields and the fact that only public categories are included. An agent can call it correctly and interpret the result without further information.

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. The schema is empty and fully consistent with the description; no parameter meaning needs to be conveyed.

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 resource (public product categories) and enumerates the fields returned, so the agent knows exactly what this returns. It does not explicitly distinguish itself from siblings like list_calculators or search_products, but 'categories' is distinct enough from the other resources to avoid confusion.

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, no prerequisites, and no mention of alternatives such as list_calculators (the obvious sibling for enumerating catalog-like data). The agent must infer that this is the entry point for discovering category slugs used elsewhere.

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

search_productsSearch FURRINGLINE productsA
Read-onlyIdempotent
Inspect

Search the public FURRINGLINE catalog by words (Thai or English, all words must match) or SKU, optionally within a category. Returns name, SKU, URL, image, category, brand, price before VAT and stock. Max 20 per page, 10 pages.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNo
queryNoWords or SKU to look for, e.g. "ยิปซัม 9 มม" or "C-line".
categoryNoCategory slug from list_categories (optional).
per_pageNo

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and a closed-world catalog (openWorldHint=false). Beyond that, the description adds genuinely useful behavior: AND-match semantics for multi-word queries, bilingual (Thai/English) support, and the pagination ceiling of 20 per page across 10 pages. It does not mention ordering or empty-result behavior, but the added context is substantive.

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 dense sentences that front-load the core action, then the return payload, then pagination limits. No filler, no restatement of the tool name, and every clause carries information an agent needs.

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?

There is no output schema, so the description's enumeration of returned fields (name, SKU, URL, image, category, brand, pre-VAT price, stock) is necessary and present. Combined with annotations covering the safety profile, the definition is nearly complete; only result-ordering and no-match behavior are absent.

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?

With only 50% schema description coverage, the description compensates well: it defines query semantics ('all words must match', Thai or English, or SKU) which the schema does not, marks category as optional, and pins the per_page/page bounds ('Max 20 per page, 10 pages') that the schema only encodes as numeric min/max. Page defaults and offset behavior remain unstated, keeping it short of a 5.

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 ('Search the public FURRINGLINE catalog') plus the two matching modes (words or SKU) and the optional category narrowing. It is clearly distinguishable from get_product and list_categories by implication, though it never names a sibling to route the agent 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?

Explains how to search (words vs SKU, optional category) but gives no when-to-use guidance relative to get_product (single-item lookup) or list_categories. Usage is implied by the matching-mode description rather than stated as a selection rule.

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. 5 tool updates
    • First observedcalculate_materials
    • First observedget_product
    • First observedlist_calculators
    • First observedlist_categories
    • First observedsearch_products

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    Provides construction cost estimation tools using data from a public Google Sheet for items like concrete, framing, and electrical. It allows users to search items, filter by category, and calculate total project costs including labor and material expenses.
    -
  • A
    license
    A
    quality
    B
    maintenance
    Search for products available in physical stores near you. Find prices, stock, and store locations for hardware, tools, and construction supplies. Useful when you need something today and can't wait for delivery. 5 tools: search products, search stores, get product details, get store details, list categories. No authentication required. Covers ~2400 products across ~4000 stores in Spain.
    18
    1
    Apache 2.0
  • F
    license
    Not graded
    quality
    D
    maintenance
    Provides access to residential building codes (NEC, IRC, IPC), material specifications with pricing, and project calculators for DIY construction projects. Enables code compliance checking, material search across suppliers, and automated quantity calculations for electrical, plumbing, and construction materials.
    1
    -
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.