Contractors Near Me

Search licensed US contractors by trade or location, fetch profiles and reviews, and submit leads.

Should I use this

Quality & Safety

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

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~2,309Tokens (tool definitions)
~1.0 KBTypical response size
Moderate attention impact (1.80% 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": {
    "contractors-near-me": {
      "url": "https://contractorsnearme.ai/api/mcp"
    }
  }
}

Remote endpoints

https://contractorsnearme.ai/api/mcpstreamable-http

What it can do

Tool inventory

Tools (14)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢search_contractors(trade, state, city, q, lat, ...)

Search active contractors by trade, location, company name, and geo radius.

Input Schema

{
  "type": "object",
  "properties": {
    "trade": {
      "type": "string",
      "minLength": 1
    },
    "state": {
      "type": "string",
      "minLength": 2,
      "maxLength": 2
    },
    "city": {
      "type": "string",
      "minLength": 1
    },
    "q": {
      "type": "string",
      "minLength": 1
    },
    "lat": {
      "type": "number",
      "minimum": -90,
      "maximum": 90
    },
    "lng": {
      "type": "number",
      "minimum": -180,
      "maximum": 180
    },
    "radius_miles": {
      "type": "number",
      "exclusiveMinimum": 0
    },
    "limit": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "accountType": {
      "type": "string",
      "enum": [
        "gc",
        "supplier",
        "subcontractor",
        "customer"
      ]
    },
    "contractorCategory": {
      "type": "string",
      "enum": [
        "gc",
        "supplier",
        "subcontractor"
      ]
    },
    "customerOnly": {
      "type": "boolean"
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_contractor(slug)

Get detailed contractor profile by slug. Returns full profile including about text, contact info, and trade details.

Input Schema

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string",
      "minLength": 1
    }
  },
  "required": [
    "slug"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_reviews(contractor_slug, limit)

Get reviews for a contractor by slug. Returns review text, rating, reviewer name, and dates. Limited to 50 per request.

Input Schema

{
  "type": "object",
  "properties": {
    "contractor_slug": {
      "type": "string",
      "minLength": 1
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50
    }
  },
  "required": [
    "contractor_slug"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢list_trades

Get a list of all available trades/professions. Returns filtered list of contractor trades from the directory.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡submit_lead(name, email, phone, message, contractor_slug, ...)

Submit a lead to ContractorsNearMe. Requires API key authentication.

Input Schema

{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 2
    },
    "email": {
      "type": "string",
      "format": "email",
      "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"
    },
    "phone": {
      "type": "string"
    },
    "message": {
      "type": "string",
      "minLength": 10
    },
    "contractor_slug": {
      "type": "string"
    },
    "trade_slug": {
      "type": "string"
    }
  },
  "required": [
    "name",
    "email",
    "message"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡submit_review(contractor_slug, rating, description, reviewer_name, title, ...)

Submit a review for a contractor. Requires API key authentication. Reviews are held for moderation before publishing.

Input Schema

{
  "type": "object",
  "properties": {
    "contractor_slug": {
      "type": "string",
      "minLength": 1
    },
    "rating": {
      "type": "integer",
      "minimum": 1,
      "maximum": 5
    },
    "description": {
      "type": "string",
      "minLength": 20
    },
    "reviewer_name": {
      "type": "string",
      "minLength": 2
    },
    "title": {
      "type": "string"
    },
    "rating_cleanliness": {
      "type": "integer",
      "minimum": 1,
      "maximum": 5
    },
    "rating_communication": {
      "type": "integer",
      "minimum": 1,
      "maximum": 5
    },
    "rating_quality": {
      "type": "integer",
      "minimum": 1,
      "maximum": 5
    },
    "rating_timeliness": {
      "type": "integer",
      "minimum": 1,
      "maximum": 5
    },
    "rating_value": {
      "type": "integer",
      "minimum": 1,
      "maximum": 5
    }
  },
  "required": [
    "contractor_slug",
    "rating",
    "description",
    "reviewer_name"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_my_leads(status, limit)

Get leads submitted to the authenticated contractor's directory profile. Requires API key authentication. Returns lead name, email, phone, message, status, source, and created date.

Input Schema

{
  "type": "object",
  "properties": {
    "status": {
      "type": "string"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡respond_to_lead(lead_id, status, note)

Update the status of a lead owned by the authenticated contractor's directory profile, optionally adding a note. Requires API key authentication. Allowed statuses: new, contacted, qualified, converted, lost.

Input Schema

{
  "type": "object",
  "properties": {
    "lead_id": {
      "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)$"
    },
    "status": {
      "type": "string",
      "enum": [
        "new",
        "contacted",
        "qualified",
        "converted",
        "lost"
      ]
    },
    "note": {
      "type": "string",
      "maxLength": 2000
    }
  },
  "required": [
    "lead_id"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡update_my_profile(company_name, dba, phone, email, website, ...)

Update the authenticated contractor's own directory profile. Requires API key authentication. Only the profile owned by the key's contractor can be updated.

Input Schema

{
  "type": "object",
  "properties": {
    "company_name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "dba": {
      "type": "string",
      "maxLength": 200
    },
    "phone": {
      "type": "string",
      "maxLength": 40
    },
    "email": {
      "type": "string",
      "format": "email",
      "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"
    },
    "website": {
      "type": "string",
      "maxLength": 500
    },
    "about_text": {
      "type": "string",
      "maxLength": 5000
    },
    "quote": {
      "type": "string",
      "maxLength": 300
    },
    "license_number": {
      "type": "string",
      "maxLength": 100
    },
    "year_established": {
      "type": "integer",
      "minimum": 1800,
      "maximum": 2100
    },
    "company_size": {
      "type": "string",
      "maxLength": 100
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢search_itbs(query, city, state_code, limit)

Search public invitations to bid (ITBs) on the projects board. Returns open project title, description, budget range, location, and created date. Public read, no API key required.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "city": {
      "type": "string",
      "maxLength": 100
    },
    "state_code": {
      "type": "string",
      "minLength": 2,
      "maxLength": 2
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_itb(itb_id)

Get a single public invitation to bid (ITB) by its UUID. Returns full project detail including description, budget range, job site address, and dates. Public read, no API key required.

Input Schema

{
  "type": "object",
  "properties": {
    "itb_id": {
      "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)$"
    }
  },
  "required": [
    "itb_id"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_availability(slug)

Get a contractor's published availability calendar by slug. Returns days, start/end times, timezone, and note. Public read, no API key required.

Input Schema

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string",
      "minLength": 1
    }
  },
  "required": [
    "slug"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢list_marketplace_requests(q, limit)

List public marketplace requests with canonical request status, bounded budget visibility, urgency, payment summary, and proposal/application summary fields.

Input Schema

{
  "type": "object",
  "properties": {
    "q": {
      "type": "string",
      "minLength": 1
    },
    "limit": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_marketplace_request(id_or_slug, state_code, city_slug)

Get a single public marketplace request by UUID or slug, with canonical request status, bounded budget visibility, payment summary, and proposal/application summary fields.

Input Schema

{
  "type": "object",
  "properties": {
    "id_or_slug": {
      "type": "string",
      "minLength": 1
    },
    "state_code": {
      "type": "string",
      "minLength": 2,
      "maxLength": 2
    },
    "city_slug": {
      "type": "string",
      "minLength": 1
    }
  },
  "required": [
    "id_or_slug"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Recommended Prompts

search_research
Search for information about [topic] using Contractors Near Me
Expected tools: search_contractors
find_specific
Find [specific item] using Contractors Near Me
Expected tools: search_contractors
retrieve_data
Get details about [item] from Contractors Near Me
Expected tools: get_contractor
fetch_info
Fetch [information type] using Contractors Near Me
Expected tools: get_contractor
list_items
List all [items] available in Contractors Near Me
Expected tools: list_trades

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded14 tools
verifiedversion not recorded14 tools