SACS.ai MCP — California School District Financial Data
Measured conclusion: Deep-tested. L2 outcome: tools_ok.
SACS California school finance: public district financial data, CDE filings, comparisons, briefings.
| Author | ai.sacs |
|---|---|
| Access | remote |
| Publisher key required | No |
| Measured state | Deep-tested |
| L1 liveness | alive |
| L1 latency | 264 ms |
| Last measured | 2026-10-24 |
Add to your agent
Copy this into your MCP client config:
{
"mcpServers": {
"SACS.ai MCP — California School District Financial Data": {
"url": "https://mcp.sacs.ai/mcp",
"transport": "streamable-http"
}
}
}
Measured tools (12)
sacs_search_districtsread-onlySearch current public California districts by name, 7-digit LEA, or 14-digit CDS. Omit query or pass an empty string to browse all current districts. Follow page.next_offset while page.has_more is true; pages contain at most 50 rows.
Parameters:
limit— integerquery— stringoffset— integerclient_id
Hints: read-only yes · destructive no · idempotent yes · open-world no
sacs_list_public_datasetsread-onlyList versioned official public SACS datasets for one district.
Parameters:
district_identifier(required) — stringlimit— integeroffset— integerclient_id
Hints: read-only yes · destructive no · idempotent yes · open-world no
sacs_query_attendanceread-onlyReturn recovered Form A ADA observations for one official district filing.
Parameters:
district_identifier(required) — stringdataset_ref(required) — stringlimit— integeroffset— integerclient_id
Hints: read-only yes · destructive no · idempotent yes · open-world no
sacs_query_financial_summaryread-onlyReturn bounded aggregate financial summaries for one explicit official dataset.
Parameters:
district_identifier(required) — stringdataset_ref(required) — stringclient_idgroup_limit— integerfund_code_maxfund_code_mingoal_code_maxgoal_code_minobject_code_maxobject_code_minfunction_code_maxfunction_code_minresource_code_maxresource_code_mininclude_zero_categories— boolean — Include zero-amount object category and group rows.
Hints: read-only yes · destructive no · idempotent yes · open-world no
sacs_compare_districtsread-onlyCompare deterministic object-category totals for two explicit official datasets.
Parameters:
base_district_identifier(required) — stringbase_dataset_ref(required) — stringcompare_district_identifier(required) — stringcompare_dataset_ref(required) — stringclient_idfund_codesresource_codes
Hints: read-only yes · destructive no · idempotent yes · open-world no
sacs_district_context_packread-onlyBuild fiscal-distress rows with source filing details. Deficit spending is signed net operating result / expenditure; negative means deficit.
Parameters:
district_identifier(required) — stringbasis— stringdetail— stringclient_idfund_codesfiscal_year_maxfiscal_year_minone_time_resource_codesinclude_balance_sheet_from_actuals— boolean
Hints: read-only yes · destructive no · idempotent yes · open-world no
sacs_district_context_pack_batchread-onlyBuild bounded district packs with source filing details. Deficit spending is signed net operating result / expenditure; negative means deficit.
Parameters:
district_identifiers(required) — arraybasis— stringdetail— stringclient_idfund_codesfiscal_year_maxfiscal_year_minone_time_resource_codesinclude_balance_sheet_from_actuals— boolean
Hints: read-only yes · destructive no · idempotent yes · open-world no
sacs_explain_coderead-onlyExplain current public fund, resource, goal, function, or object codes.
Parameters:
code_type(required) — stringquery(required) — stringlimit— integeroffset— integerclient_id
Hints: read-only yes · destructive no · idempotent yes · open-world no
sacs_search_csamread-onlySearch California School Accounting Manual (CSAM 2024) by keywords and topic, procedure number or a returned chunk_id. Use chunk_id with direction=previous or next and limit (1–10) to read adjacent source chunks within the same procedure; navigation.continuation supplies the next request. Results include extracted text plus Markdown with conservative code-definition/journal tables, topic path, procedure revision, printed/PDF page and a CDE PDF citation. All non-stopword keywords must match; topic filters heading words. Use short accounting terms rather than a long question. Read citations for surrounding tables/context; later correspondence is excluded. No login or model-provider key required.
Parameters:
limit— integerquery— stringtopicoffset— integerchunk_idclient_iddirection— stringprocedure
Hints: read-only yes · destructive no · idempotent yes · open-world no
sacs_get_csam_relatedread-onlyRetrieve related CSAM 2024 sections/content using its source-evidenced knowledge graph. Start with a procedure number, a chunk_id from sacs_search_csam, a returned node_id, or short heading/code/glossary keywords (exactly one selector). Defaults to explicit references in both directions. Choose relations contains/in_procedure for hierarchy, defines/mentions for code or glossary connections, within_range for numeric code membership, or next for source adjacency; depth 1–2. Every result explains its evidence path and returns at most one cited text/Markdown chunk; representative content is partial. Query node_id=csam:2024:manual with relations=[contains] to browse structure. Use include_content=false for topology-only pages. No database/model calls or paid entitlement required.
Parameters:
depth— integerlimit— integerquery— stringoffset— integernode_idchunk_idclient_iddirection— stringprocedurerelations— arraynode_kinds— arrayinclude_content— boolean
Hints: read-only yes · destructive no · idempotent yes · open-world no
sacs_register_clientOptionally register this MCP installation. Before calling, tell the operator registration is voluntary, data access works without it, list the fields to be stored, and obtain consent. Never infer or submit personal or confidential information.
Parameters:
consent_to_store(required) — boolean — Must be true, and only after the operator accepts the disclosed storage.use_caseclient_iduser_typeagent_clienthome_district_cds
Hints: read-only no · destructive no · idempotent no · open-world no
sacs_submit_feedbackReport a wrong, stale, incomplete, or failed result, or send a feature request. Ask the operator to report issues here; explain the exact fields and submit only with consent. Include request ID and data version when available. Anonymous feedback is welcome. Never include personal, student, personnel, or confidential information.
Parameters:
sentiment(required) — stringmessage(required) — stringclient_idfeedback_type— stringrelated_request_idrelated_data_version
Hints: read-only no · destructive no · idempotent no · open-world no
Measured by MCPYP probing. Untested fields are omitted, never estimated. Listing is always free; MCPYP never proxies calls or stores user tokens.