Skip to main content
Glama

Small Business Funding Finder

Server Details

Searches live federal grant listings on Grants.gov and reads full opportunity details.

Ownership verified
Status
Healthy
Uptime
100.0% over 22 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A4.1/5.0

Scored across 4 tools

Disambiguation3/5

search_grants and grants_closing_soon both list opportunities with overlapping filters, so an agent might choose the wrong one for a general search. get_grant and eligibility_explainer are clearly distinct. Descriptions help clarify the intended use, but the boundary is not crisp.

Naming Consistency3/5

Two tools use a verb_noun pattern (get_grant, search_grants) while two are noun phrases (grants_closing_soon, eligibility_explainer). All are snake_case and readable, but the structural convention is mixed.

Tool Count5/5

Four tools are well-scoped for a read-only funding discovery server: search, detail retrieval, a temporal view, and a reference explainer. Each tool earns its place without bloat.

Completeness4/5

The surface covers the core read-only lifecycle: search, get details, track deadlines, and decode eligibility codes. Minor gaps like standalone agency or category listing tools are not critical since search filters handle them.

Available Tools

4 tools
eligibility_explainerExplain eligibility codesA
Read-onlyIdempotent
Inspect

Decode Grants.gov applicant eligibility codes (such as 23, 12 or 99) in plain words: the official label, what it means, who counts, what to watch out for, and the source for each, with an as-of date. Give codes, applicant types (such as small_business), or nothing for the full table of 17 codes. Static reference with no network access. Informational, not legal advice.

NameRequiredDescriptionDefault
codesNo
applicant_typesNo

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/non-open-world, and the description reinforces this with 'Static reference with no network access,' plus adds value the annotations cannot: an as-of date, sourcing per code, and an 'informational, not legal advice' disclaimer. It does not, however, describe output shape or size limits.

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 the core action and the return contents, then the input modes, then the safety disclaimer. Dense but nearly every clause earns its place; only the parenthetical examples add mild 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?

No output schema exists, so the description compensates by enumerating exactly what each result contains (label, meaning, who counts, cautions, source, as-of date). Combined with the input modes and the static/no-network note, an agent has everything needed to call and interpret it.

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 0% schema description coverage the description carries the burden, and it does: 'codes' are numeric eligibility codes (examples 23, 12, 99), 'applicant_types' are named categories (example small_business), and passing neither yields the full 17-code table. It stops short of explaining how codes and applicant_types combine when both are supplied.

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 (decode/explain) and resource (Grants.gov applicant eligibility codes) and immediately distinguishes itself from the sibling search/retrieval tools (get_grant, search_grants, grants_closing_soon) by being a static code-to-meaning reference. Examples (23, 12, 99) make the subject 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?

Explicitly tells the agent what to pass: 'Give codes, applicant types ... or nothing for the full table of 17 codes,' which covers the three input modes. It lacks an explicit when-not / alternative-tool statement, but the context is clear enough for correct invocation.

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

get_grantGet a grant listingA
Read-onlyIdempotent
Inspect

Get one Grants.gov listing in full by opportunity id (the digits at the end of a listing URL) or opportunity number. Returns status, agency, posted and close dates (or forecast dates), award ceiling and floor, total program funding, expected number of awards, cost sharing, every eligible applicant type in plain words, the additional eligibility text, award instruments, categories, Assistance Listings, the agency contact, the description (about 1,500 characters, or 6,000 with detail "full"), document folders and the official URL. Cached for 60 minutes.

NameRequiredDescriptionDefault
detailNo"summary" (default) or "full" for a longer description.
opportunity_idNo
opportunity_numberNoThe funding opportunity number, for example NOAA-NMFS-AK-2026-33268 or PA-27-100.

TDQS

A4.3/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 open-world, so the safety profile is covered. The description adds genuinely new behavioral context: a 60-minute cache and the size of the returned description field (~1,500 vs 6,000 characters with detail 'full'). It doesn't cover not-found/error behavior.

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?

Purpose and lookup keys are front-loaded in the first clause, with the return-field inventory after and the cache note last. The single sentence inventories many fields but each item is concrete and non-redundant, so it stays informative rather than padded.

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 return-value burden and does so exhaustively (status, dates, funding, eligibility, contacts, documents, official URL), plus caching. It omits what happens when neither identifier is supplied or when the id doesn't exist, which matters given zero required parameters.

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 67%, and the description compensates for the gaps: it decodes opportunity_id ('digits at the end of a listing URL') and explains the practical effect of the detail enum (description length). opportunity_number's semantics are still left largely to the schema's example.

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 and resource ('Get one Grants.gov listing in full') and pins down the lookup key (opportunity id or opportunity number). The singular 'one ... listing' cleanly distinguishes it from the sibling search_grants, which lists many.

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?

Explains where the identifier comes from ('the digits at the end of a listing URL') and gives a format example for the number, so an agent can tell which input it must already have. It does not explicitly state when to prefer this over search_grants or eligibility_explainer, 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.

grants_closing_soonGrants closing soonA
Read-onlyIdempotent
Inspect

List posted Grants.gov opportunities whose application deadline falls within the next 1 to 120 days (default 30), soonest first, with days left counted in Eastern Time. Takes the same keyword, applicant type, category, instrument, agency and Assistance Listing filters as search_grants. Listings with no close date or a placeholder close date are left out.

NameRequiredDescriptionDefault
limitNoResults to return, 1 to 50. Default 25.
agencyNoAn agency code (USDA, HHS-NIH11, DOI-FWS) or name ("Fish and Wildlife", "Rural Business"). A department code includes all of its sub-agencies.
keywordNoWords to search for in listing titles and text, for example "rural energy" or "STEM education".
categoriesNoGrants.gov category codes: AG Agriculture, AR Arts, BC Business and Commerce, CD Community Development, CP Consumer Protection, DPR Disaster Prevention and Relief, ED Education, ELT Employment, Labor and Training, EN Energy, ENV Environment, FN Food and Nutrition, HL Health, HO Housing, HU Humanities, IIJ Infrastructure Investment and Jobs Act, IS Information and Statistics, ISS Income Security and Social Services, LJL Law, Justice and Legal Services, NR Natural Resources, O Other, OZ Opportunity Zone Benefits, RD Regional Development, RT Recreation and Tourism, ST Science and Technology, T Transportation.
eligibilityNoApplicant types to match, such as small_business, nonprofit_501c3, nonprofit_other, tribal_government, city_or_township_government, individual. A listing matches when it is open to any of them.
instrumentsNoKinds of award to include.
within_daysNoDays ahead to look. Default 30.
assistance_listingNoAssistance Listing (formerly CFDA) number, for example 10.868.
include_unrestrictedNoWhen eligibility is set, also include Unrestricted (code 99) listings, which are open to any applicant type. Default true.

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already cover safety (readOnly, idempotent, non-destructive), but the description adds real behavioral detail: results are sorted soonest-first, days-left is computed in Eastern Time, and listings with missing or placeholder close dates are silently excluded. That last exclusion is a genuine data-quality caveat an agent would otherwise not know.

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, front-loaded with the core behavior (window, default, ordering, timezone) before the filter-parity and exclusion details. No filler; every clause conveys a distinct constraint.

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 still conveys the return shape (ordered listings with a days-left field counted in ET), the default window, and the exclusion rule, while annotations cover the safety profile. Nothing needed to call it correctly 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 description coverage is 100%, so the schema already documents all 9 parameters thoroughly. The description adds only that filters mirror search_grants and reiterates the within_days default; the baseline 3 is appropriate when the schema carries the semantics.

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 (List) and resource (posted Grants.gov opportunities) plus the defining scope: deadline within 1-120 days, default 30, soonest first. This is clearly distinguishable from search_grants, which it names as the filter-compatible sibling.

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 'closing soon' framing and the 1-120 day window make the use case clear, and it explicitly says it accepts the same filters as search_grants, which helps an agent route between the two. It does not state when NOT to use it (e.g., use search_grants for deadline-agnostic search), 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.

search_grantsSearch federal grantsA
Read-onlyIdempotent
Inspect

Search live federal funding opportunities on Grants.gov. Results come from Grants.gov, and users must confirm every detail on the official listing before applying; each result carries its listing link. Filter by keyword, applicant type (small businesses, 501(c)(3) and other nonprofits, tribes, local governments, individuals and more), category, award instrument, agency, Assistance Listing number, status (posted by default, or forecasted) and close date range. Returns the total matches and each listing with id, number, title, agency, posted and close dates, days left and URL. Sort by relevance (default with a keyword), closing_soonest (default without one) or newest. Results are cached for 10 minutes.

NameRequiredDescriptionDefault
sortNo
limitNoResults to return, 1 to 50. Default 20.
agencyNoAn agency code (USDA, HHS-NIH11, DOI-FWS) or name ("Fish and Wildlife", "Rural Business"). A department code includes all of its sub-agencies.
offsetNoResults to skip, for the next page. Default 0.
statusNoposted (open now, default), forecasted (announced but not yet open) or both.
keywordNoWords to search for in listing titles and text, for example "rural energy" or "STEM education".
categoriesNoGrants.gov category codes: AG Agriculture, AR Arts, BC Business and Commerce, CD Community Development, CP Consumer Protection, DPR Disaster Prevention and Relief, ED Education, ELT Employment, Labor and Training, EN Energy, ENV Environment, FN Food and Nutrition, HL Health, HO Housing, HU Humanities, IIJ Infrastructure Investment and Jobs Act, IS Information and Statistics, ISS Income Security and Social Services, LJL Law, Justice and Legal Services, NR Natural Resources, O Other, OZ Opportunity Zone Benefits, RD Regional Development, RT Recreation and Tourism, ST Science and Technology, T Transportation.
eligibilityNoApplicant types to match, such as small_business, nonprofit_501c3, nonprofit_other, tribal_government, city_or_township_government, individual. A listing matches when it is open to any of them.
instrumentsNoKinds of award to include.
closes_afterNoOnly listings closing on or after this date, YYYY-MM-DD.
closes_beforeNoOnly listings closing on or before this date, YYYY-MM-DD.
assistance_listingNoAssistance Listing (formerly CFDA) number, for example 10.868.
include_unrestrictedNoWhen eligibility is set, also include Unrestricted (code 99) listings, which are open to any applicant type. Default true.

TDQS

A4.1/5.0
Behavior5/5

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

Annotations cover the safety profile (readOnly, idempotent, openWorld, non-destructive), and the description adds substantial context beyond them: data provenance (Grants.gov), the requirement that users confirm details on the official listing, per-result listing links, default status and default sort rules, and a 10-minute cache. These are exactly the behavioral traits an agent cannot get from the structured fields.

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 purpose and data source, then filters, returns, sort, and caching in a logical order. It is dense with almost no filler, though it is on the longer side for a single paragraph.

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 properly describes the return shape (total matches plus each listing's id, number, title, agency, dates, days left, URL). Combined with 92% schema coverage and complete annotations, an agent has everything needed to call and interpret the call.

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 92%, so the schema carries most parameter meaning (baseline 3). The description adds value by stating behavioral defaults the schema leaves unstated, notably that status defaults to posted and that sort defaults to relevance when a keyword is present and closing_soonest when it is not.

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 (Search) and resource (live federal funding opportunities on Grants.gov), with scope and data source made explicit. It does not name a sibling to distinguish against (e.g., grants_closing_soon or get_grant), but the filter and return detail make the purpose 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 through the enumerated filters and defaults (status posted by default, sort behavior with/without a keyword), but there is no explicit when-to-use-this-vs-alternatives guidance despite three sibling tools existing. An agent must infer that this is the general search versus get_grant for a single listing.

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. 4 tool updates
    • First observedeligibility_explainer
    • First observedget_grant
    • First observedgrants_closing_soon
    • First observedsearch_grants

Publisher details

Operator
Modern Mustard Seed · Publisher source
Vendor relationship
First-party
Trust center
Not available
Restrictions
Not applicable

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables searching US federal funding opportunities across all agencies, reading full grant records with eligibility, award amounts, deadlines, and NOFO attachments, and decoding filter codes via keyless access to Grants.gov.
    279 npm
    2
    Apache 2.0
  • A
    license
    Not graded
    quality
    A
    maintenance
    Read one exact U.S. federal grant opportunity next to its official record with seven MCP tools for cited documents, requirements, amendments, hard gates, award history, and unresolved evidence. Independent UtilityHouse product; limited free beta.
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables asking questions in natural language about live grants.gov funding opportunities, with tools to find, filter, check eligibility, track deadlines, and rank matches—while refusing to guess when data is unavailable.
    1
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    Enables searching SBIR/STTR and federal grant data from Grants.gov, NIH RePORTER, and the NSF Award Search API, including open opportunities, funded projects, similar-project matching, and SBIR/STTR totals by year, agency, and state, with a source URL attached to every result. It is read-only, requires no accounts or API keys, and stores no user data.
    5
    1
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources