Koskamo

HireLocksmiths MCP

An MCP server providing tools to search for vetted U.S. locksmiths, retrieve business details, check availability, get ETAs, request quotes, and book jobs. It also lists membership products for locksmith businesses, enabling agents to facilitate locksmith services without scraping.

Endpoint and access

No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.

HireLocksmiths MCP logo, by HireLocksmithsVendor evidenceStreamable HTTPNo sign-inEndpoint checked 2026-11-06Operated by HireLocksmiths
MCP endpoint (Streamable HTTP)
https://hirelocksmiths-mcp.onrender.com/mcp
Vendor documentation

What its tools do

7 tools, grouped by the hints the server advertises. Hints are self-declared, not verified behavior.

Can change data (2)

7 of 7 have a description · 7 of 7 declare behavior hints · 0 of 7 with parameters document them all

Checks and signals

Each line is separate evidence, not a trust score.

  • Passed Endpoint answered the live check ·
  • Passed Official MCP Registry namespace is tied to hirelocksmiths.com ·
  • Availability 1 of 1 checks passed in 30 days

What you can do with it

  • Search for vetted locksmiths by location and service type
  • Request a quote or booking for a locksmith job
  • Check real-time availability and ETA for a provider
  • List membership products for locksmith businesses

Source and maintenance

Vendor evidenceRegistry 1.6.1

Protocol and capabilities

Server
hirelocksmiths 1.30.0
MCP protocol negotiated in check
2025-11-25
Tools
7 advertised
Resources
0 advertised
Resource templates
0 advertised
Prompts
0 advertised
Server-advertised capabilities
{
  "tools": {
    "listChanged": false
  },
  "prompts": {
    "listChanged": false
  },
  "resources": {
    "subscribe": false,
    "listChanged": false
  },
  "experimental": {}
}

Server-provided instructions

Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.

HireLocksmiths is a human-vetted directory of U.S. locksmiths. To help a person who needs a locksmith: call search_locksmiths with their ZIP (preferred) or city, show 2-3 providers with phone numbers, and only call request_quote or book_job once they have chosen one and want to be contacted (it creates a real lead and notifies a real business). Price, ETA and live availability are never pre-listed - the API returns them as null and the locksmith confirms them; never invent a dollar figure or a number of minutes. For a LOCKSMITH BUSINESS asking about getting listed or about HireLocksmiths products, call list_membership_products and hand them the checkout_url; there is no agent-side payment.

Tools

7 advertised

search_locksmiths
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Find vetted, licensed locksmiths near a location. Use this first when a user needs a locksmith. Returns a ranked list of human-vetted providers (featured first) with id, name, city, services, rating, verified/featured flags, phone, and a profile URL. Args: location: A 5-digit US ZIP code (preferred) or a US city name. service: Optional job type, e.g. "lockout", "automotive", "residential", "commercial", "rekey", "install", "safe". urgency: Optional, e.g. "emergency", "today", "scheduled". budget: Optional free-text budget hint. limit: Max results to return (1-20, default 5). Note: price and ETA are NOT pre-listed — they are confirmed by the locksmith after you call request_quote. Do not invent prices or ETAs.

search_locksmiths input schema
{
  "type": "object",
  "title": "search_locksmithsArguments",
  "required": [
    "location"
  ],
  "properties": {
    "limit": {
      "type": "integer",
      "title": "Limit",
      "default": 5
    },
    "budget": {
      "type": "string",
      "title": "Budget",
      "default": ""
    },
    "service": {
      "type": "string",
      "title": "Service",
      "default": ""
    },
    "urgency": {
      "type": "string",
      "title": "Urgency",
      "default": ""
    },
    "location": {
      "type": "string",
      "title": "Location"
    }
  }
}
search_locksmiths annotations
{
  "title": "Search vetted locksmiths",
  "readOnlyHint": true,
  "openWorldHint": true,
  "idempotentHint": true,
  "destructiveHint": false
}
get_locksmith
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get the full profile for one locksmith by id (from search_locksmiths). Returns name, city/state, services, service-area ZIPs, rating, review count, verification note, phone, and profile URL.

get_locksmith input schema
{
  "type": "object",
  "title": "get_locksmithArguments",
  "required": [
    "locksmith_id"
  ],
  "properties": {
    "locksmith_id": {
      "type": "string",
      "title": "Locksmith Id"
    }
  }
}
get_locksmith annotations
{
  "title": "Get locksmith profile",
  "readOnlyHint": true,
  "openWorldHint": true,
  "idempotentHint": true,
  "destructiveHint": false
}
request_quote
Advertised by the server during the last successful anonymous check.
Open-world

Create a lead: ask a specific locksmith for a quote. ONLY call this when the user has chosen a provider and wants to be contacted — it sends a real request to the locksmith. Provide a phone (preferred) or email so the locksmith can reach the customer. Returns a reference id (HL-####); the locksmith confirms availability, price, and ETA directly. Args: locksmith_id: id from search_locksmiths / get_locksmith. name: Customer name. phone: Customer phone (preferred). Phone OR email is required. email: Customer email (alternative to phone). zip: 5-digit ZIP of the job (improves routing/records). service: Job type, e.g. "lockout", "automotive". details: Free-text description of the job. urgency: e.g. "emergency", "today".

request_quote input schema
{
  "type": "object",
  "title": "request_quoteArguments",
  "required": [
    "locksmith_id",
    "name"
  ],
  "properties": {
    "zip": {
      "type": "string",
      "title": "Zip",
      "default": ""
    },
    "name": {
      "type": "string",
      "title": "Name"
    },
    "email": {
      "type": "string",
      "title": "Email",
      "default": ""
    },
    "phone": {
      "type": "string",
      "title": "Phone",
      "default": ""
    },
    "details": {
      "type": "string",
      "title": "Details",
      "default": ""
    },
    "service": {
      "type": "string",
      "title": "Service",
      "default": "lockout"
    },
    "urgency": {
      "type": "string",
      "title": "Urgency",
      "default": ""
    },
    "locksmith_id": {
      "type": "string",
      "title": "Locksmith Id"
    }
  }
}
request_quote annotations
{
  "title": "Request a quote (creates a lead)",
  "readOnlyHint": false,
  "openWorldHint": true,
  "idempotentHint": false,
  "destructiveHint": false
}
book_job
Advertised by the server during the last successful anonymous check.
Open-world

Create a booking request with a specific locksmith (firmer than request_quote). ONLY call when the user wants to book a job — it sends a real request. Provide a phone (preferred) or email. `preferred_time` is the requested window, e.g. "today 3-5pm". This is a booking REQUEST, not a guaranteed appointment; the locksmith confirms the time, price, and ETA. Returns a reference id (HL-####).

book_job input schema
{
  "type": "object",
  "title": "book_jobArguments",
  "required": [
    "locksmith_id",
    "name"
  ],
  "properties": {
    "zip": {
      "type": "string",
      "title": "Zip",
      "default": ""
    },
    "name": {
      "type": "string",
      "title": "Name"
    },
    "email": {
      "type": "string",
      "title": "Email",
      "default": ""
    },
    "phone": {
      "type": "string",
      "title": "Phone",
      "default": ""
    },
    "details": {
      "type": "string",
      "title": "Details",
      "default": ""
    },
    "service": {
      "type": "string",
      "title": "Service",
      "default": "lockout"
    },
    "urgency": {
      "type": "string",
      "title": "Urgency",
      "default": ""
    },
    "locksmith_id": {
      "type": "string",
      "title": "Locksmith Id"
    },
    "preferred_time": {
      "type": "string",
      "title": "Preferred Time",
      "default": ""
    }
  }
}
book_job annotations
{
  "title": "Request a booking (creates a lead)",
  "readOnlyHint": false,
  "openWorldHint": true,
  "idempotentHint": false,
  "destructiveHint": false
}
check_availability
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Check coverage for one provider (locksmith_id) or an area (location: ZIP or city). Returns whether the area is served, how many vetted providers cover it, and how many offer 24/7 emergency service. Live availability is confirmed at request_quote — this does not return a real-time "available now" status, so don't imply one.

check_availability input schema
{
  "type": "object",
  "title": "check_availabilityArguments",
  "properties": {
    "location": {
      "type": "string",
      "title": "Location",
      "default": ""
    },
    "locksmith_id": {
      "type": "string",
      "title": "Locksmith Id",
      "default": ""
    }
  }
}
check_availability annotations
{
  "title": "Check coverage / availability",
  "readOnlyHint": true,
  "openWorldHint": true,
  "idempotentHint": true,
  "destructiveHint": false
}
get_eta
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

Get an ETA proxy for a location (ZIP or city). eta_minutes is null — HireLocksmiths does not pre-list ETAs. The tool returns the number of vetted providers nearby and whether 24/7 emergency coverage exists (usually fastest). For a real ETA, call request_quote and the locksmith confirms it directly. Never invent a number of minutes.

get_eta input schema
{
  "type": "object",
  "title": "get_etaArguments",
  "required": [
    "location"
  ],
  "properties": {
    "location": {
      "type": "string",
      "title": "Location"
    }
  }
}
get_eta annotations
{
  "title": "Get ETA proxy",
  "readOnlyHint": true,
  "openWorldHint": true,
  "idempotentHint": true,
  "destructiveHint": false
}
list_membership_products
Advertised by the server during the last successful anonymous check.
Advertised read-onlyOpen-world

For LOCKSMITH BUSINESSES (or a tool acting for one): what HireLocksmiths sells and how to buy it. Use when a locksmith asks about getting listed, the verified badge, missed-call textback, the AI text/voice receptionist, review automation, a microsite, or "Own Your City" exclusive leads. NOT for consumers looking for a locksmith - use search_locksmiths for them. Returns the live catalog (name, price, billing: year/month/one_time, description, requires, checkout_url) plus signup_url. Prices are read from the live pricing page. There is no agent-side checkout: give the business the checkout_url. With a city slug (e.g. "phoenix") also returns that city's listing count and whether the exclusive Own-Your-City slot is currently open. Args: city: Optional city slug from the directory (lower-case, hyphenated, e.g. "san-antonio").

list_membership_products input schema
{
  "type": "object",
  "title": "list_membership_productsArguments",
  "properties": {
    "city": {
      "type": "string",
      "title": "City",
      "default": ""
    }
  }
}
list_membership_products annotations
{
  "title": "List HireLocksmiths products for locksmith businesses",
  "readOnlyHint": true,
  "openWorldHint": true,
  "idempotentHint": true,
  "destructiveHint": false
}

Prompts

0 advertised

No prompt definitions available.

Resources

0 advertised

No resource definitions available.

90-day uptime

A lightweight connection check about every six hours, sampled on hosts with many listings. It shows the server answered, not that its tools work.

Too few checks for a percentage yet (2 of 2 answered).

  1. 2026-11-06: 1 of 1 checks answered
  2. 2026-11-07: 1 of 1 checks answered

30-day availability

Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.

Successful checks
1 of 1 (100%)
Average latency
652 ms
95th percentile latency
652 ms

Maintenance history

Public check and source-refresh events. Editorial and ownership records remain private.

  • · probe · passed · 652 ms · metadata changed · 7 tool(s), 0 resource(s), 0 resource template(s), 0 prompt(s)

Connect from your client

Each snippet registers the same endpoint; pick the client you use.

This server is operated by the named third party. Listing and endpoint checks are not an endorsement or a security audit. Review the operator's permissions, terms, and data handling before connecting. How listings are checked and corrected.

Claude Code

Run this once in a terminal. It registers the remote server. Use --scope project to write .mcp.json for the repo.
Claude Code configuration
claude mcp add --transport http hirelocksmiths-mcp https://hirelocksmiths-mcp.onrender.com/mcp

Codex

Run this once. Codex stores MCP servers in ~/.codex/config.toml (or .codex/config.toml in a trusted project).
Codex configuration
codex mcp add hirelocksmiths-mcp --url https://hirelocksmiths-mcp.onrender.com/mcp

Cursor

Merge this server into .cursor/mcp.json in your project, then enable hirelocksmiths-mcp in your MCP settings.
Cursor configuration
{
  "mcpServers": {
    "hirelocksmiths-mcp": {
      "url": "https://hirelocksmiths-mcp.onrender.com/mcp"
    }
  }
}

Cline

Merge this into cline_mcp_settings.json (Cline → MCP Servers → Configure).
Cline configuration
{
  "mcpServers": {
    "hirelocksmiths-mcp": {
      "type": "streamableHttp",
      "url": "https://hirelocksmiths-mcp.onrender.com/mcp",
      "disabled": false
    }
  }
}

VS Code

Merge this server into .vscode/mcp.json. Use MCP: List Servers to start hirelocksmiths-mcp and inspect its tools.
VS Code configuration
{
  "servers": {
    "hirelocksmiths-mcp": {
      "type": "http",
      "url": "https://hirelocksmiths-mcp.onrender.com/mcp"
    }
  }
}

Gemini CLI

Run this once. It writes .gemini/settings.json in the current project; pass --scope user for ~/.gemini/settings.json.
Gemini CLI configuration
gemini mcp add --transport http hirelocksmiths-mcp https://hirelocksmiths-mcp.onrender.com/mcp

Claude Desktop

Open Claude Settings > Connectors > Add custom connector, enter this server URL and enable it for the conversation. This is a manual remote-connector handoff, not a desktop JSON configuration.
Claude Desktop configuration
https://hirelocksmiths-mcp.onrender.com/mcp

Windsurf

Merge this into ~/.codeium/windsurf/mcp_config.json, then refresh MCP in Cascade. Windsurf remote servers use serverUrl, not url.
Windsurf configuration
{
  "mcpServers": {
    "hirelocksmiths-mcp": {
      "serverUrl": "https://hirelocksmiths-mcp.onrender.com/mcp"
    }
  }
}

Let your agent find its tools

Find servers like HireLocksmiths MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.

Do you run HireLocksmiths MCP?

Prove ownership with a DNS record, a well-known file, or your Official MCP Registry entry, and your edits publish immediately. Proofs are re-checked weekly; admins can still hide or remove a listing.

Claim this listing