SummitFlow MCP
Grant management tools for AI agents. Plan backward from a funder deadline, count business days around federal holidays, build a grant budget with indirect on the correct base, and value volunteer and in-kind contributions.
No API key. No account. No network calls. Every tool is a pure function.
Web versions of these tools live at summitflow.co/tools.
Install
Claude Desktop — add to claude_desktop_config.json:
{
"mcpServers": {
"summitflow": {
"command": "uvx",
"args": ["summitflow-mcp"]
}
}
}
Or pip install summitflow-mcp. No environment variables required.
Tools
| Tool | What it does |
|---|---|
grant_deadline_plan |
Works backward from a deadline to start-drafting, internal-review and packet-complete dates |
grant_lead_times |
The lead times behind that plan, with the reasoning for each |
business_days_between |
Business days between two dates, skipping weekends and US federal holidays |
add_business_days |
Add or subtract business days from a date |
federal_holidays |
US federal holidays for a year, with observed dates |
grant_budget |
Full budget with fringe and indirect calculated on MTDC or TDC |
volunteer_time_value |
Volunteer hours valued at the published national rate |
in_kind_value |
Totals donated goods and services at fair market value |
summitflow_resources |
Free templates, guides and calculators on the web |
Why the details matter
Indirect goes on the right base. grant_budget defaults to Modified Total
Direct Cost, which excludes equipment and the portion of each contract above the
first $25,000. Applying your rate to total direct costs instead is the most
common budget error and it inflates the ask in a way reviewers notice. The tool
reports which base it used and what it excluded.
Observed holiday dates, not nominal ones. A federal holiday falling on a Saturday closes offices the Friday before. For a deadline calculation that is the difference between submitting on time and submitting late, so all the date math uses observed dates.
The volunteer rate is cited, not invented. volunteer_time_value defaults
to Independent Sector's published national value of volunteer time (2025), and
says so in its output, because a match figure you cannot source is a figure you
cannot defend. Skilled volunteers doing professional work should be valued at
the rate for that work instead.
Deadlines are not plans. grant_deadline_plan returns three earlier dates
because those are the ones that go on a calendar with a person's name attached.
The deadline itself should be uneventful.
Development
git clone https://github.com/RyanKramer/summitflow-mcp
cd summitflow-mcp
pip install -e .
summitflow-mcp
About
Built by SummitFlow — the grant deadline safety net for small nonprofits. Free templates, guides and calculators.
MIT licensed.
Release files for summitflow-mcp 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| summitflow_mcp-0.1.0.tar.gz | 8.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| summitflow_mcp-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 17.2 kB
Release files / summitflow_mcp-0.1.0.tar.gz
| Download URL | summitflow_mcp-0.1.0.tar.gz |
|---|---|
| Size | 8.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b5315bce0cc5ee70a62b5031280ff66a5f5ba5be7683bb80b786466b237e14df
|
|
BLAKE2b-256 checksum How to use checksums |
f89d709e202bf9b956db74d599c4dc3dd90bee5675eb4af1b179ca7b45071815
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.8
|
Release files / summitflow_mcp-0.1.0-py3-none-any.whl
| Download URL | summitflow_mcp-0.1.0-py3-none-any.whl |
|---|---|
| Size | 9.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
0ae7b57da2428dbf541e1287c58a30d38fbf53320ba0559cacfe3e22657ff525
|
|
BLAKE2b-256 checksum How to use checksums |
e6f161058fb082cff231aae4dd68291af290e84c6ed404f13230421d80353391
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.8
|