FundingLandscape
Server Details
Search 18,000+ verified open US grants, SAM.gov contracts, and 3,600+ private foundations.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Average 4.2/5 across 25 of 25 tools scored. Lowest: 2.5/5.
Most tools have distinct purposes, but there is potential confusion between batch search tools and regular search tools (e.g., batch_search_grantsplus vs. search_grantsplus). Descriptions and routing instructions help, but a few tools like search_foundations overlap partially with search_grantsplus.
Tool names follow a mix of patterns: some use verb_noun (get_, delete_, update_, list_, search_), but others like deadline_calendar, find_similar, and sign_in break the pattern. The naming is readable but inconsistent.
With 25 tools, the set is slightly heavy for the domain. While many tools are informational and justified, the count borders on excessive and could be streamlined by consolidating some query or account management tools.
The tool surface covers core CRUD for saved searches, various search types, account management, and subscription handling. Minor gaps exist (e.g., no search history viewer or export functionality), but overall it's well-rounded for the stated purpose.
Available Tools
25 toolsbatch_search_grantsplusBatch Search GrantsARead-onlyIdempotentInspect
Search grants, prizes, and foundations comprehensively. Returns 10 results by default (~4KB). Use detail_level and max_results to control response size. Response includes total available count so you can request more if needed.
| Name | Required | Description | Default |
|---|---|---|---|
| offset | No | Number of results to skip for pagination (default: 0). Use with max_results to page through large result sets. Example: offset=100 with max_results=100 returns results 101-200. | |
| queries | Yes | Array of 2-5 search queries to run in parallel. Example for clean energy: ["renewable energy grants", "solar wind funding", "clean energy nonprofit", "sustainability grants", "green technology funding"] | |
| max_results | No | Maximum results to return (default: 10). Token cost guide: 10 results ~4KB, 25 results ~10KB, 50 results ~20KB, 100 results ~40KB. No hard cap - use judgment based on your context window. | |
| detail_level | No | Controls response verbosity. minimal (~120 bytes/result): id, title, org, deadline, url, qualityScore - best for scanning 50+ results. compact (~300 bytes/result, DEFAULT): adds snippet, category, status - good for recommendations. full (~1.5KB/result): everything including eligibility, amounts - only use with max_results <= 10. | compact |
| user_context | No | ||
| grants_filters | No | Grants.gov specific filters | |
| include_foundations | No | Also search private foundations (default: true) | |
| max_response_tokens | No | Token budget for response (default: 4000 ≈ 16KB). Server auto-caps results to fit. Increase to 8000-16000 for more results per call, decrease to 2000 for lightweight scanning. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds useful behavioral info beyond annotations: default 10 results (~4KB), response size control, and total count for pagination. No contradictions with readOnlyHint=true.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three concise sentences front-loading purpose and providing practical tips. No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Adequately covers key behaviors and parameter guidance for a 8-param tool with no output schema, though misses some explanation for nested objects like user_context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Adds context to parameters like detail_level (byte estimates) and max_results (token costs) beyond the schema, which already covers 88% of parameters well.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool searches grants, prizes, and foundations comprehensively. However, it does not explicitly differentiate from sibling tools like search_grantsplus or batch_search_procurement, missing a clear distinction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides guidance on controlling response size via detail_level and max_results, but does not specify when to use this tool over alternatives like single-query search_grantsplus.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
batch_search_procurementBatch Search ContractsARead-onlyIdempotentInspect
Search federal contracts (SAM.gov) comprehensively. Returns 10 results by default (~4KB). Use detail_level and max_results to control response size. Response includes total available count so you can request more if needed.
| Name | Required | Description | Default |
|---|---|---|---|
| offset | No | Number of results to skip for pagination (default: 0). Use with max_results to page through large result sets. Example: offset=100 with max_results=100 returns results 101-200. | |
| queries | Yes | Array of 2-5 search queries to run in parallel. Example for IT services: ["IT services contract", "software development federal", "technology consulting government", "computer services procurement"] | |
| max_results | No | Maximum results to return (default: 10). Token cost guide: 10 results ~4KB, 25 results ~10KB, 50 results ~20KB, 100 results ~40KB. No hard cap - use judgment based on your context window. | |
| sam_filters | No | SAM.gov specific filters | |
| detail_level | No | Controls response verbosity. minimal (~120 bytes/result): id, title, org, deadline, url, qualityScore - best for scanning 50+ results. compact (~300 bytes/result, DEFAULT): adds snippet, category, status - good for recommendations. full (~1.5KB/result): everything including eligibility, amounts - only use with max_results <= 10. | compact |
| user_context | No | ||
| max_response_tokens | No | Token budget for response (default: 4000 ≈ 16KB). Server auto-caps results to fit. Increase to 8000-16000 for more results per call, decrease to 2000 for lightweight scanning. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant value beyond annotations: it discloses the default result count, approximate response size, total available count in results, and how detail_level affects verbosity. No contradiction with annotations (readOnlyHint, idempotentHint).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph that is information-dense and front-loaded with purpose. While efficient, it could be slightly more structured (e.g., bullet points) to improve readability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (7 parameters, nested objects, no output schema), the description covers all essential aspects: usage, parameters, response size control, pagination, and detail levels. It is complete for an AI agent to invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds detailed meaning beyond the input schema, including token cost guide for max_results, pagination example for offset, and byte estimates for detail_level options. Schema coverage is 86%, and the description compensates for the remaining 14%.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it searches federal contracts (SAM.gov) comprehensively. It uses specific verbs and differentiates from sibling tools like search_procurement and batch_search_grantsplus by its batch nature and focus on SAM.gov.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides guidance on default behavior, response size control via detail_level and max_results, pagination via offset, and token costs. While it doesn't explicitly state when not to use it, the context signals and sibling list imply alternatives exist.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_connectionCheck ConnectionARead-onlyIdempotentInspect
Verify MCP server connectivity. Returns success immediately with no database calls. Use this FIRST if experiencing tool errors - a successful response confirms the server is reachable and your authentication is valid.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint. The description adds the behavioral detail 'Returns successfully immediately with no database calls,' which enhances transparency beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: two sentences, no unnecessary words, front-loaded with the core purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description fully covers the tool's purpose, usage guidance, and behavioral traits, with annotations covering safety aspects. No output schema is needed, and contextual completeness is high.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has no parameters, and schema coverage is 100%. Description need not add parameter info; a baseline score of 4 is appropriate given no parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Verify MCP server connectivity.' It uses a specific verb ('Verify') and resource ('MCP server connectivity'), and distinguishes from sibling tools that perform data retrieval or mutations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly advises to 'Use this FIRST if experiencing tool errors' and explains what a successful response means, providing clear context for when to use this tool versus others.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
deadline_calendarDeadline CalendarARead-onlyIdempotentInspect
Get upcoming funding deadlines organized by week. Perfect for users who need to plan their application schedule. Returns opportunities grouped by deadline week with days remaining. Paid feature.
| Name | Required | Description | Default |
|---|---|---|---|
| weeks | No | Number of weeks ahead to show (default: 4, max: 12) | |
| category | No | Filter to specific category (e.g., "Grant", "Construction") |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true and destructiveHint=false, but the description adds value by mentioning 'Paid feature' and that results are 'grouped by deadline week with days remaining', which are behavioral traits not in annotations. No contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is only three sentences, highly focused, and front-loaded with the core action. Every sentence adds value without redundancy or unnecessary detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description adequately describes the return format (grouped by week, days remaining) and mentions it's a paid feature. It could be slightly more complete by specifying the structure or pagination, but overall sufficient for the tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema covers both parameters with descriptions (weeks default/max, category filter) at 100% coverage. The description does not add additional meaning beyond what the schema already provides, so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and resource 'upcoming funding deadlines organized by week', which is specific and distinguishes it from sibling tools like search_grantsplus or get_opportunity. It concisely communicates the tool's functionality.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides context with 'Perfect for users who need to plan their application schedule' and notes it's a 'Paid feature', but does not explicitly state when not to use or mention alternatives. The usage guidance is clear but lacks exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
delete_saved_searchDelete Saved SearchADestructiveIdempotentInspect
Delete a saved search by ID. Use list_saved_searches first to find the ID.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Saved search ID (from list_saved_searches) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate destructiveHint=true and readOnlyHint=false, so the description's 'Delete' aligns. The description adds no extra behavioral context beyond what annotations provide, so a 3 is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences with no wasted words. It front-loads the action and then provides contextual guidance.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple delete operation with one parameter and no output schema, the description covers the essential: what to do and how to get the required ID. Nothing is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the parameter description in the schema gives context ('from list_saved_searches'). The general description adds no additional parameter details beyond 'by ID', so baseline 3 is correct.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (delete) and resource (saved search) and specifies the method (by ID). It distinguishes itself from sibling tools like list_saved_searches, save_search, and update_saved_search.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit guidance to use list_saved_searches first to find the ID, which is a helpful prerequisite. It doesn't specify when not to use it or alternatives, but for a simple delete this is sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
find_similarFind Similar OpportunitiesARead-onlyIdempotentInspect
Find opportunities similar to a given one using semantic similarity. Useful when user likes one result and wants more like it. Uses vector embeddings to find conceptually related opportunities, not just keyword matches. Paid feature.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max similar opportunities to return (default: 5, max: 20) | |
| opportunity_id | Yes | ID of the opportunity to find similar matches for (from search results) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds valuable behavioral context: it uses vector embeddings, performs semantic similarity (not keyword), and is a paid feature. No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences with no filler. First sentence states action and method, second gives usage context, third adds technical detail and cost. Front-loaded and efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with two parameters and clear annotations, the description covers purpose, when to use, how it works, and cost. No output schema exists, but return values are implicit. Could mention any limitations (e.g., not all opportunities may have embeddings), but overall adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for both parameters (opportunity_id and limit). The description does not add additional meaning beyond what the schema provides for these parameters. The baseline of 3 is appropriate as schema adequately documents parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's verb ('find opportunities similar to a given one'), resource ('opportunities'), and method ('semantic similarity'). It distinguishes from sibling search tools (e.g., search_grantsplus) by specifying vector embeddings and conceptual matching, not just keyword matches.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says 'Useful when user likes one result and wants more like it,' providing clear context for when to use. It does not list exclusions or alternatives, but the distinction from keyword search tools is implied. The mention of 'Paid feature' adds important usage consideration.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_account_statusGet Account StatusARead-onlyIdempotentInspect
Check your subscription status, usage this period, and remaining searches. This call is free and does not count against your limits. Use anytime to see how many searches you have left.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds value beyond annotations by noting the call is free and does not count against limits, which is not in annotations. Annotations already indicate read-only and idempotent, so description complements well.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no waste, front-loaded with purpose. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only tool with good annotations, the description covers purpose, usage, and key behavioral details (free). Output isn't detailed but is implied, so it's complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With zero parameters, the schema is fully covered, and the description doesn't need to add parameter info. Baseline 4 is appropriate as there is no missing information.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool checks subscription status, usage this period, and remaining searches, which is specific and distinguishes it from sibling tools that perform searches or other actions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It states 'Use anytime to see how many searches you have left' and that it's free, providing clear context for when to use, though it doesn't explicitly exclude alternatives, which are not needed as it's the only status tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_categoriesList Funding CategoriesARead-onlyIdempotentInspect
Browse all funding categories with opportunity counts. Categories include: Grant, Construction, Goods & Services, Professional Services, Technology, Healthcare, Research, and more. Useful for understanding what types of opportunities are available.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds value by specifying that the tool returns opportunity counts and lists example categories, which goes 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, no wasted words. The first sentence states the core action and output, the second provides examples and context. Very efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no parameters and no output schema, the description covers the tool's purpose, output (opportunity counts), and examples. It is complete for a simple browse tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, and schema description coverage is 100% (empty object). Baseline for no parameters is 4, and the description does not need to explain parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists all funding categories with opportunity counts, explicitly naming example categories. The verb 'browse' and resource 'funding categories' are specific. It distinguishes from sibling tools like search_grantsplus which are search-oriented.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description says 'Useful for understanding what types of opportunities are available,' implying use before searching. However, it does not provide explicit when-to-use or when-not-to-use guidance, nor does it reference alternatives among sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_dataset_summaryGet Dataset SummaryARead-onlyIdempotentInspect
Get dataset size and coverage stats (open opportunities, certified sources).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnly and idempotent behavior. The description adds context about the specific data returned (size and coverage stats), which goes 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no unnecessary words. Every word adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description explains the return values (size and coverage stats) sufficiently. It could be more detailed about the format, but it is adequate for a simple tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist in the input schema, so baseline is 4. The description does not need to add parameter information.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves dataset summary information including size and coverage stats, with specific examples like open opportunities and certified sources. It is distinct from sibling tools like get_opportunity or search functions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for getting summary stats but does not provide explicit when-to-use or when-not-to-use guidance. No alternatives are mentioned, though the simplicity of the tool makes usage clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_foundationGet Foundation DetailsARead-onlyIdempotentInspect
Get complete details on a PRIVATE foundation by EIN. Returns comprehensive profile including financials, grant history, sector focus, and suggested next steps. NOTE: Only includes private foundations (IRS 990-PF filers, ~3,600 foundations). Public charities, fiscal sponsors, and community foundations are NOT included.
| Name | Required | Description | Default |
|---|---|---|---|
| ein | Yes | 9-digit EIN (no dashes). Example: 911663695. Must be a private foundation (990-PF filer). | |
| include_grants | No | Include recent grants (up to 20). Default: true |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate read-only, idempotent, non-destructive. Description reinforces that it retrieves complete details and adds specific outputs (financials, grant history, sector focus). No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences plus a note; no redundant information. Efficiently conveys scope and exclusions. Minor improvement could be structuring as bullet points, but it is already concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description compensates by listing key return elements. Clearly defines the tool's scope and limitations. Lacks details on grant count cap (up to 20), which might be inferred from schema. Overall adequate for the tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so parameters are already well-documented. Description does not add new semantic details about parameters beyond the schema; it focuses on output. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the verb 'Get', the resource 'foundation details', and the specific scope 'PRIVATE foundation by EIN'. Distinguishes from sibling tools like 'search_foundations' by focusing on a single EIN and explicitly excluding public charities and fiscal sponsors.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit context: only includes private foundations (990-PF filers, ~3,600). Clearly states what is NOT included, guiding when to avoid this tool. Does not explicitly name an alternative sibling tool, but the context is sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_opportunityGet Opportunity DetailsARead-onlyIdempotentInspect
Get full details for a specific funding opportunity. IMPORTANT: Use the exact "id" field from search results (e.g. "cmk65gf090028lee3nhy4lo6a"). Do NOT construct or guess IDs.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Exact opportunity ID from search results (CUID format like "cmk65gf09...") |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint. Description adds that it returns 'full details' and reinforces correct ID usage. No contradiction; adds useful behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences: first states purpose, second provides critical usage instruction. No wasted words, front-loaded, highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 no output schema and strong annotations, the description covers the essential context. Could optionally describe what 'full details' includes, but not necessary for correct use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 100% schema coverage, the description supplements by explicitly stating the ID must come from search results and providing a concrete example (CUID format). This adds significant clarity beyond the schema description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it retrieves full details for a specific funding opportunity. Distinct from sibling search tools and other actions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Includes an important warning to use the exact ID from search results, not guess or construct IDs. Provides an example format. Lacks explicit 'when not to use' but 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_pack_linkGet Search Pack LinkBInspect
Buy Search Pack ($5 = 50 searches, never expire). Requires active subscription.
| Name | Required | Description | Default |
|---|---|---|---|
| quantity | No | Number of packs to buy (1-20, default: 1). Each pack = 50 searches. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds that an active subscription is required, which annotations do not provide. However, it does not disclose that the tool likely returns a purchase link (implied by name) or any side effects of multiple calls (idempotent hint is false). Annotations provide basic safety hints, so description adds moderate value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loading the essential information (cost, searches, requirement). No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite being simple, the description omits that the tool returns a link (as per name) and the purchasing flow. With no output schema, more context on what the agent receives (e.g., a URL) would be helpful.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and already describes the quantity parameter fully (range, default, meaning). The description adds no additional meaning beyond what is in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool is for buying a Search Pack, with cost and expiration details. However, it does not explicitly differentiate from sibling tools like get_upgrade_link, leaving some ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The only usage guidance is 'Requires active subscription.' There is no mention of when to use this tool versus alternatives, such as get_upgrade_link or get_pricing, nor any exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_pricingGet PricingARead-onlyIdempotentInspect
Get pricing for all plans. Returns names, prices, features, limits.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true, covering safety and idempotency. The description adds return fields but does not disclose any additional behavioral traits beyond what annotations provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with two short sentences, front-loading the action and scope, and wasting no words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given zero parameters and no output schema, the description is complete enough for a simple retrieval tool. It could mention if pricing is static or dynamic, but the current content is sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are no parameters, so schema coverage is 100% vacuously. The description adds value by listing the return fields (names, prices, features, limits), which helps the agent understand what to expect.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get pricing') and the scope ('all plans'), and specifies the return values ('names, prices, features, limits'). It effectively distinguishes from sibling tools, which are focused on searches, account status, and other functions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for retrieving pricing information, but does not explicitly state when to use this tool versus alternatives or provide any exclusions. Given the simplicity, it is adequate but lacks explicit guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_setup_instructionsGet Setup InstructionsBRead-onlyIdempotentInspect
Return MCP setup instructions for Claude Desktop and other clients.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the description adds no behavioral context beyond those. It does not contradict the annotations, but it also fails to disclose aspects like output format or potential side effects (though none are expected).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no unnecessary words, efficiently conveying the tool's function. It is front-loaded and wastes no space.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (no parameters, no output schema), the description is minimally adequate but lacks details such as the format of the returned instructions (e.g., text, Markdown) or any constraints. For a utility tool, slightly more context would help.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With zero parameters and 100% schema coverage, the baseline is 4. The description does not need to add parameter details, so this score is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns setup instructions for specific clients, making the purpose easy to grasp. However, it could be more precise about what the instructions encompass (e.g., configuration steps or links), and it does not explicitly differentiate from siblings like 'get_tool_guide'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 'get_tool_guide' or 'get_account_status'. The description offers no context about prerequisites or scenarios, leaving the agent to infer appropriateness.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_tool_guideGet Tool GuideARead-onlyIdempotentInspect
Get comprehensive usage guide for FundingLandscape tools. Call this FIRST to understand optimal workflows, parameter usage, and best practices. Returns detailed documentation for search tools, filters, and token optimization strategies.
| Name | Required | Description | Default |
|---|---|---|---|
| topic | No | Topic to get guidance on (default: overview). Use "all" for complete reference. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, indicating safe read operations. The description adds behavioral context by specifying that it returns detailed documentation for search tools, filters, and token optimization strategies, confirming its informational nature without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three concise sentences with no waste. The critical instruction 'Call this FIRST' is front-loaded, and every sentence adds value: purpose, usage guidance, and scope of documentation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple informational tool with one optional parameter and complete annotations, the description covers all necessary context: what it does, why to call it first, and what documentation it returns. No gaps remain given the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers 100% of parameters with clear enum descriptions. The description does not add new parameter-level information beyond what the schema provides, but it does reinforce the tool's purpose in relation to parameters (e.g., 'optimal workflows, parameter usage'). Baseline is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the tool as a comprehensive usage guide for FundingLandscape tools, explicitly stating to 'Call this FIRST' and mentioning specific topics like search tools, filters, and token optimization. This distinguishes it from sibling tools such as search_grantsplus or batch operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit guidance on when to use the tool: 'Call this FIRST to understand optimal workflows, parameter usage, and best practices.' It clearly states the purpose and context, making it obvious that this is a preliminary tool for orientation before using other tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_upgrade_linkGet Upgrade LinkAInspect
Get Stripe checkout URL for subscription. IMPORTANT: Requires sign-in first. If not authenticated, returns sign-in instructions. After OAuth sign-in, call again for checkout URL.
| Name | Required | Description | Default |
|---|---|---|---|
| plan | No | Plan to upgrade to (default: plus) | |
| interval | No | Billing interval (default: month) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds the authentication behavior (returns sign-in instructions if not authenticated) which is not covered by annotations. Annotations indicate openWorldHint=true and readOnlyHint=false, and the description does not contradict these. It provides useful behavioral context beyond 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise: two sentences with an important note front-loaded. Every sentence adds value—no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the main use case (get checkout URL), the authentication prerequisite, and the flow for unauthenticated users. There is no output schema, so it does not detail the response format, but for a simple tool this is adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the input schema already documents both parameters (plan and interval) including their enum values and defaults. The description adds no additional meaning beyond what the schema provides. Baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'get Stripe checkout URL for subscription'. The verb 'get' and resource 'Stripe checkout URL for subscription' are specific. There is no other sibling tool with a similar purpose (e.g., get_pack_link is for a different thing), so it distinguishes well.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says 'Requires sign-in first' and provides guidance on what happens if not authenticated: returns sign-in instructions, then call again. This gives clear context for when to use the tool. However, it does not explicitly mention when not to use it or compare it to alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_saved_searchesList Saved SearchesARead-onlyIdempotentInspect
List all saved searches for the current user. Returns each search with its ID, query, filters, alert settings, and last run time. Use this FIRST to check what the user already has before creating or updating searches. Response includes remaining slots and plan info. Requires Plus ($29/mo) or Pro ($79/mo) subscription.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only and idempotent behavior. The description adds useful behavioral context: subscription requirement, return of remaining slots and plan info, which is beyond what annotations provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, each adding essential information. No wasted words, front-loaded with the main action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
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 explains what is returned and includes subscription context. Complete for a parameterless list tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters in the input schema, and schema coverage is 100%. Description does not need to add parameter info; baseline is 4.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action 'list all saved searches for the current user' and details the returned fields. It distinguishes from sibling tools like save_search by advising to use this first.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says 'Use this FIRST to check what the user already has before creating or updating searches.' Provides clear context but does not explicitly mention when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
report_feedbackReport FeedbackCInspect
Report bugs, data issues, or feedback. Actions: bug, data_issue, irrelevant, praise.
| Name | Required | Description | Default |
|---|---|---|---|
| tool | No | Which tool had the issue | |
| action | Yes | Type of feedback. Use "bug" for errors, "data_issue" for stale/wrong data, "irrelevant" for poor results. | |
| message | No | Describe the issue. For bugs, include the error message. | |
| category | No | ||
| severity | No | high = user blocked, medium = degraded experience, low = minor issue | |
| request_id | No | From error response - helps us trace the issue | |
| search_query | No | The search query that produced the issue | |
| user_context | No | ||
| opportunity_id | No | ID of the opportunity being reported on (if applicable) | |
| result_position | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnlyHint=false, destructiveHint=false, and idempotentHint=false, suggesting side effects that are not necessarily destructive. The description merely says 'Report,' without disclosing what happens when feedback is submitted (e.g., stored, triggers notifications, etc.). Minimal additional context is provided 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very short (one sentence plus a list), making it concise but lacking structure. It does not front-load key information; important details like the full action list are missing. While brevity is appreciated, it sacrifices completeness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite having 10 parameters, many with descriptions, and nested objects, the description is extremely sparse. It does not explain the return value, side effects, rate limits, or how the feedback is processed. For a tool that collects user submissions, critical contextual information is absent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 70% description coverage, but the description adds little value. It lists only four action values ('bug, data_issue, irrelevant, praise') while the schema's enum includes ten options, and the description omits crucial ones like 'clicked', 'saved', etc. This could mislead the agent. The description does not elaborate on other parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Report bugs, data issues, or feedback.' It uses a specific verb ('report') and resource (bugs/data issues/feedback), distinguishing it from sibling search and management tools. However, the listed actions are a subset of the full enum in the schema, which could cause confusion.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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. The description does not specify when not to use it, nor does it mention any prerequisites or context. As a feedback tool, it implicitly differs from siblings, but explicit usage guidelines are absent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
save_searchSave SearchAInspect
Save a search query for email alerts. When new opportunities match, the user receives daily or weekly email notifications.
RECOMMENDED WORKFLOW:
Call list_saved_searches first to check for existing/similar searches
If a similar search exists, offer to update_saved_search instead
Search with search_grantsplus or search_procurement first to validate the query returns good results
Save with appropriate filters based on what the user described
FILTER TIPS:
Use itemTypes ["grant"] for grants/fellowships or ["procurement"] for contracts/RFPs
Use sourceTypes ["federal"] for federal opportunities only
Use geography ["CA"] for California-specific (includes national opportunities)
For SAM.gov-specific filters (NAICS, set-asides), use sourceContext
Keep filters broad for notifications - better to get a few extra than miss one
PLAN LIMITS: Plus ($29/mo): 5 searches, weekly alerts. Pro ($79/mo): 25 searches, daily alerts.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Friendly name for this search (e.g. "DOE Clean Energy Grants") | |
| query | Yes | Search query to save (e.g. "clean energy research grants", "IT services federal contracts") | |
| cadence | No | Alert frequency. daily requires Pro plan. never = save the search without email alerts. Default: weekly | |
| filters | No | Filters to narrow alert results. All optional. When omitted, all opportunity types are included. | |
| hidelow | No | Hide low-confidence results in alerts. Default: false |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnlyHint=false, destructiveHint=false, idempotentHint=false. The description adds context: plan limits (Plus: 5 searches weekly, Pro: 25 daily), alert cadence behavior (daily requires Pro), and filter behavior (e.g., geography is eligibility-aware, applicantTypes soft). No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with headers (RECOMMENDED WORKFLOW, FILTER TIPS, PLAN LIMITS) but is verbose. Some filter tips repeat schema information. Could be more concise while retaining clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 5 parameters (including nested object) and no output schema, the description covers purpose, workflow, filter semantics, and plan limits. It lacks explicit mention of the return value but overall is complete for agent invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so baseline is 3. The description adds value beyond schema by explaining filter semantics in detail (e.g., geography eligibility, itemTypes mapping, sourceContext, applicantTypes soft). This enhances understanding for the agent.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Save a search query for email alerts,' specifying the verb 'save' and resource 'search query.' It distinguishes itself from siblings like list_saved_searches, update_saved_search, and delete_saved_search.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a detailed recommended workflow: check existing searches, offer update_saved_search if similar, validate with search tools, then save with filters. It also includes filter tips and plan limits, guiding when to use this tool versus alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_foundationsSearch FoundationsARead-onlyIdempotentInspect
Search private foundations (IRS 990-PF filers only, ~3,600 foundations). Returns foundations ranked by relevance with match explanations and historical grant evidence. NOTE: Does not include public charities, community foundations, or fiscal sponsors. Best for: family foundations, corporate foundations, and independent foundations.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max foundations to return (default: 10, max: 50) | |
| query | Yes | Natural language description of the work or mission. Examples: "climate change initiatives in midwest", "youth education programs", "arts and culture in New York" | |
| states | No | Filter by state (2-letter codes). Where foundation is based. | |
| verbosity | No | minimal=name/ein/giving, summary=+location/sectors/explanation, full=+grants/trends | |
| include_grants | No | Include similar historical grants (default: true) | |
| min_annual_giving | No | Minimum annual giving in dollars |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds that it returns rankings and match explanations, but does not detail additional behavioral traits like rate limits or authentication needs. Since annotations provide safety cues, this is adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences plus a note, all front-loaded with the core purpose. No extraneous words; every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Without an output schema, the description explains return content (rankings, match explanations, grants). It covers scope and limitations adequately for the tool's complexity (6 params). A bit more on error scenarios or pagination would elevate completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and schema descriptions are clear. The description provides query examples but does not add significant meaning beyond what the schema already conveys. Per guidelines, baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it searches private foundations (IRS 990-PF filers only, ~3,600 foundations) and specifies the return format (ranked by relevance, match explanations, historical grant evidence). It distinguishes from public charities, community foundations, etc., eliminating ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says 'Best for: family foundations, corporate foundations, and independent foundations' and notes what is not included. However, it could more directly mention alternative tools (e.g., search_grantsplus for grants) to improve when-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_grants_and_procurementSearch Grants & Contracts (Combined)ARead-onlyIdempotentInspect
MIXED search across all 22,161 opportunities from 563 sources — combines grants AND procurement/contracts in one query. This mixes funding types which can create noisy results.
ROUTING — use the specialized tool instead: • User wants grants/funding/fellowships/prizes → search_grantsplus • User wants contracts/RFPs/procurement/bids → search_procurement • User explicitly wants BOTH types → search_grants_and_procurement • Intent unclear → ASK the user first
Use search_grantsplus or search_procurement for cleaner, more relevant results. Free tier: 10 searches/month, up to 10 results each. Paid: full results, up to 100 per search.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max results (default: 10) | |
| query | Yes | Natural language search query | |
| cursor | No | Pagination cursor from previous response | |
| source | No | Filter by source domain or dataSource (e.g., "grants.gov" or "tier0-sam.gov") | |
| status | No | Filter by status | |
| compact | No | Return compact results (default: true). Compact results include only essential fields (id, title, organization, category, url, deadline, status, qualityScore, snippet). Set to false for full details including eligibility, amounts, and match explanations. | |
| category | No | Filter by category | |
| min_quality | No | Minimum quality threshold (default: medium) | |
| organization | No | Filter by organization or funder name | |
| user_context | No | User context for better filtering | |
| procurement_type | No | Filter SAM.gov contracts by industry type. professional_services = consulting, engineering, R&D (NAICS 54xxxx, excludes manufacturing/construction noise). it_services = software, IT systems (NAICS 5415xx). construction = building projects (NAICS 23xxxx). manufacturing = production (NAICS 31-33xxxx). Use this to avoid irrelevant commodity results like "O-RING" or "VALVE" when searching for service contracts. | |
| deadline_within_days | No | Only opportunities closing within N days |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly and non-destructive, and description adds valuable behavioral context: mixed results can be noisy, free tier limits (10 searches/month, 10 results each, paid: 100). No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Concise and well-structured: states purpose, routing, and limitations in a few sentences. Front-loaded with key info. No unnecessary text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Provides essential usage context and limitations. No output schema, but the compact parameter description in schema hints at response structure. Minor gap: does not describe response fields in description, but param descriptions partially compensate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so description doesn't need to add per-parameter details. Description focuses on tool behavior and usage, not parameter definitions. Adequate given baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it's a mixed search across grants AND procurement/contracts, and distinguishes from specialized siblings by naming them explicitly. The verb 'search' is precise.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit routing logic: when to use specialized tools vs this combined one, and instructs to ask user if intent unclear. Also mentions free tier limits.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_grantsplusSearch Grants & FoundationsARead-onlyIdempotentInspect
GRANTS & FOUNDATIONS — Search grants, prizes, fellowships, SBIR/STTR, and private foundations. Excludes procurement/contracts for clean results. Use when user wants: funding, grants, fellowships, research money, SBIR, foundation grants. Also returns matching private foundations automatically. Examples: "cancer research funding", "clean energy small business grants", "HVAC grants in Arizona".
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max results (default: 25) | |
| query | Yes | Natural language search query | |
| cursor | No | Pagination cursor from previous response | |
| status | No | Filter by status | |
| compact | No | Return compact results (default: true). Set to false for full details. | |
| min_quality | No | Minimum quality threshold (default: medium) | |
| organization | No | Filter by funding organization | |
| user_context | No | User context for better filtering | |
| grants_filters | No | Grants.gov specific filters | |
| include_foundations | No | Also search private foundations matching the query (default: true). Returns foundations that have historically funded similar work. | |
| deadline_within_days | No | Only opportunities closing within N days |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint. Description adds behavioral detail: 'Excludes procurement/contracts for clean results' and 'Also returns matching private foundations automatically.' No contradictions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Extremely concise: three sentences with examples. Front-loaded with bolded title. Every sentence adds value. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 11 parameters and no output schema, the description adequately covers scope, usage, and examples. Missing return format details, but sufficient for agent understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. Description does not add significant meaning beyond schema; it mentions automatic foundation returns which aligns with include_foundations default. No extra semantics for other parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it searches grants, prizes, fellowships, SBIR/STTR, and private foundations, and explicitly excludes procurement/contracts. This distinguishes it from sibling tools like search_procurement.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit usage scenarios: 'Use when user wants: funding, grants, fellowships, research money, SBIR, foundation grants.' Also states what it excludes. Lacks explicit alternatives to siblings like search_foundations, but strong overall.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_procurementSearch Contracts & RFPsARead-onlyIdempotentInspect
CONTRACTS & PROCUREMENT — Search government contracts, RFPs, RFIs, BAAs, and solicitations from SAM.gov. Better than searching SAM.gov directly — includes semantic search and NAICS industry filtering to exclude commodity noise. Use when user wants: contracts, RFPs, procurement, bids, government work. Examples: "IT consulting services", "construction management", "cybersecurity contracts".
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max results (default: 25) | |
| query | Yes | Natural language search query | |
| cursor | No | Pagination cursor from previous response | |
| status | No | Filter by status | |
| compact | No | Return compact results (default: true). Set to false for full details. | |
| min_quality | No | Minimum quality threshold (default: medium) | |
| sam_filters | No | SAM.gov specific filters | |
| organization | No | Filter by contracting agency | |
| user_context | No | User context for better filtering | |
| procurement_type | No | Filter by industry. professional_services = consulting/engineering/R&D (NAICS 54xxxx). it_services = software/IT (NAICS 5415xx). construction = building (NAICS 23xxxx). manufacturing = production (NAICS 31-33xxxx). | |
| deadline_within_days | No | Only opportunities closing within N days |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint, idempotentHint, and destructiveHint. The description adds value by stating the tool includes semantic search and NAICS industry filtering, and that it is better than searching SAM.gov directly. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is four sentences, all substantive, with a clear segment marker ('CONTRACTS & PROCUREMENT') and front-loaded purpose. No wasteful words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 11 parameters and no output schema, the description covers core purpose, use cases, and distinguishing features (semantic search, NAICS filtering). It does not mention pagination or compaction, but the schema provides those details. Adequate for a search tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 does not detail individual parameters but provides context for overall behavior (e.g., NAICS filtering) that aligns with parameters like procurement_type and user_context. No additional param-specific information is needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Search' and the resource 'government contracts, RFPs, RFIs, BAAs, and solicitations from SAM.gov.' It distinguishes from sibling tools by highlighting semantic search and NAICS filtering, and provides concrete examples like 'IT consulting services'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states when to use the tool: 'Use when user wants: contracts, RFPs, procurement, bids, government work.' It also implies when not to use SAM.gov directly. However, it does not explicitly differentiate from sibling tools like search_grantsplus or batch_search_procurement.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sign_inSign InAInspect
Authenticate existing subscriber via OAuth. Opens browser login.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses key behavioral traits: OAuth-based authentication and browser interaction. Annotations provide readOnlyHint=false (indicating mutation) and destructiveHint=false (no destruction), which are consistent. The description adds helpful context beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise with two short sentences. It front-loads the purpose and method without any redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity and lack of an output schema, the description is mostly complete. It explains the authentication mechanism and user interaction. However, it could briefly mention the expected result (e.g., session established) to be fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are no parameters, so schema coverage is 100%. The baseline for zero parameters is 4, and the description does not need to add parameter semantics. It correctly implies no inputs required.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's action ('Authenticate existing subscriber') and method ('via OAuth. Opens browser login.'). It is specific about the resource ('existing subscriber') and distinguishes it from sibling tools, none of which are authentication-related.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The use case is implied: use when authentication is needed. However, there is no explicit guidance on when not to use it or alternatives (e.g., check_connection might be related). The description lacks explicit usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
update_saved_searchUpdate Saved SearchAIdempotentInspect
Update a saved search. Modify query, filters, alert cadence, name, or quality settings. Can only update your own saved searches.
MODIFIABLE FIELDS: query, name, filters (same schema as save_search), cadence (weekly/daily/never), hidelow (quality filter), emailEnabled (on/off)
TIP: Call list_saved_searches first to see the current settings, then update only the fields that need to change. The response confirms what was updated.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Saved search ID to update | |
| name | No | New friendly name | |
| query | No | New search query text | |
| cadence | No | New alert frequency. daily requires Pro plan. never = turn email alerts off. | |
| filters | No | New filters (same schema as save_search filters). Replaces all existing filters. | |
| hidelow | No | Hide low-confidence results in alerts. | |
| emailEnabled | No | Enable or disable email alerts without changing cadence. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide idempotentHint=true and destructiveHint=false. The description adds ownership constraint and response confirmation, but omits the fact that updating filters replaces all existing filters (though this is in the schema). No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, front-loaded with the purpose, and includes a helpful tip. Every sentence adds value without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the absence of an output schema, the description notes the response confirms updates. It covers prerequisites and usage tips. However, it could mention that omitted fields remain unchanged, though this is inferred from the schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so baseline is 3. The description summarizes modifiable fields and notes filters follow save_search schema, adding marginal value. It does not provide additional constraints beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Update a saved search' and lists modifiable fields. It distinguishes from siblings like save_search (create) and list_saved_searches (list) by focusing on updating an existing search.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a tip to call list_saved_searches first and specifies that only your own saved searches can be updated. However, it does not explicitly mention when not to use this tool or alternatives like delete and recreate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!