Skip to main content
Glama

Server Details

Search US grants + federal contracts (Grants.gov + SAM.gov) from any LLM.

Ownership verified
Status
Healthy
Last Tested
Transport
Streamable HTTP
URL
Repository
bch1212/mcp-grantiq
GitHub Stars
1
Server Listing
GrantIQ MCP

TDQS

A3.5/5.0
Disambiguation5/5

Each tool targets a distinct action (search, details, deadlines, matching) or resource (grants, contracts, agencies, awards). While search_grants and get_deadlines both return grants, their purposes are clearly separated by filtering and detail depth.

Naming Consistency5/5

All tool names follow a consistent snake_case verb_noun pattern such as get_, search_, and match_. The convention is uniform, making the expected resource and action readable at a glance.

Tool Count5/5

Eight tools is well-scoped for a grants and contracts discovery server. Each tool covers a needed capability without obvious redundancy, keeping the surface manageable.

Completeness4/5

The domain is covered well: search and detail retrieval exist for both grants and contracts, plus agencies, deadlines, awards, and matching. Minor gaps include no dedicated award-details endpoint and deadline filtering only for grants.

Available Tools

8 tools
get_agenciesAInspect

List agencies with currently-open opportunities.

ParametersJSON Schema
NameRequiredDescriptionDefault
typeNoone of "grants", "contracts", or "both"grants

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.6/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden. 'List' implies a read-only operation, but the description does not disclose pagination, output size, what counts as 'currently-open', or any other behavioral details beyond the basic filter implied by the phrase.

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 a single front-loaded sentence with no filler. Every word contributes to identifying the operation and its scope, making it appropriately concise for a simple list tool.

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 low-complexity tool with one optional parameter and an output schema present, the description combined with the schema is nearly complete. It only lacks explicit clarification of what 'currently-open' means and how the type filter changes the returned agencies, but these are largely inferable or covered by the schema.

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 input schema fully documents the single 'type' parameter with a description and default value, so schema coverage is 100%. The description adds no parameter-level detail, but none is needed because the schema already covers it.

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 ('List') and resource ('agencies') with a clear scope ('currently-open opportunities'). This clearly distinguishes the tool from sibling tools that target grants, contracts, awards, deadlines, or details rather than agencies themselves.

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 'currently-open' qualifier implies the intended use case: retrieve agencies with active opportunities. However, there is no explicit guidance on when to prefer this tool over related search tools, and no exclusions or alternatives are named.

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

get_contract_detailsAInspect

Fetch the full SAM.gov contract record for a notice id.

ParametersJSON Schema
NameRequiredDescriptionDefault
notice_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.5/5.0
Behavior3/5

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

No annotations are present, so the description carries the burden. 'Fetch' indicates a read-only operation and 'full record' hints at a complete response, but there is no disclosure of authentication needs, error behavior, or data availability. This is acceptable for a simple retrieval but limited.

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 a single front-loaded sentence with no filler. Every word contributes to identifying the operation and the key input.

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, read-only tool with an output schema, the description covers the core operation. It is still thin on when to choose it over sibling search/detail tools and on the expected identifier format, 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.

Parameters3/5

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

With 0% schema description coverage, the entire parameter explanation falls on the description. It clarifies that notice_id is the SAM.gov notice identifier for the contract record, which goes slightly beyond the raw schema, but it stops short of giving format, examples, or any normalization details.

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 uses a specific verb ('Fetch') and names a concrete resource ('full SAM.gov contract record') keyed by notice_id. It is clear enough to distinguish from grant-focused siblings, though it does not explicitly contrast with search_contracts or the other list-style tools.

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 'for a notice id' implies the tool is for retrieving one complete record when an identifier is already known, rather than for searching. However, it does not explicitly say when to prefer it over search_contracts or get_grant_details, nor mention any exclusions.

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

get_deadlinesAInspect

Return grants whose response deadline is within days_ahead days.

ParametersJSON Schema
NameRequiredDescriptionDefault
days_aheadNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4/5.0
Behavior3/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It implies a read-only query by saying 'Return grants,' and it adds the deadline-filter behavior. However, it does not clarify whether the window is future-only, whether the current day is included, or what the returned data looks like.

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 a single, front-loaded sentence with no filler. It states the action, resource, and condition efficiently, earning its place completely.

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 single-parameter lookup tool with an output schema and no nested objects, this description is nearly complete. The only notable gap is the slight ambiguity around the exact meaning of 'within days_ahead days' (e.g., future-only versus absolute difference), but it remains sufficient for an agent to invoke the tool 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?

The input schema has 0% description coverage, so the description must explain the parameter. It does: 'days_ahead' is the number of days defining the deadline window. This adds real meaning beyond the bare integer type, though it leaves minor edge cases (inclusive/exclusive, direction) implicit.

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 uses a specific verb ('Return') with a clear resource ('grants') and a concrete condition ('response deadline is within days_ahead days'). This clearly distinguishes it from sibling tools like search_grants or get_contract_details, which target different retrieval needs.

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 intended use is implied by the tool's purpose: an agent should use this when needing grants with upcoming response deadlines. However, the description provides no explicit guidance about when not to use it or how it compares to alternatives such as search_grants or match_opportunities.

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

get_grant_detailsBInspect

Fetch the full grant record for a Grants.gov opportunity id.

ParametersJSON Schema
NameRequiredDescriptionDefault
opportunity_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.4/5.0
Behavior3/5

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

With no annotations, the description carries the full burden of disclosing behavior. 'Fetch' implies a read-only operation, and 'full grant record' signals comprehensive output. However, it does not mention error behavior, authentication, or whether the ID format has restrictions, leaving some ambiguity for a tool with no annotation safety net.

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?

One short sentence that leads with the action and states both the resource and the key input. Every word earns its place; no filler or redundancy.

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 tool with an output schema, the description covers the essential retrieval action. It lacks any usage guidance relative to sibling tools and does not state what makes the record 'full', so completeness is adequate but not strong.

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 provides no description for opportunity_id, but the description clarifies it as a 'Grants.gov opportunity id', which gives the parameter meaningful context beyond the bare type string. For a single parameter this is sufficient to guide invocation.

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 uses a specific verb ('Fetch') and a concrete resource ('full grant record') tied to a 'Grants.gov opportunity id'. This clearly distinguishes it from search-oriented siblings like search_grants, though it does not explicitly name the distinction.

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 guidance is provided on when to use this tool versus alternatives such as search_grants or get_contract_details. An agent must infer that this is for retrieving a single record by ID rather than searching, which is not explicitly stated.

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

match_opportunitiesBInspect

Return the top ~10 grants + contracts matched to an org profile.

ParametersJSON Schema
NameRequiredDescriptionDefault
org_typeNo
focus_areasNo
org_descriptionYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.2/5.0
Behavior3/5

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

With no annotations, the description carries the full behavioral burden. It discloses that the tool is read-only ('Return'), gives an approximate count ('~10'), and specifies the result types ('grants + contracts'). It does not explain how matching is determined, how ranking works, or what happens when optional parameters are omitted.

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, efficient sentence that front-loads the action and result shape. It earns its place, though the brevity sacrifices useful behavioral and usage detail.

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?

An output schema exists, which covers return values, and the basic operation is clear. Still, the definition is incomplete for a tool that overlaps with several search-related siblings: it does not state when to prefer match_opportunities over search_awards, search_grants, or search_contracts, nor does it clarify the matching logic or optional parameter effects.

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

Parameters2/5

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

Schema description coverage is 0%, and the description does not explain any of the three parameters. 'Org profile' loosely maps to org_description, but org_type and focus_areas are completely unmentioned, leaving the agent to rely on parameter names alone.

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 uses a specific verb ('Return') and clearly identifies the resource ('grants + contracts') as well as the matching criterion ('matched to an org profile'). This distinguishes it from generic search tools, although it does not explicitly name sibling alternatives.

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 'matched to an org profile' implies the tool should be used when the agent has an organizational profile and needs tailored opportunities. However, it provides no explicit when-to-use/when-not-to-use guidance and does not mention the overlapping search_awards, search_grants, or search_contracts tools.

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

search_awardsCInspect

Search past SAM.gov contract awards.

ParametersJSON Schema
NameRequiredDescriptionDefault
yearNo
agencyNo
recipient_nameNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.4/5.0
Behavior2/5

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

With no annotations, the description carries the full burden of behavioral disclosure, but it only says 'Search past SAM.gov contract awards.' It does not mention result limits, pagination, read-only behavior, or any other operational traits.

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

Conciseness2/5

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

The description is brief and front-loaded, but it is under-specified rather than efficiently structured. It conveys only a vague action and omits essential context that would justify its length.

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

Completeness2/5

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

Despite having an output schema, the description lacks enough detail for correct invocation: no parameter semantics, no usage differentiation from siblings, and no behavioral expectations. It is minimally adequate but leaves significant gaps.

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

Parameters1/5

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

Schema description coverage is 0%, and the description does not explain any of the three parameters (year, agency, recipient_name). The agent gets no help understanding how to construct a meaningful query.

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 states a specific verb ('Search') and a clear resource ('past SAM.gov contract awards'). It gives the agent a reasonable sense of what the tool does, though it does not explicitly differentiate itself from sibling tools like search_contracts.

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 guidance is provided about when to use this tool versus search_contracts, search_grants, or match_opportunities. The wording implies searching historical awards but does not state exclusions, prerequisites, or preferred use cases.

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

search_contractsCInspect

Search SAM.gov for federal contract opportunities.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNomax rows to return (1-100)
agencyNofilter by agency / organization name
keywordNofree-text search term
set_asideNoSAM type-of-set-aside code (e.g. "SBA" for small business)
naics_codeNofilter by NAICS industry code

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.8/5.0
Behavior2/5

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

With no annotations, the description carries full responsibility for behavioral transparency. It only mentions 'search' with no detail on output format, pagination, side effects, or data limits. This is minimal and insufficient for a full understanding of 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 a single concise sentence with no fluff. It directly states the action and target, earning a perfect score for conciseness.

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

Completeness2/5

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

Given the simplicity of the tool, the description is minimal and lacks important context such as what the results look like, how to interpret them, or any limitations. The presence of sibling tools without differentiation further reduces contextual completeness.

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 input schema provides 100% coverage of all five parameters with descriptions, meeting the baseline. The tool description adds no extra semantic value beyond the schema, so the score remains at the baseline of 3.

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 clearly states the tool searches SAM.gov for federal contract opportunities, meeting the basic purpose clarity. However, it does not distinguish itself from sibling tools like search_awards or search_grants, which could cause confusion in selection.

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

Usage Guidelines1/5

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

No guidance is provided about when to use this tool versus alternatives. The description lacks any indication of appropriate scenarios, prerequisites, or differentiation from similar search tools.

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

search_grantsCInspect

Search Grants.gov for funding opportunities.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNomax rows to return (1-100)
agencyNofilter by agency code (e.g. "USDA")
statusNoopportunity status — "posted", "forecasted", "closed"posted
keywordNofree-text search term
amount_maxNomaximum award ceiling in USD
amount_minNominimum award ceiling in USD

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations, the description carries the full burden of behavioral disclosure. It only states the basic operation and implies an external data source; it does not mention query behavior, default filtering, result handling, or any other behavioral traits an agent would need to anticipate.

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 filler or redundant wording, and it front-loads the core purpose. It could be improved by adding usage context, but as written it is concise and unobtrusive.

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

Completeness2/5

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

Given the number of sibling tools and the presence of several similar search-related tools, the description is too minimal to orient an agent. It lacks routing cues and any mention of scope, limitations, or relationship to alternatives, leaving significant gaps in context.

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%, and each parameter already includes a clear description with default values and examples. The tool description adds no parameter-specific meaning, so the baseline of 3 applies.

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 states a clear action ('Search') on a specific resource ('Grants.gov') targeting 'funding opportunities', which is enough to identify the tool's domain. However, it does not explicitly distinguish itself from sibling tools like match_opportunities or search_awards, so it falls short of a 5.

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?

The description provides no guidance on when to use this tool versus alternatives. It does not mention conditions, exclusions, or situations where another sibling tool would be more appropriate, leaving the agent to infer usage entirely from the name.

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. Dates show when Glama detected each change.

  1. 8 tool updates
    • First observedget_agencies
    • First observedget_contract_details
    • First observedget_deadlines
    • First observedget_grant_details
    • First observedmatch_opportunities
    • First observedsearch_awards
    • First observedsearch_contracts
    • First observedsearch_grants

Frequently Asked Questions

Discussions

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

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to search federal contracts, analyze agency spending, track competitor wins, and monitor small business set-aside opportunities using SAM.gov, USASpending.gov, and FPDS data.
    -
  • A
    license
    Not graded
    quality
    F
    maintenance
    Enables AI agents to search and analyze federal government contract opportunities and awards from SAM.gov and USASpending.gov, with tools for contract search, detail, agency spending, and trending sectors.
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables AI agents and grant software to discover current U.S. federal grants without an API key, offering search, official detail, transparent fit scoring, sourced briefs, and deterministic shortlist preflight calls that settle in USDC on Base via x402.
    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.
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.