Tool tree
Civic is a transparent, WebMCP-enabled public-budget studio for fictional Harbor City.
Implementation
gradeNot graded
gradeNot graded
get_civic_stateAnswer
Read the current model, scenario, pin, and UI state. Call this first and after stale_state errors.
View tool JSON
{
"name": "get_civic_state",
"kind": "answer",
"impl": "imperative",
"description": "Read the current model, scenario, pin, and UI state. Call this first and after stale_state errors.",
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {}
}
}get_model_detailsAnswer
Read disclosed program bounds, coefficients, constraints, and the fictional-model disclaimer.
View tool JSON
{
"name": "get_model_details",
"kind": "answer",
"impl": "imperative",
"description": "Read disclosed program bounds, coefficients, constraints, and the fictional-model disclaimer.",
"inputSchema": {
"type": "object",
"additionalProperties": false,
"required": [
"stateVersion"
],
"properties": {
"stateVersion": {
"type": "integer",
"minimum": 1,
"description": "The current stateVersion returned by get_civic_state."
},
"programs": {
"type": "array",
"uniqueItems": true,
"maxItems": 4,
"items": {
"type": "string",
"enum": [
"housing",
"transit",
"emergency",
"health",
"youth",
"climate",
"libraries",
"streets"
]
}
}
}
}
}focus_tradeoffsAction
Focus programs, districts, and outcomes in Civic without changing the scenario.
View tool JSON
{
"name": "focus_tradeoffs",
"kind": "act",
"impl": "imperative",
"description": "Focus programs, districts, and outcomes in Civic without changing the scenario.",
"inputSchema": {
"type": "object",
"additionalProperties": false,
"required": [
"stateVersion"
],
"properties": {
"stateVersion": {
"type": "integer",
"minimum": 1,
"description": "The current stateVersion returned by get_civic_state."
},
"programs": {
"type": "array",
"items": {
"type": "string",
"enum": [
"housing",
"transit",
"emergency",
"health",
"youth",
"climate",
"libraries",
"streets"
]
}
},
"districts": {
"type": "array",
"items": {
"type": "string",
"enum": [
"north_harbor",
"east_junction",
"river_ward",
"central",
"south_point",
"west_hills"
]
}
},
"outcomes": {
"type": "array",
"items": {
"type": "string",
"enum": [
"stability",
"mobility",
"safety",
"opportunity"
]
}
}
}
}
}preview_scenarioAction
Run Civic’s deterministic local budget engine. This can stage a proposal but cannot accept it.
View tool JSON
{
"name": "preview_scenario",
"kind": "act",
"impl": "imperative",
"description": "Run Civic’s deterministic local budget engine. This can stage a proposal but cannot accept it.",
"inputSchema": {
"type": "object",
"additionalProperties": false,
"required": [
"stateVersion",
"name",
"weights",
"rationale"
],
"properties": {
"stateVersion": {
"type": "integer",
"minimum": 1,
"description": "The current stateVersion returned by get_civic_state."
},
"name": {
"type": "string",
"minLength": 1,
"maxLength": 80
},
"weights": {
"type": "object",
"additionalProperties": false,
"properties": {
"stability": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"mobility": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"safety": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"opportunity": {
"type": "number",
"minimum": 0,
"maximum": 1
}
}
},
"protectedPrograms": {
"type": "array",
"uniqueItems": true,
"items": {
"type": "string",
"enum": [
"housing",
"transit",
"emergency",
"health",
"youth",
"climate",
"libraries",
"streets"
]
}
},
"targets": {
"type": "object",
"additionalProperties": false,
"properties": {
"housing": {
"type": "object",
"additionalProperties": false,
"properties": {
"minimum": {
"type": "number",
"multipleOf": 0.1
},
"maximum": {
"type": "number",
"multipleOf": 0.1
}
}
},
"transit": {
"type": "object",
"additionalProperties": false,
"properties": {
"minimum": {
"type": "number",
"multipleOf": 0.1
},
"maximum": {
"type": "number",
"multipleOf": 0.1
}
}
},
"emergency": {
"type": "object",
"additionalProperties": false,
"properties": {
"minimum": {
"type": "number",
"multipleOf": 0.1
},
"maximum": {
"type": "number",
"multipleOf": 0.1
}
}
},
"health": {
"type": "object",
"additionalProperties": false,
"properties": {
"minimum": {
"type": "number",
"multipleOf": 0.1
},
"maximum": {
"type": "number",
"multipleOf": 0.1
}
}
},
"youth": {
"type": "object",
"additionalProperties": false,
"properties": {
"minimum": {
"type": "number",
"multipleOf": 0.1
},
"maximum": {
"type": "number",
"multipleOf": 0.1
}
}
},
"climate": {
"type": "object",
"additionalProperties": false,
"properties": {
"minimum": {
"type": "number",
"multipleOf": 0.1
},
"maximum": {
"type": "number",
"multipleOf": 0.1
}
}
},
"libraries": {
"type": "object",
"additionalProperties": false,
"properties": {
"minimum": {
"type": "number",
"multipleOf": 0.1
},
"maximum": {
"type": "number",
"multipleOf": 0.1
}
}
},
"streets": {
"type": "object",
"additionalProperties": false,
"properties": {
"minimum": {
"type": "number",
"multipleOf": 0.1
},
"maximum": {
"type": "number",
"multipleOf": 0.1
}
}
}
}
},
"changeCap": {
"type": "number",
"minimum": 0,
"maximum": 1,
"default": 0.3
},
"rationale": {
"type": "string",
"minLength": 1,
"maxLength": 300
}
}
}
}