Licensed House Painters

Find licensed house painters in 11 US states, with dated license status from state boards.

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
100%
Naming quality
93%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~815Tokens (tool definitions)
~1.8 KBTypical response size
Moderate attention impact (0.64% of 128k context)

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-http

What it can do

Tool inventory

Tools (3)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢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

Rate this Server

Evidence

Recent observations

verifiedversion not recorded3 tools