← WebMCP Directory

Tool tree

civic-webmcp.vercel.app

Productivity & BusinessTools verified
Website
Civic is a transparent, WebMCP-enabled public-budget studio for fictional Harbor City.
Explore capabilities
    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
          }
        }
      }
    }