search_grants
Search Grants.gov for funding opportunities.
limitagencystatuskeywordamount_maxamount_min
io.github.bch1212由 GitHub 账号 bch1212 发布v1.0.3更新于 Oct 24, 2026
Search US grants + federal contracts (Grants.gov + SAM.gov) from any LLM.
发布方自己的服务:GrantIQ
远程 MCP 服务器,让助手检索美国联邦资助(Grants.gov)与合同(SAM.gov)机会、按机构画像匹配,并跟踪截止日期。
Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。
把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。
阅读 https://sourceweft.com/mcp/io.github.bch1212%2Fmcp-grantiq/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。把它添加到你客户端的 mcpServers 配置中。
{
"mcpServers": {
"grantiq": {
"type": "http",
"url": "https://mcp.grantiq.us/mcp/",
"headers": {
"X-API-Key": "<YOUR_API_KEY>"
}
}
}
}A paid MCP server that gives AI agents instant, structured access to every open US federal grant and contract opportunity. Backed by Grants.gov + SAM.gov, with 24-hour SQLite caching, per-key daily limits, and a Stripe-friendly upgrade hook.
https://mcp.grantiq.us/mcp/
Title: GrantIQ MCP — US Federal Grants & Contracts for AI Agents
Subtitle: Search, match, and monitor every open SAM.gov and Grants.gov opportunity from any LLM, in one tool call.
GrantIQ MCP turns the messy world of US government funding into a clean, agent-ready API. Eight typed tools cover everything from broad keyword search and NAICS-coded contract discovery to deadline radar and historical award lookups. Responses are normalized across both data sources, returned as plain JSON, and cached for 24 hours so repeat queries don't burn rate limit on the upstream agencies.
Built for procurement copilots, grant-finder agents, and B2G sales tools, GrantIQ MCP ships with a free tier (50 calls/day) that any developer can drop into Claude or Cursor in 15 seconds. Upgrade to Pro for $19/mo for unlimited calls, or pay $0.02 per call for bursty workloads — billing flips a key from free to pro via a single webhook, with no app rewrites required.
Then add the API key Claude should use:
There is no shared public key. Mint one with the admin endpoint below (free tier is 50 calls/day) and store it in the client config or an environment variable.
Every tool returns either:
or, on failure:
When the daily limit is hit, the HTTP layer returns 429 with body:
The MCP endpoint speaks the JSON-RPC streamable-HTTP protocol and is best used through an MCP client. For convenience, every tool also has a REST mirror at /tools/<tool>.
Mint a fresh key (free or pro):
Promote a free key to pro (called from the Stripe checkout success webhook):
The repo includes nixpacks.toml. After railway init, just railway up. The start command is python server.py (not uvicorn ...) because Railway exec's [start].cmd without a shell — server.py reads $PORT via os.getenv and starts uvicorn programmatically.
Set these on the Railway service:
SAM_API_KEY — your SAM.gov key (contract tools fail closed without it)GRANTIQ_ADMIN_TOKEN — long random string, required at startupGRANTIQ_DB_PATH — /data/grantiq.db if you mount a Volume (recommended so cache + keys survive deploys)A ready-to-run deploy.sh is in this directory.
ptype=a (Award Notice). For deeper award analytics (CFDA-level totals, recipient rollups), USAspending.gov is more appropriate and would be a v2 add./admin/keys to mint a key that bypasses cache (not yet exposed — see TODO)./billing/upgrade). The MCP server doesn't host the checkout page itself — that lives on the marketing site.来源:README.md,提交 6dfd8f3
Search Grants.gov for funding opportunities.
limitagencystatuskeywordamount_maxamount_minFetch the full grant record for a Grants.gov opportunity id.
opportunity_id必填Search SAM.gov for federal contract opportunities.
limitagencykeywordset_asidenaics_codeFetch the full SAM.gov contract record for a notice id.
notice_id必填Return the top ~10 grants + contracts matched to an org profile.
org_typefocus_areasorg_description必填List agencies with currently-open opportunities.
typeReturn grants whose response deadline is within `days_ahead` days.
days_aheadSearch past SAM.gov contract awards.
yearagencyrecipient_name已满足适用检查项的 90%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
请在仓库或注册中心条目中声明许可证。
claude mcp add grantiq-mcp --url https://mcp.grantiq.us/mcp/claude mcp env grantiq-mcp X-API-Key=your-api-key{ "success": true, "cached": false, "data": { ... } }{ "success": false, "error": "..." }{ "error": "Limit reached. Upgrade at mcpize.com/grantiq-mcp" }# Search grantscurl -s https://mcp.grantiq.us/tools/search_grants \ -H 'Content-Type: application/json' \ -H 'X-API-Key: your-api-key' \ -d '{"keyword":"renewable energy","limit":5}'
# Get grant detailscurl -s https://mcp.grantiq.us/tools/get_grant_details \ -H 'Content-Type: application/json' \ -H 'X-API-Key: your-api-key' \ -d '{"opportunity_id":"345678"}'
# Search SAM.gov contracts (cyber, small-business set-aside)curl -s https://mcp.grantiq.us/tools/search_contracts \ -H 'Content-Type: application/json' \ -H 'X-API-Key: your-api-key' \ -d '{"keyword":"cybersecurity","set_aside":"SBA","limit":5}'
# Get contract detailscurl -s https://mcp.grantiq.us/tools/get_contract_details \ -H 'Content-Type: application/json' \ -H 'X-API-Key: your-api-key' \ -d '{"notice_id":"abc123"}'
# Match opportunities to an org profilecurl -s https://mcp.grantiq.us/tools/match_opportunities \ -H 'Content-Type: application/json' \ -H 'X-API-Key: your-api-key' \ -d '{"org_description":"Battery storage R&D startup","org_type":"for-profit","focus_areas":["energy","battery","storage"]}'
# Top agencies right nowcurl -s https://mcp.grantiq.us/tools/get_agencies \ -H 'Content-Type: application/json' \ -H 'X-API-Key: your-api-key' \ -d '{"type":"both"}'
# Deadlines in the next 14 dayscurl -s https://mcp.grantiq.us/tools/get_deadlines \ -H 'Content-Type: application/json' \ -H 'X-API-Key: your-api-key' \ -d '{"days_ahead":14}'
# Past award historycurl -s https://mcp.grantiq.us/tools/search_awards \ -H 'Content-Type: application/json' \ -H 'X-API-Key: your-api-key' \ -d '{"recipient_name":"Acme Corp","year":2025}'curl -s https://mcp.grantiq.us/admin/keys \ -H 'X-Admin-Token: $GRANTIQ_ADMIN_TOKEN' \ -H 'Content-Type: application/json' \ -d '{"tier":"free","daily_limit":50}'curl -s https://mcp.grantiq.us/billing/upgrade \ -H 'X-Admin-Token: $GRANTIQ_ADMIN_TOKEN' \ -H 'Content-Type: application/json' \ -d '{"key":"grantiq_xxxxx"}'python -m venv .venv && source .venv/bin/activatepip install -r requirements.txtcp .env.example .env# Replace the placeholders, then export them. The process refuses to start# until GRANTIQ_ADMIN_TOKEN is a real value (not the example placeholder).set -a && source .env && set +apython server.py # http://localhost:8000pytest -v # 31 tests, hermetic with respx mocks