GrantSonar
Server Details
Search verified-open US grants (federal, state, foundation). Read-only MCP for AI agents.
- 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 7 of 7 tools scored.
Each tool targets a distinct action: dismissing/restoring, fetching details, viewing individual applications, listing all applications, listing matches, saving/setting pipeline status, and searching. No two tools overlap in purpose.
All tools follow a consistent verb_noun pattern in snake_case, e.g., dismiss_grant, get_grant, search_grants. The naming is predictable and uniform.
With 7 tools covering search, detail retrieval, pipeline management, and application tracking, the count is appropriate for the domain. Slightly fewer than a full-featured system, but still well-scoped.
Core grant discovery and pipeline management are covered, but missing operations like creating an application, updating application drafts, or permanently removing pipeline entries. The surface is functional but has notable gaps.
Available Tools
9 toolsdismiss_grantADestructiveInspect
Dismiss a grant from YOUR active feed, or restore it (dismissed=false). Reversible. Requires your API key.
| Name | Required | Description | Default |
|---|---|---|---|
| grant_id | Yes | Grant UUID. | |
| dismissed | No | true = dismiss (default), false = restore. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide destructiveHint=true, but the description adds that the action is reversible and requires an API key, which expands the safety profile. This is valuable beyond what annotations alone convey.
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 unnecessary words. It front-loads the primary action and includes key qualifiers (reversible, requires API key).
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 toggle tool with two parameters and no output schema, the description covers the necessary behavioral context (reversible, auth requirement) and is sufficient for an agent to select and invoke correctly relative to siblings.
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 the description adds minimal value beyond the schema descriptions for grant_id and dismiss parameters. The 'Reversible' clue hints at the boolean nature, but essentially redundant.
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 (dismiss or restore) and the specific resource (grant from YOUR active feed). It distinguishes from sibling tools like get_grant (read-only) and save_grant (likely different mutation).
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 context (your active feed) and mentions the need for an API key. However, it does not explicitly compare with siblings or state when not to use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
draft_application_sectionADestructiveInspect
Generate an AI first-draft for one section of YOUR application, grounded in the funding notice and your org profile, and save it into that section (prior content snapshotted first). Requires a paid API key. This is the only tool that runs the grant writer, so it is metered heavily. Returns the drafted text. Use get_my_application for section_keys.
| Name | Required | Description | Default |
|---|---|---|---|
| section_key | Yes | Which section to draft (see get_my_application). | |
| document_type | No | Draft a short Letter of Inquiry ("loi") or a full section ("full"). Defaults to the application's submission stage. | |
| application_id | Yes | Application UUID. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate destructiveHint: true and readOnlyHint: false. The description adds value by specifying that prior content is snapshotted before saving, that it returns drafted text, and that it is metered. 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 front-loaded with the main purpose and is concise—only a few sentences, each providing necessary information without redundancy. Efficient and clear.
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 complex tool (AI draft generation), the description covers inputs (application_id, section_key, document_type), process (grounds in funding notice and org profile, saves, snapshots), outputs (returns drafted text), and prerequisites (paid API key, metering). No output schema, but returned text is described. Complete given the 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?
Schema coverage is 100% (all 3 parameters described in schema). The description adds context beyond schema: it explains section_key comes from get_my_application and document_type defaults based on submission stage. This enhances understanding.
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 generates an AI draft for one section of an application, saves it, and snapshots prior content. It distinguishes itself from siblings by noting it's the only tool that runs the grant writer and is metered heavily, and directs users to get_my_application for section keys.
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 tells when to use the tool (to draft a section) and prerequisites (paid API key). It warns about heavy metering and provides a pointer to get_my_application for section keys. However, it could explicitly state when not to use it (e.g., for manual edits) but overall guidance is strong.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_grantARead-onlyInspect
Fetch the full detail of a single grant opportunity by its GrantSonar grant_id (UUID), including synopsis, eligibility, deadlines, and award amounts.
| Name | Required | Description | Default |
|---|---|---|---|
| grant_id | Yes | GrantSonar grant UUID (from a search_grants result). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=true, and destructiveHint=false, indicating a safe read operation. The description adds value by specifying the content of the response (synopsis, eligibility, deadlines, award amounts), which complements the annotations 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 a single sentence of 20 words, front-loading the purpose and including key return fields. It is efficient and contains no unnecessary 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 (one parameter, no output schema), the description fully covers the purpose, input identification, and output fields. The sibling tool 'search_grants' provides context for related functionality.
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 100% coverage and describes grant_id as 'GrantSonar grant UUID (from a search_grants result).' The tool description repeats similar wording but adds no new semantic meaning beyond what the schema provides.
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 'Fetch', the resource 'single grant opportunity', the identifier 'GrantSonar grant_id (UUID)', and the specific fields returned (synopsis, eligibility, deadlines, award amounts). This distinguishes it from the sibling tool 'search_grants' which is for searching multiple grants.
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 when you have a specific grant_id and need full details. It mentions the ID originates from search_grants, providing context. However, it does not explicitly state when not to use it or list alternatives beyond the sibling tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_my_applicationARead-onlyInspect
Fetch one of YOUR grant applications (status + every section draft) by application_id or grant_id. Requires your API key.
| Name | Required | Description | Default |
|---|---|---|---|
| grant_id | No | Grant UUID — resolves your application for that grant. | |
| application_id | No | Application UUID. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true, and the description adds that the tool requires an API key and returns status plus section drafts. This provides useful behavioral context beyond the annotations, though no details on rate limits or error handling.
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?
Single, well-structured sentence that front-loads the verb and resource. No extraneous words or details. Every word earns its place.
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 lack of output schema, the description specifies that the tool returns 'status and every section draft', which is sufficient for a simple fetch tool. Slight gaps in error or edge-case behavior, but acceptable for this 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?
Schema coverage is 100%, so the schema already describes both parameters. The description mentions using 'application_id or grant_id' but does not add further meaning, format, or constraints beyond what the schema provides.
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 'Fetch one of YOUR grant applications' with specific verb and resource, and distinguishes from siblings by noting it returns 'status + every section draft' and requires an application_id or grant_id.
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 use for fetching a single application by ID, but does not explicitly state when to use this tool versus alternatives like 'list_my_applications' or 'get_grant'. No negative guidance or context for exclusion.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_my_applicationsARead-onlyInspect
List YOUR organization's grant applications (id, grant title, status, document type, last updated). Requires your API key.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint=true), the description adds valuable context: it is scoped to the user's organization and requires an API key. This clarifies access and data scope, though it could mention that no modifications are made.
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 concise sentence that front-loads the key purpose and details. Every word adds value, with 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?
Given the simple nature (no parameters, no output schema, annotations present), the description adequately covers the tool's behavior. It could mention potential pagination or listing limits, but overall it is sufficient for an agent to understand the 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?
With zero parameters and 100% schema coverage, the description adds meaning by specifying the output fields and scope. Baseline for no parameters is 4, and the description meets that by explaining what the tool returns.
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: listing the user's own organization's grant applications, with specific fields (id, grant title, status, document type, last updated). It distinguishes itself from sibling tools like 'search_grants' or 'list_my_matches' by focusing on the user's applications.
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 context (list your applications) but does not provide explicit guidance on when to use this tool versus alternatives, nor does it state when not to use it. The requirement for an API key is noted but not elaborated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_my_matchesARead-onlyInspect
List YOUR organization's scored grant matches — the same personalized matches shown on your GrantSonar dashboard. Requires your API key. Returns match tier, score, reasons, pipeline status, and a URL per grant.
| Name | Required | Description | Default |
|---|---|---|---|
| tier | No | Optional: only return matches in this tier. | |
| view | No | Which list (default "matches" = your active personalized feed). | |
| limit | No | Max results (default 25). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds valuable context beyond annotations: returns match tier, score, reasons, pipeline status, URL per grant. Annotations already indicate readOnly and non-destructive, so 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?
Two efficient sentences: first states purpose, second lists return fields and requirement. No fluff.
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?
Returns fields are listed, but could explicitly state that it returns a list/array. Otherwise complete for a simple list tool with no output 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 coverage is 100% with clear descriptions for all 3 parameters. Description does not add new parameter info beyond what schema provides, so baseline 3 applies.
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 action (list), resource (scored grant matches), and scope (your organization's, personalized dashboard). Distinguishes from siblings like search_grants and list_my_applications.
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?
Mentions API key requirement for usage. Could contrast with search or other list tools explicitly, but context is clear from sibling names.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
save_grantAInspect
Save a grant to YOUR pipeline, or set its status to pursuing/applied. Reversible. Requires your API key. Mirrors the dashboard Save button.
| Name | Required | Description | Default |
|---|---|---|---|
| status | No | Pipeline status (default "saved"). | |
| grant_id | Yes | Grant UUID (from list_my_matches or search_grants). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate a write operation (readOnlyHint=false) and non-destructive (destructiveHint=false). The description adds that it is reversible and requires an API key, providing useful behavioral 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?
Three sentences, no fluff. Each sentence adds value: action statement, key properties (reversible, API key required), and a recognizable analogy. Front-loaded with the core 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?
For a simple write tool with two parameters and no output schema, the description covers purpose, reversibility, authentication, and a UI analogy. It could mention error conditions but still fairly 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?
Schema coverage is 100%, so both parameters are described in the schema. The description mentions setting status (pursuing/applied) but does not add meaning beyond what the schema already provides.
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 'Save' and the resource 'a grant', distinguishing it from siblings like dismiss_grant, get_grant, and list tools. It also notes it mirrors the dashboard Save button, providing a recognizable analogy.
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 explains when to use it: to save a grant or set its status to pursuing/applied. It does not explicitly contrast with alternatives, but the sibling tools have distinct purposes, so usage is clear enough.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_grantsARead-onlyInspect
Search open grant opportunities in the GrantSonar corpus (federal, state, and foundation grants). Uses semantic similarity over a plain-English description of the project or need, with a keyword fallback. Returns title, agency, deadline, award amounts, similarity score, and a GrantSonar URL per hit.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of results (1-25, default 10). | |
| query | Yes | Plain-English description of the project, organization, or funding need (e.g. "after-school STEM programs for rural Missouri students"). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and openWorldHint. The description adds value by explaining the search algorithm (semantic similarity, keyword fallback) and listing return fields. No contradictions. Could mention rate limits or pagination, but it's informative.
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 with no waste. First sentence states purpose and scope, second explains method and return fields. Clearly 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?
Given no output schema, the description lists return fields (title, agency, deadline, award amounts, similarity score, URL) and explains the algorithm. Lacks pagination details or default limit behavior, but sufficient 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 covers both parameters with descriptions (100% coverage). The description reiterates the query as 'plain-English description' but adds little beyond schema. 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 the tool searches open grant opportunities using semantic similarity with keyword fallback, specifying the corpus (federal, state, foundation). It distinguishes from sibling 'get_grant' by focusing on search rather than retrieval of a specific grant.
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 explains when to use the tool (searching via natural language description) but does not explicitly state when not to use it or mention alternatives like 'get_grant' for specific grants. The context is clear but could be more direct.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
update_application_sectionADestructiveInspect
Write content into one section of YOUR grant application (replace or append). Requires your API key. The prior draft is snapshotted to version history first, so this is recoverable. Use get_my_application to see section_keys.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | replace (default) overwrites; append adds to the end. | |
| content | Yes | The text/HTML to write into the section. | |
| section_key | Yes | Which section to write (e.g. "statement_of_need"). See get_my_application. | |
| application_id | Yes | Application UUID (from list_my_applications). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate destructiveHint=true, and description adds context about version history snapshots making changes recoverable, and the requirement of an API key. 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?
Three concise sentences deliver purpose, mode options, and key context 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?
Covers purpose, modes, version recovery, auth requirement, and prerequisite lookup. Could mention response confirmation but is sufficient for 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?
Schema covers all 4 parameters with descriptions (100% coverage). Description adds minimal extra meaning, mainly hinting at get_my_application for section_key.
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 writes content into a specific section of the user's grant application, with replace or append modes. It distinguishes itself by mentioning user-specificity and recovery, but does not explicitly contrast with the sibling tool draft_application_section.
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 prerequisite (use get_my_application to see section_keys) and notes recoverability, but lacks explicit guidance on when to use this tool versus alternatives like draft_application_section.
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!