Skip to main content
Glama

Smallfire Lab public-records checks

Server Details

Free read-only lookups of Oregon contractor licenses and FDA food recalls for AI agents. No key.

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
ChatGPT
–
Claude
–

TDQS

A4.4/5.0

Scored across 2 tools

Disambiguation5/5

The two tools cover entirely different domains — FDA food recall enforcement reports versus Oregon contractor license records — so there is no plausible way to confuse them. Each description also clearly states its own scope limits (FDA food only, not USDA meat; Oregon only), reinforcing the boundary.

Naming Consistency5/5

Both names follow the same snake_case '<jurisdiction/source>_<subject>_check' pattern, and the shared '_check' suffix signals that both are read-only lookups. The structure is predictable and would scale cleanly if more checks were added.

Tool Count3/5

Two tools is on the thin side for a server framed as general 'public-records checks'; the surface feels like a starting point rather than a scoped toolkit. Each tool does earn its place, but there is little breadth to justify the generic server name.

Completeness3/5

Each tool is internally complete for its single lookup (matches, status, dates, and explicit caveats about what a hit or miss means). However, the overall surface is narrow — only FDA food recalls and only Oregon contractor licenses, with no USDA recalls, other states, or discipline/complaint data despite being flagged as relevant.

Available Tools

2 tools
fda_recall_checkFDA food recall checkA
Read-onlyIdempotent
Inspect

Find FDA food recall (enforcement) reports whose recalling firm matches a supplier or manufacturer name, in openFDA's food/enforcement data (FDA Enforcement Reports published since 2012). Words like Inc, LLC and Co are ignored; every remaining word must appear in the firm name. For each name returns the total number of matching reports and the 10 most recent: firm, location, product, reason, classification, status, dates and recall number. A match on name alone may be a different firm with a similar name, and no match does not mean a firm or product is safe. Covers FDA-regulated food only (not meat or poultry, which USDA handles).

NameRequiredDescriptionDefault
namesYesSupplier or manufacturer names, one per item, up to 10.

TDQS

A4.7/5.0
Behavior5/5

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

Annotations already declare readOnly/idempotent/openWorld, and the description adds substantive context beyond them: the matching algorithm (stopwords like Inc/LLC ignored, all remaining words must appear in the firm name), the exact fields returned, the 10-most-recent cap, and explicit false-positive/false-negative warnings. It also discloses the 2012 coverage boundary and the FDA vs USDA jurisdictional limit.

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?

Front-loaded with the core action and data source, followed by the matching rule, then return shape, then caveats, then scope. Every sentence carries distinct information; nothing is redundant with annotations or schema.

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 fully specifies the return payload (total count plus the 10 most recent reports with firm, location, product, reason, classification, status, dates, recall number). It also covers the matching semantics, data vintage, and domain boundaries an agent needs to call and interpret this 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%, which sets a baseline of 3, but the description goes further by explaining how each name string is matched (ignored corporate suffixes, conjunctive word matching). The schema already caps the array at 10 names, so the description's added matching semantics are the real value here.

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?

States a specific verb (find), resource (FDA food recall/enforcement reports), matching key (recalling firm name), and data source (openFDA food/enforcement since 2012). This is unambiguous and cannot be confused with the unrelated sibling oregon_license_check.

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?

Gives clear conditions for use: supplying supplier/manufacturer names, with explicit caveats that a name match may be a different firm and that no match does not imply safety, plus scope limits (FDA food only, not USDA meat/poultry). It does not name any alternative tool or when not to call it, 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.

oregon_license_checkOregon contractor license checkA
Read-onlyIdempotent
Inspect

Look up Oregon Construction Contractors Board (CCB) licenses by license number or business name in the state's public "CCB Active Licenses" dataset on data.oregon.gov. For each match returns the business name, city, endorsements, and the expiry dates of the license, the bond and the liability insurance on file (with company and amount), days left counted from today in Oregon, and a status: expired, due (within 30 days) or ok. Not found means not on the active list today: the license may be inactive, expired or suspended, or the number or spelling may differ. Does not show complaints or discipline history and does not check what a policy covers. Oregon only. The CCB's own records (https://search.ccb.state.or.us/search/) are the official source.

NameRequiredDescriptionDefault
queriesYesCCB license numbers (e.g. "123456") or business names (at least 3 characters), one per item. Up to 20 items, of which up to 5 business names. A name returns up to 10 matching businesses.

TDQS

A4.4/5.0
Behavior5/5

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

Annotations already cover the safety profile (readOnly, idempotent, non-destructive), and the description adds substantial context beyond them: the returned fields, the status derivation (expired/due/ok) with days counted from today in Oregon time, and the critical interpretation of a not-found result. It also points to the official CCB source for authoritative verification.

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?

Front-loaded with what it does and what it returns, then caveats. Dense but mostly earned; 'Oregon only' and the state-dataset phrasing mildly duplicate the opening sentence, costing a little tightness.

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 return-value burden and does so fully — fields, status semantics, and match-count behavior. For a single-parameter read tool, nothing an agent needs to call it or interpret results is missing.

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%, so the query format, length limits, batch caps and per-name match limits are already documented in the schema. The description only restates that lookup works by license number or business name, adding no syntax or format detail beyond it. Baseline 3 applies.

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?

States a specific verb (look up) and resource (Oregon CCB licenses) and names the exact upstream dataset, so the tool is unambiguous. It is clearly distinguishable from the unrelated sibling fda_recall_check.

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?

Gives clear scope conditions ('Oregon only', license number or business name) and explicit exclusions ('does not show complaints or discipline history and does not check what a policy covers'), which tell the agent when this tool cannot answer. It does not name an alternative tool for those out-of-scope questions, so it stops short of full routing guidance.

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. 2 tool updates
    • First observedfda_recall_check
    • First observedoregon_license_check

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    F
    maintenance
    Enables ChatGPT, Claude and Gemini to run read-only lookups across EMS protocol guides, judges and courts, public health data (NPI registry, drug labels, recalls, adverse events), and open-source model sizing with VRAM estimates and Hugging Face search. Connects over Streamable HTTP with OAuth 2.1 or API keys, offering anonymous, free-key and paid Pro call quotas.
    1
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI agents and procurement systems to verify contractor licenses against official state boards, search contractors by trade and location, audit workers' comp, surety bonds and OSHA safety records, and check SAM.gov federal debarment status. It returns a deterministic ALLOW/WARN/BLOCK compliance decision plus registry health metrics for US trade contractors.
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    OpenCorporates MCP provides free, no-auth access to global company registry data with rate limiting, enabling AI agents to look up company information.
    438 npm
    MIT
  • A
    license
    B
    quality
    C
    maintenance
    Query 20 structured datasets from AI agents — healthcare providers (9M NPI records), SEC EDGAR filings, PACER federal courts, USPTO patents and trademarks, OFAC sanctions screening, crypto whale wallets, DeFi liquidation signals, Polymarket smart money, economic indicators (FRED/BLS), federal contracts, NOAA weather, and OTC shell risk scoring. Pay per query, no subscriptions
    75
    1
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources