Resident Notice Generator
Enter the facts once. Get a clear notice for email, messaging, and the notice board.
Using this tool from an agent
The same operations this page runs, over HTTP or MCP. Schemas are the ones the server enforces, so what is written here is what will actually be accepted.
Operations
| Operation | Engine | Cost |
|---|---|---|
resident_notice.generateMCP tool name: resident_notice_generate | ai | API key Needs an API key. Spends 1 AI credit from the key owner's monthly allowance. |
Calling it
curl -X POST https://tools.rodri.ai/api/agent/tools/resident_notice/runs \
-H "Authorization: Bearer hpt_live_…" \
-H "Content-Type: application/json" \
-d '{"operation": "resident_notice.generate", "input": { … }}'Input schema: resident_notice.generate
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"noticeType": {
"type": "string",
"enum": [
"maintenance_outage",
"meeting_invitation",
"rule_reminder",
"event",
"project_update",
"assessment_update"
]
},
"audience": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"summary": {
"type": "string",
"minLength": 1,
"maxLength": 20000
},
"facts": {
"default": [],
"maxItems": 40,
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"minLength": 1,
"maxLength": 40
},
"label": {
"type": "string",
"minLength": 1,
"maxLength": 80
},
"kind": {
"type": "string",
"enum": [
"text",
"date",
"time_range",
"amount",
"location",
"count"
]
},
"value": {
"type": "string",
"maxLength": 400
},
"originalWording": {
"type": "string",
"maxLength": 400
},
"origin": {
"type": "string",
"enum": [
"user",
"source",
"tool_result"
]
},
"confirmed": {
"default": true,
"type": "boolean"
},
"citationIds": {
"default": [],
"maxItems": 5,
"type": "array",
"items": {
"type": "string",
"maxLength": 64
}
},
"conflictsWith": {
"type": "string",
"maxLength": 400
}
},
"required": [
"id",
"label",
"kind",
"value",
"origin"
]
}
},
"requestedAction": {
"type": "string",
"maxLength": 400
},
"informationalOnly": {
"default": false,
"type": "boolean"
},
"contactDetails": {
"type": "string",
"maxLength": 300
},
"signature": {
"type": "string",
"maxLength": 120
},
"communityName": {
"type": "string",
"maxLength": 120
},
"timeZone": {
"type": "string",
"maxLength": 64
},
"tone": {
"default": "clear_friendly",
"type": "string",
"enum": [
"clear_friendly",
"neutral_formal",
"concise_direct"
]
},
"language": {
"default": "en",
"type": "string",
"enum": [
"en",
"es",
"bilingual"
]
},
"currency": {
"default": "USD",
"type": "string",
"maxLength": 8
},
"allowPlaceholders": {
"default": false,
"type": "boolean"
},
"sourceSetId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"sourceSetVersion": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"locale": {
"default": "en",
"type": "string",
"enum": [
"en",
"es"
]
}
},
"required": [
"noticeType",
"audience",
"summary"
]
}