PestPin MCP
Provides AI agents with read-only tools to verify US pest control company licenses and phone numbers against official state records, find licensed pros by city, and retrieve national cost planning ranges or specific company price cards. It facilitates homeowner introductions via links but does not submit requests directly.
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.
https://pestpin.com/mcpWhat its tools do
6 tools, grouped by the hints the server advertises. Hints are self-declared, not verified behavior.
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 pestpin.com ·
- Passed Endpoint is on the registry namespace domain ·
- Availability 1 of 1 checks passed in 30 days
What you can do with it
- Verify if a pest control company holds an active state license
- Find licensed pest control companies near a specific US city
- Get national planning cost ranges for pest control services
- Retrieve published price cards from licensed US pest control companies
Source and maintenance
Protocol and capabilities
- Server
- pestpin 1.1.0
- MCP protocol negotiated in check
- 2025-11-25
- Tools
- 6 advertised
- Resources
- Not advertised
- Resource templates
- Not advertised
- Prompts
- Not advertised
{
"tools": {
"listChanged": false
}
}Server-provided instructions
Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.
Tools
6 advertised
verify_license — Check a pest control license
Check whether a US pest control company holds a state license record. Searches PestPin's directory of official state regulator records (35 states, reprocessed from official sources on a recurring schedule; publication timing varies by regulator). Returns matched businesses with license number, state, status at PestPin's last check, the date that check happened, and the official state source link so the answer can be verified at the regulator. Use it when someone names a company and wants to know if it is licensed. A miss is not proof a company is unlicensed: coverage is 35 states, some businesses are excluded as lawn, agricultural or government records, and name spellings vary.
{
"type": "object",
"required": [
"company"
],
"properties": {
"state": {
"type": "string",
"pattern": "^[A-Za-z]{2}$",
"examples": [
"FL",
"TX"
],
"description": "Optional two-letter US state code to narrow the search, e.g. FL"
},
"company": {
"type": "string",
"examples": [
"Acme Pest Control",
"Terminix"
],
"maxLength": 100,
"minLength": 2,
"description": "Business name (or license number) to search for, e.g. Acme Pest Control"
}
},
"additionalProperties": false
}{
"type": "object",
"required": [
"matches",
"totalMatches",
"note"
],
"properties": {
"note": {
"type": "string",
"description": "The limits a reader must be told"
},
"matches": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"verifyAtOfficialSource",
"sourceCheckedOn",
"sourceCheckedOnScope",
"pestpinProfile"
],
"properties": {
"name": {
"type": "string",
"description": "Business name as the state record spells it"
},
"status": {
"type": "string",
"description": "What the record said at PestPin's last check"
},
"licenseState": {
"type": [
"string",
"null"
],
"description": "Two-letter state that issued the license"
},
"lastCheckedAt": {
"type": [
"string",
"null"
],
"description": "Same as sourceCheckedOn when the record carries its own check date"
},
"licenseNumber": {
"type": [
"string",
"null"
],
"description": "License number on the state record"
},
"pestpinProfile": {
"type": "string",
"description": "PestPin page for this record"
},
"sourceCheckedOn": {
"type": [
"string",
"null"
],
"description": "ISO date PestPin last processed the source behind this record"
},
"inDirectorySince": {
"type": "string",
"description": "ISO date the record first cleared PestPin's checks"
},
"officialSourceAgency": {
"type": [
"string",
"null"
],
"description": "Name of the state agency that publishes the record"
},
"sourceCheckedOnScope": {
"enum": [
"record",
"state"
],
"type": "string",
"description": "'record' when the date is this record's own last check, 'state' when it is the last time PestPin processed that state's source"
},
"verifyAtOfficialSource": {
"type": "string",
"description": "Official state regulator page where this record can be checked"
}
}
},
"description": "Matched license records, empty when nothing matched"
},
"totalMatches": {
"type": "integer",
"description": "How many records matched in total"
}
}
}{
"title": "Check a pest control license",
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}verify_phone — Check a pest control phone number
Check a pest control company's phone number against official state license records. Give it the number on the van, the flyer, the voicemail or the caller ID and it returns the license records that publish that exact number, each with the business name, license number, issuing state, the official state source link and the date PestPin last processed that source. Use it when someone has a number and wants to see which license records publish it, before they hire or let anyone in. The state lookups PestPin works with are searched by business name or license number, so a number on its own is normally a dead end; this covers 35 states. The match is exact on ten digits and never partial, so a number one digit different is a different company and is never offered. A match means a license record publishes that number: it does not say who answered, whether the caller works for that company, or anything about insurance or work quality. No match is not proof anyone is unlicensed: coverage is 35 states, about half of all listings publish no phone at all, and a licensed company can publish a number PestPin does not hold. Records from states that license the individual operator rather than a firm are never returned here, because a phone number is not a way to look up a private person; they are counted in withheld and the license-number lookup returns them. It looks up a business's published number, never a person's own.
{
"type": "object",
"required": [
"businessPhone"
],
"properties": {
"businessPhone": {
"type": "string",
"examples": [
"(713) 555-0100",
"+1 713-555-0100"
],
"maxLength": 64,
"minLength": 7,
"description": "The pest control company's published phone number, e.g. 713-555-0100. Dashes, brackets, spaces, a leading 1 and an extension are all accepted. A business's number, not the person's own."
}
},
"additionalProperties": false
}{
"type": "object",
"required": [
"matches",
"totalMatches",
"note"
],
"properties": {
"note": {
"type": "string",
"description": "The limits a reader must be told"
},
"matches": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"verifyAtOfficialSource",
"sourceCheckedOn",
"sourceCheckedOnScope",
"pestpinProfile"
],
"properties": {
"city": {
"type": [
"string",
"null"
],
"description": "City and state of the record location"
},
"name": {
"type": "string",
"description": "Business name as the state record spells it"
},
"status": {
"type": "string",
"description": "What the record said at PestPin's last check"
},
"licenseState": {
"type": [
"string",
"null"
],
"description": "Two-letter state that issued the license"
},
"licenseNumber": {
"type": [
"string",
"null"
],
"description": "License number on the state record"
},
"pestpinProfile": {
"type": "string",
"description": "PestPin page for this record"
},
"sourceCheckedOn": {
"type": [
"string",
"null"
],
"description": "ISO date PestPin last processed the source behind this record"
},
"licenseExpiresOn": {
"type": [
"string",
"null"
],
"description": "Expiry exactly as published, or null where the state publishes none"
},
"officialSourceAgency": {
"type": [
"string",
"null"
],
"description": "Name of the state agency that publishes the record"
},
"sourceCheckedOnScope": {
"enum": [
"record",
"state"
],
"type": "string",
"description": "'record' when the date is this record's own last check, 'state' when it is the last time PestPin processed that state's source"
},
"verifyAtOfficialSource": {
"type": "string",
"description": "Official state regulator page where this record can be checked"
}
}
},
"description": "License records publishing that number, empty when none does"
},
"withheld": {
"type": "integer",
"description": "Matching records deliberately left out because that state licenses the individual operator rather than a firm. Zero when nothing was withheld."
},
"phoneNumber": {
"type": [
"string",
"null"
],
"description": "The ten digits the number was read as"
},
"totalMatches": {
"type": "integer",
"description": "How many records publish that number"
}
}
}{
"title": "Check a pest control phone number",
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}find_licensed_pros — Find licensed pest control companies
Find licensed pest control companies near a US city. Returns up to 8 businesses that hold a state license record covering that city and pest type, each with its license number, published phone number, the official state source link, and the date PestPin last processed that source. Also returns a link to the full list, where a homeowner can call any company for free or send one request that is offered to a single company at a time and never resold. Listings are matched public records, not recommendations or a ranking, and most businesses have not confirmed services or coverage with PestPin.
{
"type": "object",
"required": [
"city",
"state"
],
"properties": {
"city": {
"type": "string",
"examples": [
"Houston",
"Orlando"
],
"maxLength": 60,
"minLength": 2,
"description": "City name, e.g. Houston. A city name only, never a street address."
},
"pest": {
"type": "string",
"examples": [
"termites",
"bed bugs"
],
"maxLength": 40,
"description": "Optional pest type, e.g. termites, bed bugs, rodents, ants, cockroaches, mosquitoes, wildlife. Defaults to general pest control."
},
"state": {
"type": "string",
"pattern": "^[A-Za-z]{2}$",
"examples": [
"TX",
"FL"
],
"description": "Two-letter US state code, e.g. TX"
}
},
"additionalProperties": false
}{
"type": "object",
"required": [
"companies",
"note"
],
"properties": {
"note": {
"type": "string",
"description": "The limits a reader must be told"
},
"pest": {
"type": "string",
"description": "Pest type the answer covers"
},
"location": {
"type": "string",
"description": "City and state the answer covers"
},
"companies": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"verifyAtOfficialSource",
"sourceCheckedOn",
"sourceCheckedOnScope",
"pestpinProfile"
],
"properties": {
"name": {
"type": "string",
"description": "Business name as the state record spells it"
},
"phone": {
"type": [
"string",
"null"
],
"description": "Published phone number, when the record has one"
},
"licenseState": {
"type": [
"string",
"null"
],
"description": "Two-letter state that issued the license"
},
"licenseNumber": {
"type": [
"string",
"null"
],
"description": "License number on the state record"
},
"pestpinProfile": {
"type": "string",
"description": "PestPin page for this record"
},
"sourceCheckedOn": {
"type": [
"string",
"null"
],
"description": "ISO date PestPin last processed the source behind this record"
},
"officialSourceAgency": {
"type": [
"string",
"null"
],
"description": "Name of the state agency that publishes the record"
},
"sourceCheckedOnScope": {
"enum": [
"record",
"state"
],
"type": "string",
"description": "'record' when the date is this record's own last check, 'state' when it is the last time PestPin processed that state's source"
},
"verifyAtOfficialSource": {
"type": "string",
"description": "Official state regulator page where this record can be checked"
}
}
}
},
"fullListAndFreeRequest": {
"type": "string",
"description": "PestPin page with the full list and the free request form"
},
"totalRecordMatchedCompanies": {
"type": "integer",
"description": "How many license-record companies match, before the 8-row cap"
}
}
}{
"title": "Find licensed pest control companies",
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}get_pest_cost — Pest control cost range
US national planning cost range for a pest control service, with the factors that move the price. This is an editorial planning range, not a quote and not a measured average; the actual price for a job comes from a written local quote.
{
"type": "object",
"required": [
"pest"
],
"properties": {
"pest": {
"type": "string",
"examples": [
"termite control",
"bed bugs"
],
"maxLength": 40,
"minLength": 2,
"description": "Pest or service, e.g. termite control, bed bugs"
}
},
"additionalProperties": false
}{
"type": "object",
"required": [
"pest",
"nationalPlanningRangeUsd",
"note"
],
"properties": {
"note": {
"type": "string"
},
"pest": {
"type": "string"
},
"answer": {
"type": "string",
"description": "Short direct answer a person can read out"
},
"details": {
"type": "string",
"description": "PestPin cost page for this pest"
},
"priceFactors": {
"type": "array",
"items": {
"type": "string"
}
},
"nationalPlanningRangeUsd": {
"type": "object",
"required": [
"low",
"high",
"typical"
],
"properties": {
"low": {
"type": "integer"
},
"high": {
"type": "integer"
},
"typical": {
"type": "integer"
}
}
}
}
}{
"title": "Pest control cost range",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}get_price_card — Prices a pest control company publishes
The prices a licensed US pest control company has published on its own PestPin listing, as ranges per service (for example a one-time general treatment, a quarterly plan, a termite inspection, bed bug treatment per room), with the date the company last changed them and when it can usually start. Entered by the company's verified owner, never by PestPin; companies that have not published prices return no match, and that is not a statement about their prices. Use it to answer 'what does <company> charge' without phoning them. The company confirms the exact price for a job.
{
"type": "object",
"required": [
"company"
],
"properties": {
"state": {
"type": "string",
"examples": [
"FL"
],
"maxLength": 2,
"minLength": 2,
"description": "Optional two-letter state to narrow the match"
},
"company": {
"type": "string",
"examples": [
"Val's Pest Solutions"
],
"maxLength": 120,
"minLength": 2,
"description": "Company name, or part of it"
}
},
"additionalProperties": false
}{
"type": "object",
"required": [
"matches",
"note"
],
"properties": {
"note": {
"type": "string"
},
"matches": {
"type": "array",
"items": {
"type": "object",
"required": [
"company",
"updatedOn",
"prices",
"answer",
"pestpinProfile"
],
"properties": {
"answer": {
"type": "string",
"description": "One sentence a person can read out"
},
"prices": {
"type": "array",
"items": {
"type": "object",
"required": [
"service",
"unit",
"lowUsd",
"highUsd"
],
"properties": {
"note": {
"type": [
"string",
"null"
]
},
"unit": {
"type": "string"
},
"lowUsd": {
"type": "integer"
},
"highUsd": {
"type": "integer"
},
"service": {
"type": "string"
}
}
}
},
"company": {
"type": "string"
},
"updatedOn": {
"type": "string",
"description": "ISO date the company last changed its prices"
},
"licenseState": {
"type": [
"string",
"null"
]
},
"usuallyStarts": {
"type": [
"string",
"null"
]
},
"pestpinProfile": {
"type": "string"
}
}
}
}
}
}{
"title": "Prices a pest control company publishes",
"readOnlyHint": true,
"openWorldHint": true,
"idempotentHint": true,
"destructiveHint": false
}get_intro_request_link — Get a free introduction request link
Get the link that starts a free request for pest control help in a US city. The request goes to one licensed company at a time, never to several at once and never resold, and the homeowner pays nothing at any point. This tool only builds and returns the link plus what happens next; it sends nothing and files nothing. The person has to open the link and agree to be contacted themselves, because US law requires that consent to be their own act and nobody can give it for them.
{
"type": "object",
"required": [
"city",
"state"
],
"properties": {
"city": {
"type": "string",
"examples": [
"Houston",
"Tampa"
],
"maxLength": 60,
"minLength": 2,
"description": "City where the help is needed, e.g. Houston. A city name only, never a street address."
},
"pest": {
"type": "string",
"examples": [
"termites",
"rodents"
],
"maxLength": 40,
"description": "Optional pest type, e.g. termites, bed bugs, rodents. Defaults to general pest control."
},
"state": {
"type": "string",
"pattern": "^[A-Za-z]{2}$",
"examples": [
"TX",
"FL"
],
"description": "Two-letter US state code, e.g. TX"
}
},
"additionalProperties": false
}{
"type": "object",
"required": [
"requestLink",
"homeownerPays",
"consentNote",
"note"
],
"properties": {
"note": {
"type": "string"
},
"pest": {
"type": "string"
},
"location": {
"type": "string"
},
"howItWorks": {
"type": "array",
"items": {
"type": "string"
}
},
"consentNote": {
"type": "string",
"description": "Why the person, not an assistant, has to send it"
},
"requestLink": {
"type": [
"string",
"null"
],
"description": "Link the homeowner opens to send the request, or null when no company is listed there"
},
"homeownerPays": {
"type": "string",
"description": "What this costs the homeowner"
},
"listedCompanyCount": {
"type": "integer",
"description": "License-record companies PestPin can offer the request to"
},
"fullListAndFreeRequest": {
"type": "string",
"description": "PestPin page with the full list of companies"
}
}
}{
"title": "Get a free introduction request link",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}Prompts
Not advertised
Resources
Not advertised
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.
- 2026-11-06: 1 of 1 checks answered
- 2026-11-07: 2 of 2 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
- 833 ms
- 95th percentile latency
- 833 ms
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · probe · passed · 833 ms · metadata changed · 6 tool(s)
Connect from your client
Each snippet registers the same endpoint; pick the client you use.
Claude Code
claude mcp add --transport http pestpin-mcp https://pestpin.com/mcpCodex
codex mcp add pestpin-mcp --url https://pestpin.com/mcpCursor
{
"mcpServers": {
"pestpin-mcp": {
"url": "https://pestpin.com/mcp"
}
}
}Cline
{
"mcpServers": {
"pestpin-mcp": {
"type": "streamableHttp",
"url": "https://pestpin.com/mcp",
"disabled": false
}
}
}VS Code
{
"servers": {
"pestpin-mcp": {
"type": "http",
"url": "https://pestpin.com/mcp"
}
}
}Gemini CLI
gemini mcp add --transport http pestpin-mcp https://pestpin.com/mcpClaude Desktop
https://pestpin.com/mcpWindsurf
{
"mcpServers": {
"pestpin-mcp": {
"serverUrl": "https://pestpin.com/mcp"
}
}
}Let your agent find its tools
Find servers like PestPin MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.
Other crm, sales, and marketing servers
Do you run PestPin 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.