Licensed House Painters
Find licensed house painters in 11 US states, with dated license status from state boards.
Should I use this
Quality & Safety
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"licensed-house-painters": {
"url": "https://house-painters-mcp.ottobot2025.workers.dev/mcp"
}
}
}Remote endpoints
https://house-painters-mcp.ottobot2025.workers.dev/mcpstreamable-httpWhat it can do
Tool inventory
Tools (3)
🟢search_painters(state, city, limit)
Find licensed house painters and painting contractors in a US city (AZ, CA, CT, DE, FL, IA, NV, NY, OR, VA, WA), from state licensing-board records. Each result has the license number and its status with the date it was read from the board's own file, the phone number and website the board lists, and the board's lookup page for re-checking before hiring. Active licenses are listed first. Not a rating or an endorsement. Read-only.
Input Schema
{
"type": "object",
"properties": {
"state": {
"type": "string",
"pattern": "^[A-Za-z]{2}$",
"patternMessage": "argument state must be a two-letter state code, e.g. CA",
"description": "Two-letter US state code. Covered: AZ, CA, CT, DE, FL, IA, NV, NY, OR, VA, WA."
},
"city": {
"type": "string",
"pattern": ".*\\S.*",
"patternMessage": "argument city must not be blank",
"description": "City name, e.g. Sacramento"
},
"limit": {
"type": "integer",
"description": "Max results, 1 to 25 (default 10)"
}
},
"required": [
"state",
"city"
]
}🟢get_painter(painter_id)
Full record for one painter returned by search_painters, by its painter_id: business name, address, phone, website, license number and dated license status, and the state board's lookup page. Read-only.
Input Schema
{
"type": "object",
"properties": {
"painter_id": {
"type": "string",
"description": "painter_id from search_painters, e.g. ca/sacramento/acme-painting-sacramento-ca"
}
},
"required": [
"painter_id"
]
}🟡request_estimate(state, city, job_description, contact_name, contact_phone, ...)
Record a homeowner's request for a painting estimate, with their contact details. Only call this after the homeowner has seen what will be shared and agreed to share it, and set homeowner_confirmed to true to say so. The request is stored and the reply lists licensed painters the homeowner can contact directly. This is an early service: no painter is assigned automatically and a reply is not guaranteed.
Input Schema
{
"type": "object",
"properties": {
"state": {
"type": "string",
"pattern": "^[A-Za-z]{2}$",
"patternMessage": "argument state must be a two-letter state code, e.g. CA",
"description": "Two-letter US state code. Covered: AZ, CA, CT, DE, FL, IA, NV, NY, OR, VA, WA."
},
"city": {
"type": "string",
"description": "City where the painting work is"
},
"job_description": {
"type": "string",
"description": "The painting work: interior or exterior, rooms or areas, rough size, condition. 20 to 2000 characters."
},
"contact_name": {
"type": "string",
"description": "Homeowner's name"
},
"contact_phone": {
"type": "string",
"description": "Phone number (give this or contact_email)"
},
"contact_email": {
"type": "string",
"description": "Email address (give this or contact_phone)"
},
"preferred_timing": {
"type": "string",
"description": "Optional, e.g. 'next month' or 'before October 15'"
},
"painter_ids": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional: up to 5 painter_id values the homeowner chose from search_painters"
},
"homeowner_confirmed": {
"type": "boolean",
"enum": [
true
],
"description": "Must be true: the homeowner agreed to share these details"
}
},
"required": [
"state",
"city",
"job_description",
"contact_name",
"homeowner_confirmed"
]
}Community
Evidence