smartjon7.github.io
CivicBid Studio: a shared, auditable public-infrastructure bid room where a person and a browser agent decide what to pursue. Synthetic demonstration built for the OpenAI WebMCP Challenge.
First seen 2026-11-05 · Last seen 2026-11-05 · Source: webmcp.com
Answer 4 · Act 9 · Transact 0 · Score: Not yet scored
Tool inspector
civicbid_upsert_risk
Adds a risk to the open opportunity's register, or updates the risk that already carries the same riskKey, with severity, related requirements, rationale, mitigation, owner, and status. Use it to record disqualification and delivery risks with a named owner; registering mitigations raises risk readiness. Do not use it for requirement assignments. Side effect: the risk register changes. This tool changes the workspace and is logged; it never approves or rejects anything, because approval belongs to the human alone.
Page: /civicbid-studio/
Input schema
| Property | Type | Required | Description |
|---|---|---|---|
riskKey |
string | yes | Stable lowercase slug such as bonding-shortfall. Reusing a key updates that risk. |
title |
string | yes | Short name of the risk. |
severity |
string | yes | How badly this could hurt the bid. |
relatedRequirementIds |
array | no | Requirement ids in the open opportunity that this risk threatens. |
rationale |
string | no | Why the risk exists. |
mitigation |
string | no | What will be done about it. |
ownerRole |
string | yes | Role on the bid team that owns the work. |
status |
string | no | open, mitigating, or resolved. |
Raw JSON schema
{
"type": "object",
"additionalProperties": false,
"required": [
"riskKey",
"title",
"severity",
"ownerRole"
],
"properties": {
"riskKey": {
"type": "string",
"pattern": "^[a-z0-9][a-z0-9-]{1,48}$",
"minLength": 2,
"maxLength": 49,
"description": "Stable lowercase slug such as bonding-shortfall. Reusing a key updates that risk."
},
"title": {
"type": "string",
"minLength": 1,
"maxLength": 100,
"description": "Short name of the risk."
},
"severity": {
"type": "string",
"enum": [
"low",
"medium",
"high",
"critical"
],
"description": "How badly this could hurt the bid."
},
"relatedRequirementIds": {
"type": "array",
"items": {
"type": "string",
"pattern": "^[A-Z]{2,5}-[0-9]{2}$",
"minLength": 5,
"maxLength": 8,
"description": "Requirement id such as RAIL-01, taken from civicbid_list_requirements."
},
"maxItems": 5,
"uniqueItems": true,
"description": "Requirement ids in the open opportunity that this risk threatens.",
"default": []
},
"rationale": {
"type": "string",
"maxLength": 500,
"default": "",
"description": "Why the risk exists."
},
"mitigation": {
"type": "string",
"maxLength": 500,
"default": "",
"description": "What will be done about it."
},
"ownerRole": {
"type": "string",
"enum": [
"Executive Sponsor",
"Proposal Manager",
"Estimating Lead",
"Finance & Bonding",
"Operations Lead",
"Safety Director",
"Compliance Lead",
"JV & Legal",
"Scheduler",
"Quality Manager"
],
"description": "Role on the bid team that owns the work."
},
"status": {
"type": "string",
"enum": [
"open",
"mitigating",
"resolved"
],
"default": "open",
"description": "open, mitigating, or resolved."
}
}
}
Similar websites
econsor.de
German digital agency building portals, e-commerce sites and online marketing, combining strategy, design and AI to grow clients' visibility and customer base.
inkframe-eta.vercel.app
Browser-native Elah video editor for 9:16 and 16:9 exports
agentdesk-demo.vercel.app
Meridian Ops
eworker.ca
E-Worker is business infrastructure powered by AI, with focused apps and connected business work.