CommonGrants Grant Seeker
БесплатноНе проверенAn MCP server that searches grant opportunities across multiple CommonGrants-compliant APIs from a single set of tools.
Описание
An MCP server that searches grant opportunities across multiple CommonGrants-compliant APIs from a single set of tools.
README
An MCP server that searches grant opportunities across multiple CommonGrants-compliant APIs from a single set of tools. Ask an MCP client (Claude, ChatGPT, the MCP Inspector, …) to "find workforce development grants" and it fans out across every registered source and returns combined, labeled results.
Ships with three sources out of the box:
| Source | URL | Auth |
|---|---|---|
| federal — Simpler.Grants.gov | https://api.simpler.grants.gov |
API key (FEDERAL_API_TOKEN) |
| pa — Pennsylvania | https://pa.api.cg.a6lab.ai |
none |
| ca — California | https://ca.api.cg.a6lab.ai |
none |
Because they all speak CommonGrants, the same tools work against any additional source you register.
Tools
| Tool | What it does |
|---|---|
list_grant_sources |
Lists the registered CommonGrants sources |
search_opportunities |
Searches one source, or fans out across all when source is omitted |
get_opportunity |
Fetches a single opportunity by ID from a named source |
All tools are read-only and carry the MCP annotations (readOnlyHint,
openWorldHint) the Claude and OpenAI marketplaces require.
Quick start (local, stdio)
corepack enable
pnpm install
export FEDERAL_API_TOKEN="your-simpler-grants-key" # optional; PA + CA are public
pnpm start
Then connect it to a client — see DEVELOPMENT.md for the Claude Desktop config and the MCP Inspector. A single-file, copy-paste demo also lives outside this repo for zero-setup demos.
Configuration
The default registry (federal/pa/ca) is defined in
src/config/defaults.ts. To add your own sources or
supply your own credentials, create a commongrants-mcp.config.ts in your
working directory (or point CG_MCP_CONFIG at one):
import { defineConfig } from '@common-grants/mcp-grant-seeker/config';
export default defineConfig({
sources: [
{ name: 'ca', label: 'California', baseUrl: 'https://ca.api.cg.a6lab.ai' },
{
name: 'my-foundation',
label: 'My Foundation',
baseUrl: 'https://grants.example.org',
auth: { type: 'bearer', token: process.env.MY_FOUNDATION_TOKEN },
},
],
});
See examples/commongrants-mcp.config.ts for the full annotated example.
Architecture
src/
├── core/ # transport- & host-agnostic: ICommonGrantsClient seam,
│ │ # SDK-backed client, tool registration, formatting
│ ├── client.ts # the ONLY file that touches @common-grants/sdk
│ ├── tools.ts # list_grant_sources / search_opportunities / get_opportunity
│ ├── server.ts # createServer(sources) → wired McpServer
│ └── format.ts
├── config/ # data-driven source registry (types, Zod schema,
│ # defineConfig, defaults, jiti loader)
├── stdio.ts # local entrypoint (Claude Desktop, Inspector, self-hosters)
└── worker.ts # remote entrypoint — Cloudflare Workers (Phase 2 stub)
The server depends on an ICommonGrantsClient interface, not on the SDK
directly, so SDK upgrades stay isolated to one file. Domain types are derived
from the installed SDK so they never drift. See
docs/adr/001-architecture.md.
Hosting & marketplaces
Both the Claude Connectors Directory and the OpenAI Apps SDK require a remote, HTTPS-hosted server; a single hosted URL is submitted to both. Because grant search is public, read-only data, the hosted server holds one server-side federal key and needs no per-user OAuth — users connect with zero config. The stdio server here is for local/self-hosted use. The remote Cloudflare Workers server is Phase 2 — see docs/adr/002-hosting-and-distribution.md.
Scripts
| Script | Purpose |
|---|---|
pnpm start / pnpm run dev |
Run the stdio server (dev watches for changes) |
pnpm test / pnpm run test:coverage |
Run unit tests |
pnpm run checks |
Lint + format + typecheck |
pnpm run ci |
Full CI sequence (types + checks + build + test) |
pnpm run deploy |
Deploy the remote Worker (Phase 2) |
Contributing
See CONTRIBUTING.md and DEVELOPMENT.md. Licensed under MIT.
Установка CommonGrants Grant Seeker
У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.
▸ github.com/agilesix/cg-mcp-grant-seekerFAQ
CommonGrants Grant Seeker MCP бесплатный?
Да, CommonGrants Grant Seeker MCP бесплатный — установка в пару кликов через Unyly без оплаты.
Нужен ли API-ключ для CommonGrants Grant Seeker?
Нет, CommonGrants Grant Seeker работает без API-ключей и переменных окружения.
CommonGrants Grant Seeker — hosted или self-hosted?
Self-hosted: сервер запускается локально на твоей машине командой из раздела установки.
Как установить CommonGrants Grant Seeker в Claude Desktop, Claude Code или Cursor?
Открой CommonGrants Grant Seeker на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.
Похожие MCP
GitHub
PRs, issues, code search, CI status
автор: GitHubFilesystem
Secure file operations with configurable access controls.
Memory
Knowledge graph-based persistent memory system.
Template MCP Server
A CLI tool to create a new Model Context Protocol server project with TypeScript support, dual transport options, and an extensible structure
автор: mcpdotdirectCompare CommonGrants Grant Seeker with
Не уверен что выбрать?
Найди свой стек за 60 секунд
Автор?
Embed-бейдж для README
Похожее
Все в категории development
