MCP 服务器

SACS.ai MCP — California School District Financial Data

ai.sacs/sacs-mcp
数据与分析 教育 公开且可连接 MCP 2025-11-25

此 MCP 可以做什么

Queries, compares, and contextualizes official California school district financial datasets and explains public SACS accounting codes.

sacs_compare_districts
Compare deterministic object-category totals for two explicit official datasets.
只读 幂等
输入模式
{'type': 'object', 'title': 'sacs_compare_districtsArguments', 'required': ['base_district_identifier', 'base_dataset_ref', 'compare_district_identifier', 'compare_dataset_ref'], 'properties': {'client_id': {'anyOf': [{'type': 'string', 'pattern': '^sacs_client_[0-9a-f]{32}$'}, {'type': 'null'}], 'title': 'Client Id', 'default': None}, 'fund_codes': {'anyOf': [{'type': 'array', 'items': {'type': 'string', 'pattern': '^[0-9]{2}$', 'description': 'Two-digit SACS fund code'}, 'maxItems': 20}, {'type': 'null'}], 'title': 'Fund Codes', 'default': None}, 'resource_codes': {'anyOf': [{'type': 'array', 'items': {'type': 'string', 'pattern': '^[0-9]{4}$'}, 'maxItems': 20}, {'type': 'null'}], 'title': 'Resource Codes', 'default': None}, 'base_dataset_ref': {'type': 'string', 'title': 'Base Dataset Ref', 'pattern': '^official:[1-9][0-9]*$', 'maxLength': 64, 'minLength': 10}, 'compare_dataset_ref': {'type': 'string', 'title': 'Compare Dataset Ref', 'pattern': '^official:[1-9][0-9]*$', 'maxLength': 64, 'minLength': 10}, 'base_district_identifier': {'type': 'string', 'title': 'Base District Identifier', 'maxLength': 100, 'minLength': 2}, 'compare_district_identifier': {'type': 'string', 'title': 'Compare District Identifier', 'maxLength': 100, 'minLength': 2}}, 'additionalProperties': False}
输出模式
{'type': 'object', '$defs': {'PublicError': {'type': 'object', 'title': 'PublicError', 'required': ['code', 'message'], 'properties': {'code': {'enum': ['invalid_request', 'not_found', 'private_scope_denied', 'dataset_mismatch', 'payload_rejected', 'backend_unavailable'], 'type': 'string', 'title': 'Code'}, 'message': {'type': 'string', 'title': 'Message', 'maxLength': 500, 'minLength': 1}, 'retryable': {'type': 'boolean', 'title': 'Retryable', 'default': False}}, 'additionalProperties': False}, 'SourceProvenance': {'type': 'object', 'title': 'SourceProvenance', 'required': ['source', 'record_ref', 'description'], 'properties': {'source': {'type': 'string', 'title': 'Source', 'maxLength': 120, 'minLength': 1}, 'record_ref': {'type': 'string', 'title': 'Record Ref', 'maxLength': 160, 'minLength': 1}, 'description': {'type': 'string', 'title': 'Description', 'maxLength': 500, 'minLength': 1}}, 'additionalProperties': False}}, 'title': 'PublicToolResponse', 'required': ['data_version', 'request_id', 'ok'], 'properties': {'ok': {'type': 'boolean', 'title': 'Ok'}, 'data': {'anyOf': [{'type': 'object', 'additionalProperties': True}, {'type': 'null'}], 'title': 'Data', 'default': None}, 'error': {'anyOf': [{'$ref': '#/$defs/PublicError'}, {'type': 'null'}], 'default': None}, 'request_id': {'type': 'string', 'title': 'Request Id', 'maxLength': 128, 'minLength': 8}, 'limitations': {'type': 'array', 'items': {'type': 'string'}, 'title': 'Limitations', 'maxItems': 50}, 'data_version': {'type': 'string', 'title': 'Data Version', 'maxLength': 256, 'minLength': 1}, 'contract_version': {'type': 'string', 'const': 'sacs.mcp.v1', 'title': 'Contract Version', 'default': 'sacs.mcp.v1'}, 'source_provenance': {'type': 'array', 'items': {'$ref': '#/$defs/SourceProvenance'}, 'title': 'Source Provenance'}}, 'additionalProperties': False}
sacs_district_context_pack
Build fiscal-distress rows with source filing details. Deficit spending is signed net operating result / expenditure; negative means deficit.
只读 幂等
输入模式
{'type': 'object', 'title': 'sacs_district_context_packArguments', 'required': ['district_identifier'], 'properties': {'basis': {'enum': ['estimated_actuals', 'unaudited_actuals', 'adopted_budget', 'first_interim', 'second_interim'], 'type': 'string', 'title': 'Basis', 'default': 'estimated_actuals'}, 'detail': {'enum': ['summary', 'full'], 'type': 'string', 'title': 'Detail', 'default': 'full'}, 'client_id': {'anyOf': [{'type': 'string', 'pattern': '^sacs_client_[0-9a-f]{32}$'}, {'type': 'null'}], 'title': 'Client Id', 'default': None}, 'fund_codes': {'anyOf': [{'type': 'array', 'items': {'type': 'string', 'pattern': '^[0-9]{2}$', 'description': 'Inclusive two-digit SACS fund bound'}, 'maxItems': 2, 'minItems': 1}, {'type': 'null'}], 'title': 'Fund Codes', 'default': None}, 'fiscal_year_max': {'anyOf': [{'type': 'string', 'pattern': '^[0-9]{4}-[0-9]{2}$'}, {'type': 'null'}], 'title': 'Fiscal Year Max', 'default': None}, 'fiscal_year_min': {'anyOf': [{'type': 'string', 'pattern': '^[0-9]{4}-[0-9]{2}$'}, {'type': 'null'}], 'title': 'Fiscal Year Min', 'default': None}, 'district_identifier': {'type': 'string', 'title': 'District Identifier', 'maxLength': 100, 'minLength': 2}, 'one_time_resource_codes': {'anyOf': [{'type': 'array', 'items': {'type': 'string', 'pattern': '^[0-9]{4}$'}, 'maxItems': 50, 'minItems': 1}, {'type': 'null'}], 'title': 'One Time Resource Codes', 'default': None}, 'include_balance_sheet_from_actuals': {'type': 'boolean', 'title': 'Include Balance Sheet From Actuals', 'default': True}}, 'additionalProperties': False}
输出模式
{'type': 'object', '$defs': {'PublicError': {'type': 'object', 'title': 'PublicError', 'required': ['code', 'message'], 'properties': {'code': {'enum': ['invalid_request', 'not_found', 'private_scope_denied', 'dataset_mismatch', 'payload_rejected', 'backend_unavailable'], 'type': 'string', 'title': 'Code'}, 'message': {'type': 'string', 'title': 'Message', 'maxLength': 500, 'minLength': 1}, 'retryable': {'type': 'boolean', 'title': 'Retryable', 'default': False}}, 'additionalProperties': False}, 'SourceProvenance': {'type': 'object', 'title': 'SourceProvenance', 'required': ['source', 'record_ref', 'description'], 'properties': {'source': {'type': 'string', 'title': 'Source', 'maxLength': 120, 'minLength': 1}, 'record_ref': {'type': 'string', 'title': 'Record Ref', 'maxLength': 160, 'minLength': 1}, 'description': {'type': 'string', 'title': 'Description', 'maxLength': 500, 'minLength': 1}}, 'additionalProperties': False}}, 'title': 'PublicToolResponse', 'required': ['data_version', 'request_id', 'ok'], 'properties': {'ok': {'type': 'boolean', 'title': 'Ok'}, 'data': {'anyOf': [{'type': 'object', 'additionalProperties': True}, {'type': 'null'}], 'title': 'Data', 'default': None}, 'error': {'anyOf': [{'$ref': '#/$defs/PublicError'}, {'type': 'null'}], 'default': None}, 'request_id': {'type': 'string', 'title': 'Request Id', 'maxLength': 128, 'minLength': 8}, 'limitations': {'type': 'array', 'items': {'type': 'string'}, 'title': 'Limitations', 'maxItems': 50}, 'data_version': {'type': 'string', 'title': 'Data Version', 'maxLength': 256, 'minLength': 1}, 'contract_version': {'type': 'string', 'const': 'sacs.mcp.v1', 'title': 'Contract Version', 'default': 'sacs.mcp.v1'}, 'source_provenance': {'type': 'array', 'items': {'$ref': '#/$defs/SourceProvenance'}, 'title': 'Source Provenance'}}, 'additionalProperties': False}
sacs_district_context_pack_batch
Build bounded district packs with source filing details. Deficit spending is signed net operating result / expenditure; negative means deficit.
只读 幂等
输入模式
{'type': 'object', 'title': 'sacs_district_context_pack_batchArguments', 'required': ['district_identifiers'], 'properties': {'basis': {'enum': ['estimated_actuals', 'unaudited_actuals', 'adopted_budget', 'first_interim', 'second_interim'], 'type': 'string', 'title': 'Basis', 'default': 'estimated_actuals'}, 'detail': {'enum': ['summary', 'full'], 'type': 'string', 'title': 'Detail', 'default': 'summary'}, 'client_id': {'anyOf': [{'type': 'string', 'pattern': '^sacs_client_[0-9a-f]{32}$'}, {'type': 'null'}], 'title': 'Client Id', 'default': None}, 'fund_codes': {'anyOf': [{'type': 'array', 'items': {'type': 'string', 'pattern': '^[0-9]{2}$', 'description': 'Inclusive two-digit SACS fund bound'}, 'maxItems': 2, 'minItems': 1}, {'type': 'null'}], 'title': 'Fund Codes', 'default': None}, 'fiscal_year_max': {'anyOf': [{'type': 'string', 'pattern': '^[0-9]{4}-[0-9]{2}$'}, {'type': 'null'}], 'title': 'Fiscal Year Max', 'default': None}, 'fiscal_year_min': {'anyOf': [{'type': 'string', 'pattern': '^[0-9]{4}-[0-9]{2}$'}, {'type': 'null'}], 'title': 'Fiscal Year Min', 'default': None}, 'district_identifiers': {'type': 'array', 'items': {'type': 'string', 'maxLength': 100, 'minLength': 2}, 'title': 'District Identifiers', 'maxItems': 25, 'minItems': 1}, 'one_time_resource_codes': {'anyOf': [{'type': 'array', 'items': {'type': 'string', 'pattern': '^[0-9]{4}$'}, 'maxItems': 50, 'minItems': 1}, {'type': 'null'}], 'title': 'One Time Resource Codes', 'default': None}, 'include_balance_sheet_from_actuals': {'type': 'boolean', 'title': 'Include Balance Sheet From Actuals', 'default': True}}, 'additionalProperties': False}
输出模式
{'type': 'object', '$defs': {'PublicError': {'type': 'object', 'title': 'PublicError', 'required': ['code', 'message'], 'properties': {'code': {'enum': ['invalid_request', 'not_found', 'private_scope_denied', 'dataset_mismatch', 'payload_rejected', 'backend_unavailable'], 'type': 'string', 'title': 'Code'}, 'message': {'type': 'string', 'title': 'Message', 'maxLength': 500, 'minLength': 1}, 'retryable': {'type': 'boolean', 'title': 'Retryable', 'default': False}}, 'additionalProperties': False}, 'SourceProvenance': {'type': 'object', 'title': 'SourceProvenance', 'required': ['source', 'record_ref', 'description'], 'properties': {'source': {'type': 'string', 'title': 'Source', 'maxLength': 120, 'minLength': 1}, 'record_ref': {'type': 'string', 'title': 'Record Ref', 'maxLength': 160, 'minLength': 1}, 'description': {'type': 'string', 'title': 'Description', 'maxLength': 500, 'minLength': 1}}, 'additionalProperties': False}}, 'title': 'PublicToolResponse', 'required': ['data_version', 'request_id', 'ok'], 'properties': {'ok': {'type': 'boolean', 'title': 'Ok'}, 'data': {'anyOf': [{'type': 'object', 'additionalProperties': True}, {'type': 'null'}], 'title': 'Data', 'default': None}, 'error': {'anyOf': [{'$ref': '#/$defs/PublicError'}, {'type': 'null'}], 'default': None}, 'request_id': {'type': 'string', 'title': 'Request Id', 'maxLength': 128, 'minLength': 8}, 'limitations': {'type': 'array', 'items': {'type': 'string'}, 'title': 'Limitations', 'maxItems': 50}, 'data_version': {'type': 'string', 'title': 'Data Version', 'maxLength': 256, 'minLength': 1}, 'contract_version': {'type': 'string', 'const': 'sacs.mcp.v1', 'title': 'Contract Version', 'default': 'sacs.mcp.v1'}, 'source_provenance': {'type': 'array', 'items': {'$ref': '#/$defs/SourceProvenance'}, 'title': 'Source Provenance'}}, 'additionalProperties': False}
sacs_explain_code
Explain current public fund, resource, goal, function, or object codes.
只读 幂等
输入模式
{'type': 'object', 'title': 'sacs_explain_codeArguments', 'required': ['code_type', 'query'], 'properties': {'limit': {'type': 'integer', 'title': 'Limit', 'default': 20, 'maximum': 50, 'minimum': 1}, 'query': {'type': 'string', 'title': 'Query', 'maxLength': 80, 'minLength': 1}, 'offset': {'type': 'integer', 'title': 'Offset', 'default': 0, 'maximum': 500, 'minimum': 0}, 'client_id': {'anyOf': [{'type': 'string', 'pattern': '^sacs_client_[0-9a-f]{32}$'}, {'type': 'null'}], 'title': 'Client Id', 'default': None}, 'code_type': {'enum': ['fund', 'resource', 'goal', 'function', 'object'], 'type': 'string', 'title': 'Code Type'}}, 'additionalProperties': False}
输出模式
{'type': 'object', '$defs': {'PublicError': {'type': 'object', 'title': 'PublicError', 'required': ['code', 'message'], 'properties': {'code': {'enum': ['invalid_request', 'not_found', 'private_scope_denied', 'dataset_mismatch', 'payload_rejected', 'backend_unavailable'], 'type': 'string', 'title': 'Code'}, 'message': {'type': 'string', 'title': 'Message', 'maxLength': 500, 'minLength': 1}, 'retryable': {'type': 'boolean', 'title': 'Retryable', 'default': False}}, 'additionalProperties': False}, 'SourceProvenance': {'type': 'object', 'title': 'SourceProvenance', 'required': ['source', 'record_ref', 'description'], 'properties': {'source': {'type': 'string', 'title': 'Source', 'maxLength': 120, 'minLength': 1}, 'record_ref': {'type': 'string', 'title': 'Record Ref', 'maxLength': 160, 'minLength': 1}, 'description': {'type': 'string', 'title': 'Description', 'maxLength': 500, 'minLength': 1}}, 'additionalProperties': False}}, 'title': 'PublicToolResponse', 'required': ['data_version', 'request_id', 'ok'], 'properties': {'ok': {'type': 'boolean', 'title': 'Ok'}, 'data': {'anyOf': [{'type': 'object', 'additionalProperties': True}, {'type': 'null'}], 'title': 'Data', 'default': None}, 'error': {'anyOf': [{'$ref': '#/$defs/PublicError'}, {'type': 'null'}], 'default': None}, 'request_id': {'type': 'string', 'title': 'Request Id', 'maxLength': 128, 'minLength': 8}, 'limitations': {'type': 'array', 'items': {'type': 'string'}, 'title': 'Limitations', 'maxItems': 50}, 'data_version': {'type': 'string', 'title': 'Data Version', 'maxLength': 256, 'minLength': 1}, 'contract_version': {'type': 'string', 'const': 'sacs.mcp.v1', 'title': 'Contract Version', 'default': 'sacs.mcp.v1'}, 'source_provenance': {'type': 'array', 'items': {'$ref': '#/$defs/SourceProvenance'}, 'title': 'Source Provenance'}}, 'additionalProperties': False}
sacs_list_public_datasets
List versioned official public SACS datasets for one district.
只读 幂等
输入模式
{'type': 'object', 'title': 'sacs_list_public_datasetsArguments', 'required': ['district_identifier'], 'properties': {'limit': {'type': 'integer', 'title': 'Limit', 'default': 20, 'maximum': 50, 'minimum': 1}, 'offset': {'type': 'integer', 'title': 'Offset', 'default': 0, 'maximum': 500, 'minimum': 0}, 'client_id': {'anyOf': [{'type': 'string', 'pattern': '^sacs_client_[0-9a-f]{32}$'}, {'type': 'null'}], 'title': 'Client Id', 'default': None}, 'district_identifier': {'type': 'string', 'title': 'District Identifier', 'maxLength': 100, 'minLength': 2}}, 'additionalProperties': False}
输出模式
{'type': 'object', '$defs': {'PublicError': {'type': 'object', 'title': 'PublicError', 'required': ['code', 'message'], 'properties': {'code': {'enum': ['invalid_request', 'not_found', 'private_scope_denied', 'dataset_mismatch', 'payload_rejected', 'backend_unavailable'], 'type': 'string', 'title': 'Code'}, 'message': {'type': 'string', 'title': 'Message', 'maxLength': 500, 'minLength': 1}, 'retryable': {'type': 'boolean', 'title': 'Retryable', 'default': False}}, 'additionalProperties': False}, 'SourceProvenance': {'type': 'object', 'title': 'SourceProvenance', 'required': ['source', 'record_ref', 'description'], 'properties': {'source': {'type': 'string', 'title': 'Source', 'maxLength': 120, 'minLength': 1}, 'record_ref': {'type': 'string', 'title': 'Record Ref', 'maxLength': 160, 'minLength': 1}, 'description': {'type': 'string', 'title': 'Description', 'maxLength': 500, 'minLength': 1}}, 'additionalProperties': False}}, 'title': 'PublicToolResponse', 'required': ['data_version', 'request_id', 'ok'], 'properties': {'ok': {'type': 'boolean', 'title': 'Ok'}, 'data': {'anyOf': [{'type': 'object', 'additionalProperties': True}, {'type': 'null'}], 'title': 'Data', 'default': None}, 'error': {'anyOf': [{'$ref': '#/$defs/PublicError'}, {'type': 'null'}], 'default': None}, 'request_id': {'type': 'string', 'title': 'Request Id', 'maxLength': 128, 'minLength': 8}, 'limitations': {'type': 'array', 'items': {'type': 'string'}, 'title': 'Limitations', 'maxItems': 50}, 'data_version': {'type': 'string', 'title': 'Data Version', 'maxLength': 256, 'minLength': 1}, 'contract_version': {'type': 'string', 'const': 'sacs.mcp.v1', 'title': 'Contract Version', 'default': 'sacs.mcp.v1'}, 'source_provenance': {'type': 'array', 'items': {'$ref': '#/$defs/SourceProvenance'}, 'title': 'Source Provenance'}}, 'additionalProperties': False}
sacs_query_attendance
Return recovered Form A ADA observations for one official district filing.
只读 幂等
输入模式
{'type': 'object', 'title': 'sacs_query_attendanceArguments', 'required': ['district_identifier', 'dataset_ref'], 'properties': {'limit': {'type': 'integer', 'title': 'Limit', 'default': 20, 'maximum': 50, 'minimum': 1}, 'offset': {'type': 'integer', 'title': 'Offset', 'default': 0, 'maximum': 500, 'minimum': 0}, 'client_id': {'anyOf': [{'type': 'string', 'pattern': '^sacs_client_[0-9a-f]{32}$'}, {'type': 'null'}], 'title': 'Client Id', 'default': None}, 'dataset_ref': {'type': 'string', 'title': 'Dataset Ref', 'pattern': '^official:[1-9][0-9]*$', 'maxLength': 64, 'minLength': 10}, 'district_identifier': {'type': 'string', 'title': 'District Identifier', 'maxLength': 100, 'minLength': 2}}, 'additionalProperties': False}
输出模式
{'type': 'object', '$defs': {'PublicError': {'type': 'object', 'title': 'PublicError', 'required': ['code', 'message'], 'properties': {'code': {'enum': ['invalid_request', 'not_found', 'private_scope_denied', 'dataset_mismatch', 'payload_rejected', 'backend_unavailable'], 'type': 'string', 'title': 'Code'}, 'message': {'type': 'string', 'title': 'Message', 'maxLength': 500, 'minLength': 1}, 'retryable': {'type': 'boolean', 'title': 'Retryable', 'default': False}}, 'additionalProperties': False}, 'SourceProvenance': {'type': 'object', 'title': 'SourceProvenance', 'required': ['source', 'record_ref', 'description'], 'properties': {'source': {'type': 'string', 'title': 'Source', 'maxLength': 120, 'minLength': 1}, 'record_ref': {'type': 'string', 'title': 'Record Ref', 'maxLength': 160, 'minLength': 1}, 'description': {'type': 'string', 'title': 'Description', 'maxLength': 500, 'minLength': 1}}, 'additionalProperties': False}}, 'title': 'PublicToolResponse', 'required': ['data_version', 'request_id', 'ok'], 'properties': {'ok': {'type': 'boolean', 'title': 'Ok'}, 'data': {'anyOf': [{'type': 'object', 'additionalProperties': True}, {'type': 'null'}], 'title': 'Data', 'default': None}, 'error': {'anyOf': [{'$ref': '#/$defs/PublicError'}, {'type': 'null'}], 'default': None}, 'request_id': {'type': 'string', 'title': 'Request Id', 'maxLength': 128, 'minLength': 8}, 'limitations': {'type': 'array', 'items': {'type': 'string'}, 'title': 'Limitations', 'maxItems': 50}, 'data_version': {'type': 'string', 'title': 'Data Version', 'maxLength': 256, 'minLength': 1}, 'contract_version': {'type': 'string', 'const': 'sacs.mcp.v1', 'title': 'Contract Version', 'default': 'sacs.mcp.v1'}, 'source_provenance': {'type': 'array', 'items': {'$ref': '#/$defs/SourceProvenance'}, 'title': 'Source Provenance'}}, 'additionalProperties': False}
sacs_query_financial_summary
Return bounded aggregate financial summaries for one explicit official dataset.
只读 幂等
输入模式
{'type': 'object', 'title': 'sacs_query_financial_summaryArguments', 'required': ['district_identifier', 'dataset_ref'], 'properties': {'client_id': {'anyOf': [{'type': 'string', 'pattern': '^sacs_client_[0-9a-f]{32}$'}, {'type': 'null'}], 'title': 'Client Id', 'default': None}, 'dataset_ref': {'type': 'string', 'title': 'Dataset Ref', 'pattern': '^official:[1-9][0-9]*$', 'maxLength': 64, 'minLength': 10}, 'group_limit': {'type': 'integer', 'title': 'Group Limit', 'default': 10, 'maximum': 25, 'minimum': 1}, 'fund_code_max': {'anyOf': [{'type': 'string', 'pattern': '^[0-9]{2}$', 'description': 'Two-digit SACS fund code'}, {'type': 'null'}], 'title': 'Fund Code Max', 'default': None}, 'fund_code_min': {'anyOf': [{'type': 'string', 'pattern': '^[0-9]{2}$', 'description': 'Two-digit SACS fund code'}, {'type': 'null'}], 'title': 'Fund Code Min', 'default': None}, 'goal_code_max': {'anyOf': [{'type': 'string', 'pattern': '^[0-9]{4}$'}, {'type': 'null'}], 'title': 'Goal Code Max', 'default': None}, 'goal_code_min': {'anyOf': [{'type': 'string', 'pattern': '^[0-9]{4}$'}, {'type': 'null'}], 'title': 'Goal Code Min', 'default': None}, 'object_code_max': {'anyOf': [{'type': 'string', 'pattern': '^[0-9]{4}$'}, {'type': 'null'}], 'title': 'Object Code Max', 'default': None}, 'object_code_min': {'anyOf': [{'type': 'string', 'pattern': '^[0-9]{4}$'}, {'type': 'null'}], 'title': 'Object Code Min', 'default': None}, 'function_code_max': {'anyOf': [{'type': 'string', 'pattern': '^[0-9]{4}$'}, {'type': 'null'}], 'title': 'Function Code Max', 'default': None}, 'function_code_min': {'anyOf': [{'type': 'string', 'pattern': '^[0-9]{4}$'}, {'type': 'null'}], 'title': 'Function Code Min', 'default': None}, 'resource_code_max': {'anyOf': [{'type': 'string', 'pattern': '^[0-9]{4}$'}, {'type': 'null'}], 'title': 'Resource Code Max', 'default': None}, 'resource_code_min': {'anyOf': [{'type': 'string', 'pattern': '^[0-9]{4}$'}, {'type': 'null'}], 'title': 'Resource Code Min', 'default': None}, 'district_identifier': {'type': 'string', 'title': 'District Identifier', 'maxLength': 100, 'minLength': 2}, 'include_zero_categories': {'type': 'boolean', 'title': 'Include Zero Categories', 'default': False, 'description': 'Include zero-amount object category and group rows.'}}, 'additionalProperties': False}
输出模式
{'type': 'object', '$defs': {'PublicError': {'type': 'object', 'title': 'PublicError', 'required': ['code', 'message'], 'properties': {'code': {'enum': ['invalid_request', 'not_found', 'private_scope_denied', 'dataset_mismatch', 'payload_rejected', 'backend_unavailable'], 'type': 'string', 'title': 'Code'}, 'message': {'type': 'string', 'title': 'Message', 'maxLength': 500, 'minLength': 1}, 'retryable': {'type': 'boolean', 'title': 'Retryable', 'default': False}}, 'additionalProperties': False}, 'SourceProvenance': {'type': 'object', 'title': 'SourceProvenance', 'required': ['source', 'record_ref', 'description'], 'properties': {'source': {'type': 'string', 'title': 'Source', 'maxLength': 120, 'minLength': 1}, 'record_ref': {'type': 'string', 'title': 'Record Ref', 'maxLength': 160, 'minLength': 1}, 'description': {'type': 'string', 'title': 'Description', 'maxLength': 500, 'minLength': 1}}, 'additionalProperties': False}}, 'title': 'PublicToolResponse', 'required': ['data_version', 'request_id', 'ok'], 'properties': {'ok': {'type': 'boolean', 'title': 'Ok'}, 'data': {'anyOf': [{'type': 'object', 'additionalProperties': True}, {'type': 'null'}], 'title': 'Data', 'default': None}, 'error': {'anyOf': [{'$ref': '#/$defs/PublicError'}, {'type': 'null'}], 'default': None}, 'request_id': {'type': 'string', 'title': 'Request Id', 'maxLength': 128, 'minLength': 8}, 'limitations': {'type': 'array', 'items': {'type': 'string'}, 'title': 'Limitations', 'maxItems': 50}, 'data_version': {'type': 'string', 'title': 'Data Version', 'maxLength': 256, 'minLength': 1}, 'contract_version': {'type': 'string', 'const': 'sacs.mcp.v1', 'title': 'Contract Version', 'default': 'sacs.mcp.v1'}, 'source_provenance': {'type': 'array', 'items': {'$ref': '#/$defs/SourceProvenance'}, 'title': 'Source Provenance'}}, 'additionalProperties': False}
sacs_register_client
Optionally 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.
输入模式
{'type': 'object', 'title': 'sacs_register_clientArguments', 'required': ['consent_to_store'], 'properties': {'use_case': {'anyOf': [{'type': 'string', 'maxLength': 500, 'minLength': 1}, {'type': 'null'}], 'title': 'Use Case', 'default': None}, 'client_id': {'anyOf': [{'type': 'string', 'pattern': '^sacs_client_[0-9a-f]{32}$'}, {'type': 'null'}], 'title': 'Client Id', 'default': None}, 'user_type': {'anyOf': [{'enum': ['district_staff', 'county_office_staff', 'state_agency_staff', 'researcher', 'consultant', 'vendor', 'community_member', 'other', 'prefer_not_to_say'], 'type': 'string'}, {'type': 'null'}], 'title': 'User Type', 'default': None}, 'agent_client': {'anyOf': [{'type': 'string', 'maxLength': 100, 'minLength': 1}, {'type': 'null'}], 'title': 'Agent Client', 'default': None}, 'consent_to_store': {'type': 'boolean', 'const': True, 'title': 'Consent To Store', 'description': 'Must be true, and only after the operator accepts the disclosed storage.'}, 'home_district_cds': {'anyOf': [{'type': 'string', 'pattern': '^[0-9]{14}$'}, {'type': 'null'}], 'title': 'Home District Cds', 'default': None}}, 'additionalProperties': False}
输出模式
{'type': 'object', '$defs': {'PublicError': {'type': 'object', 'title': 'PublicError', 'required': ['code', 'message'], 'properties': {'code': {'enum': ['invalid_request', 'not_found', 'private_scope_denied', 'dataset_mismatch', 'payload_rejected', 'backend_unavailable'], 'type': 'string', 'title': 'Code'}, 'message': {'type': 'string', 'title': 'Message', 'maxLength': 500, 'minLength': 1}, 'retryable': {'type': 'boolean', 'title': 'Retryable', 'default': False}}, 'additionalProperties': False}, 'SourceProvenance': {'type': 'object', 'title': 'SourceProvenance', 'required': ['source', 'record_ref', 'description'], 'properties': {'source': {'type': 'string', 'title': 'Source', 'maxLength': 120, 'minLength': 1}, 'record_ref': {'type': 'string', 'title': 'Record Ref', 'maxLength': 160, 'minLength': 1}, 'description': {'type': 'string', 'title': 'Description', 'maxLength': 500, 'minLength': 1}}, 'additionalProperties': False}}, 'title': 'PublicToolResponse', 'required': ['data_version', 'request_id', 'ok'], 'properties': {'ok': {'type': 'boolean', 'title': 'Ok'}, 'data': {'anyOf': [{'type': 'object', 'additionalProperties': True}, {'type': 'null'}], 'title': 'Data', 'default': None}, 'error': {'anyOf': [{'$ref': '#/$defs/PublicError'}, {'type': 'null'}], 'default': None}, 'request_id': {'type': 'string', 'title': 'Request Id', 'maxLength': 128, 'minLength': 8}, 'limitations': {'type': 'array', 'items': {'type': 'string'}, 'title': 'Limitations', 'maxItems': 50}, 'data_version': {'type': 'string', 'title': 'Data Version', 'maxLength': 256, 'minLength': 1}, 'contract_version': {'type': 'string', 'const': 'sacs.mcp.v1', 'title': 'Contract Version', 'default': 'sacs.mcp.v1'}, 'source_provenance': {'type': 'array', 'items': {'$ref': '#/$defs/SourceProvenance'}, 'title': 'Source Provenance'}}, 'additionalProperties': False}
sacs_search_districts
Resolve a public California district name, 7-digit LEA, or 14-digit CDS code.
只读 幂等
输入模式
{'type': 'object', 'title': 'sacs_search_districtsArguments', 'required': ['query'], 'properties': {'limit': {'type': 'integer', 'title': 'Limit', 'default': 20, 'maximum': 50, 'minimum': 1}, 'query': {'type': 'string', 'title': 'Query', 'maxLength': 100, 'minLength': 2}, 'offset': {'type': 'integer', 'title': 'Offset', 'default': 0, 'maximum': 500, 'minimum': 0}, 'client_id': {'anyOf': [{'type': 'string', 'pattern': '^sacs_client_[0-9a-f]{32}$'}, {'type': 'null'}], 'title': 'Client Id', 'default': None}}, 'additionalProperties': False}
输出模式
{'type': 'object', '$defs': {'PublicError': {'type': 'object', 'title': 'PublicError', 'required': ['code', 'message'], 'properties': {'code': {'enum': ['invalid_request', 'not_found', 'private_scope_denied', 'dataset_mismatch', 'payload_rejected', 'backend_unavailable'], 'type': 'string', 'title': 'Code'}, 'message': {'type': 'string', 'title': 'Message', 'maxLength': 500, 'minLength': 1}, 'retryable': {'type': 'boolean', 'title': 'Retryable', 'default': False}}, 'additionalProperties': False}, 'SourceProvenance': {'type': 'object', 'title': 'SourceProvenance', 'required': ['source', 'record_ref', 'description'], 'properties': {'source': {'type': 'string', 'title': 'Source', 'maxLength': 120, 'minLength': 1}, 'record_ref': {'type': 'string', 'title': 'Record Ref', 'maxLength': 160, 'minLength': 1}, 'description': {'type': 'string', 'title': 'Description', 'maxLength': 500, 'minLength': 1}}, 'additionalProperties': False}}, 'title': 'PublicToolResponse', 'required': ['data_version', 'request_id', 'ok'], 'properties': {'ok': {'type': 'boolean', 'title': 'Ok'}, 'data': {'anyOf': [{'type': 'object', 'additionalProperties': True}, {'type': 'null'}], 'title': 'Data', 'default': None}, 'error': {'anyOf': [{'$ref': '#/$defs/PublicError'}, {'type': 'null'}], 'default': None}, 'request_id': {'type': 'string', 'title': 'Request Id', 'maxLength': 128, 'minLength': 8}, 'limitations': {'type': 'array', 'items': {'type': 'string'}, 'title': 'Limitations', 'maxItems': 50}, 'data_version': {'type': 'string', 'title': 'Data Version', 'maxLength': 256, 'minLength': 1}, 'contract_version': {'type': 'string', 'const': 'sacs.mcp.v1', 'title': 'Contract Version', 'default': 'sacs.mcp.v1'}, 'source_provenance': {'type': 'array', 'items': {'$ref': '#/$defs/SourceProvenance'}, 'title': 'Source Provenance'}}, 'additionalProperties': False}
sacs_submit_feedback
Report 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.
输入模式
{'type': 'object', 'title': 'sacs_submit_feedbackArguments', 'required': ['sentiment', 'message'], 'properties': {'message': {'type': 'string', 'title': 'Message', 'maxLength': 2000, 'minLength': 2}, 'client_id': {'anyOf': [{'type': 'string', 'pattern': '^sacs_client_[0-9a-f]{32}$'}, {'type': 'null'}], 'title': 'Client Id', 'default': None}, 'sentiment': {'enum': ['good', 'bad', 'mixed'], 'type': 'string', 'title': 'Sentiment'}, 'feedback_type': {'enum': ['general', 'feature_request', 'incorrect', 'incomplete', 'stale', 'missing_context'], 'type': 'string', 'title': 'Feedback Type', 'default': 'general'}, 'related_request_id': {'anyOf': [{'type': 'string', 'pattern': '^[A-Za-z0-9._:-]{8,128}$'}, {'type': 'null'}], 'title': 'Related Request Id', 'default': None}, 'related_data_version': {'anyOf': [{'type': 'string', 'maxLength': 256, 'minLength': 1}, {'type': 'null'}], 'title': 'Related Data Version', 'default': None}}, 'additionalProperties': False}
输出模式
{'type': 'object', '$defs': {'PublicError': {'type': 'object', 'title': 'PublicError', 'required': ['code', 'message'], 'properties': {'code': {'enum': ['invalid_request', 'not_found', 'private_scope_denied', 'dataset_mismatch', 'payload_rejected', 'backend_unavailable'], 'type': 'string', 'title': 'Code'}, 'message': {'type': 'string', 'title': 'Message', 'maxLength': 500, 'minLength': 1}, 'retryable': {'type': 'boolean', 'title': 'Retryable', 'default': False}}, 'additionalProperties': False}, 'SourceProvenance': {'type': 'object', 'title': 'SourceProvenance', 'required': ['source', 'record_ref', 'description'], 'properties': {'source': {'type': 'string', 'title': 'Source', 'maxLength': 120, 'minLength': 1}, 'record_ref': {'type': 'string', 'title': 'Record Ref', 'maxLength': 160, 'minLength': 1}, 'description': {'type': 'string', 'title': 'Description', 'maxLength': 500, 'minLength': 1}}, 'additionalProperties': False}}, 'title': 'PublicToolResponse', 'required': ['data_version', 'request_id', 'ok'], 'properties': {'ok': {'type': 'boolean', 'title': 'Ok'}, 'data': {'anyOf': [{'type': 'object', 'additionalProperties': True}, {'type': 'null'}], 'title': 'Data', 'default': None}, 'error': {'anyOf': [{'$ref': '#/$defs/PublicError'}, {'type': 'null'}], 'default': None}, 'request_id': {'type': 'string', 'title': 'Request Id', 'maxLength': 128, 'minLength': 8}, 'limitations': {'type': 'array', 'items': {'type': 'string'}, 'title': 'Limitations', 'maxItems': 50}, 'data_version': {'type': 'string', 'title': 'Data Version', 'maxLength': 256, 'minLength': 1}, 'contract_version': {'type': 'string', 'const': 'sacs.mcp.v1', 'title': 'Contract Version', 'default': 'sacs.mcp.v1'}, 'source_provenance': {'type': 'array', 'items': {'$ref': '#/$defs/SourceProvenance'}, 'title': 'Source Provenance'}}, 'additionalProperties': False}
已更改
sacs_submit_feedback
2026年10月1日 02:40
已添加
sacs_query_attendance
2026年10月1日 02:40
已添加
sacs_submit_feedback
2026年9月29日 02:40
已添加
sacs_register_client
2026年9月29日 02:40
已添加
sacs_explain_code
2026年9月29日 02:40
已添加
sacs_district_context_pack_batch
2026年9月29日 02:40
已添加
sacs_district_context_pack
2026年9月29日 02:40
已添加
sacs_compare_districts
2026年9月29日 02:40
已添加
sacs_query_financial_summary
2026年9月29日 02:40
已添加
sacs_list_public_datasets
2026年9月29日 02:40
已添加
sacs_search_districts
2026年9月29日 02:40