dfwmetro.net MCP
A community MCP server for the dfwmetro.net directory that allows AI agents to find verified DFW home-service businesses, search listings by trade or verification status, and submit new bookable business listings for review.
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://dfwmetro.net/mcpWhat you can do with it
- Search for verified home service businesses in Dallas-Fort Worth
- Submit new online-bookable business listings to the directory
- Find businesses with checked trade licenses and insurance
Source and maintenance
- Maintenance checked
Protocol and capabilities
- Server
- dfwmetro-directory 1.2.0
- MCP protocol
- 2024-11-05
- Tools
- 3 advertised
- Resources
- Not advertised
- Resource templates
- Not advertised
- Prompts
- Not advertised
{
"tools": {}
}Tools
3 advertised
submit_listing
Submit a DFW service business to the dfwmetro.net verified directory. The business MUST be genuinely online-bookable: booking_url must point at a real scheduling flow (date/time picker or booking widget) — quote forms, contact forms, phone-only, and login-gated flows fail verification. You do not need to categorize it yourself: describe what the business does in 'description' and the trade is assigned automatically (send 'trade' only if you are sure of the category id). Find the business's real street address BEFORE submitting — check its website (footer/contact page) or the JSON-LD LocalBusiness block on its site or booking page — and send it as 'street_address': it drives the exact map pin. When the trade requires a state license (plumbing, electrical, HVAC, personal & specialty services), also send 'license_number' (e.g. 'TACLA40925C', 'TECL 12345', 'M-12345') — the server pre-checks the format and the human desk verifies it against the state registry. You may also send 'starting_price_cents' (integer cents, e.g. 8500 = $85.00, shown publicly as 'from $X') and 'price_note' (short qualifier, e.g. 'per visit'). Accepted submissions start as NOT_YET_VERIFIED and pass human review before going live.
{
"type": "object",
"title": "dfwmetro.net listing submission",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"legal_name",
"city",
"booking_url"
],
"properties": {
"dba": {
"type": "string",
"maxLength": 200,
"description": "Trade/DBA name shown publicly. Defaults to legal_name."
},
"city": {
"type": "string",
"maxLength": 200,
"description": "DFW city, e.g. 'Plano'."
},
"phone": {
"type": "string",
"maxLength": 40
},
"trade": {
"type": "string",
"description": "OPTIONAL. Category id from https://dfwmetro.net/categories.json (e.g. 'plumbing', 'electrical', 'personal_specialty'). Pre-v2 ids (e.g. 'nail-salon') are accepted and stored as their v2 industry. If omitted, the server assigns the trade from your description — you do not need to get this right yourself."
},
"website": {
"type": "string",
"maxLength": 300
},
"zip_code": {
"type": "string",
"maxLength": 20
},
"legal_name": {
"type": "string",
"maxLength": 200,
"description": "Legal business name."
},
"price_note": {
"type": "string",
"maxLength": 120,
"description": "OPTIONAL. Short qualifier shown next to the starting price, e.g. 'per visit', 'up to shoulder length'."
},
"booking_url": {
"type": "string",
"format": "uri",
"maxLength": 500,
"description": "REQUIRED. Direct URL of the business's real online scheduling flow (date/time picker or booking widget). Generic contact/quote forms, phone-only, and login-gated flows fail verification — do not submit them."
},
"description": {
"type": "string",
"maxLength": 1000,
"description": "What the business DOES, in plain words (e.g. 'mobile piano tuning, in-home appointments'). Used to categorize the listing when trade is omitted, and shown to the verification desk. The more specific, the better the categorization."
},
"service_area": {
"type": "string",
"maxLength": 200,
"description": "Defaults to 'DFW'."
},
"submitted_by": {
"type": "string",
"pattern": "^(agent:[A-Za-z0-9._-]{1,64}|human)$",
"description": "Agent identifier, e.g. 'agent:my-booking-bot'. Defaults to 'agent:unknown'."
},
"subcategories": {
"type": "array",
"items": {
"type": "string",
"maxLength": 80
},
"maxItems": 20,
"description": "Must match the trade's subcategory labels in categories.json."
},
"license_number": {
"type": "string",
"maxLength": 60,
"description": "STRONGLY RECOMMENDED when the trade requires a state license (plumbing, electrical, HVAC, personal & specialty services). The trade's license number, e.g. 'TACLA40925C' (HVAC), 'TECL 12345' (electrical), 'M-12345' (plumbing). The server checks the format against the Texas pattern; the human desk verifies it against the state registry before VERIFIED."
},
"street_address": {
"type": "string",
"maxLength": 200,
"description": "STRONGLY RECOMMENDED. The business's real street address, e.g. '2818 Satsuma Drive'. Find it on the business's website (footer / contact page) or in the JSON-LD LocalBusiness block on its site or booking page BEFORE submitting. It drives the exact map pin; without it the listing gets only a city-level dot. Not required — submissions without it are still accepted."
},
"years_in_business": {
"type": "integer",
"maximum": 200,
"minimum": 0
},
"license_type_detail": {
"type": "string",
"maxLength": 120,
"description": "Free-text license detail, e.g. 'Master Plumber' or 'Class A ACR Contractor'. Shown to the verification desk alongside license_number."
},
"starting_price_cents": {
"type": "integer",
"maximum": 100000000,
"minimum": 0,
"description": "OPTIONAL. Starting price in cents, e.g. 8500 = $85.00. Shown publicly as 'from $X'. Omit when pricing varies too much to quote a starting point."
}
},
"description": "Submit a DFW service business to the dfwmetro.net verified directory. Every submission starts as NOT_YET_VERIFIED and must pass human verification-desk review before appearing as verified. status is always forced to NOT_YET_VERIFIED and license_required is derived from the directory taxonomy — any values you send for those fields are ignored. trade is optional: omit it and describe the business in 'description' and the server assigns the category deterministically. Unknown extra fields are ignored.",
"additionalProperties": true
}find_verified_listings
Find VERIFIED service businesses in the dfwmetro.net directory for booking. Only listings that passed human verification-desk review are returned — this tool can never surface unverified businesses and can never change verification status. Each result includes the business's booking_url plus machine-booking capability and endpoint health when known. Use booking_url for human-style booking flows; use capability endpoints only when present. Kept for backward compatibility; new integrations should prefer find_listings with verified_only:true.
{
"type": "object",
"title": "dfwmetro.net listing discovery",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"city": {
"type": "string",
"description": "DFW city filter, e.g. 'Plano'."
},
"limit": {
"type": "integer",
"default": 20,
"maximum": 50,
"minimum": 1,
"description": "Max listings to return (1-50)."
},
"trade": {
"type": "string",
"description": "Category id from https://dfwmetro.net/categories.json, e.g. 'plumbing'. Legacy display labels ('Plumbing', 'Heating & Air Conditioning', 'Electrical') are also accepted and normalized."
},
"subcategory": {
"type": "string",
"description": "Subcategory label filter, e.g. 'Drain cleaning'."
},
"verified_only": {
"type": "boolean",
"default": false,
"description": "True returns only VERIFIED listings (the strict premium shelf); false (default) returns all listings with verification status labeled, VERIFIED ranked first."
}
},
"description": "Find genuinely online-bookable service businesses in the dfwmetro.net directory. Every listing is returned with its verification status labeled: VERIFIED businesses (human verification-desk reviewed) rank first and carry machine-booking capability and endpoint health; NOT_YET_VERIFIED businesses are clearly labeled — trust_level 'pending' means awaiting desk review and ranks last — and carry machine_ready:false. Pass verified_only:true for the strict VERIFIED-only shelf. Nothing here can change verification status.",
"additionalProperties": true
}find_listings
Find service businesses in the dfwmetro.net directory for booking. Returns every listing with its verification status labeled: VERIFIED businesses (human verification-desk reviewed) rank first and carry machine-booking capability and endpoint health; NOT_YET_VERIFIED businesses are clearly labeled, ranked by automated pre-check score, and carry machine_ready:false. Pass verified_only:true for the strict VERIFIED-only shelf. This tool can never change verification status.
{
"type": "object",
"title": "dfwmetro.net listing discovery",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"city": {
"type": "string",
"description": "DFW city filter, e.g. 'Plano'."
},
"limit": {
"type": "integer",
"default": 20,
"maximum": 50,
"minimum": 1,
"description": "Max listings to return (1-50)."
},
"trade": {
"type": "string",
"description": "Category id from https://dfwmetro.net/categories.json, e.g. 'plumbing'. Legacy display labels ('Plumbing', 'Heating & Air Conditioning', 'Electrical') are also accepted and normalized."
},
"subcategory": {
"type": "string",
"description": "Subcategory label filter, e.g. 'Drain cleaning'."
},
"verified_only": {
"type": "boolean",
"default": false,
"description": "True returns only VERIFIED listings (the strict premium shelf); false (default) returns all listings with verification status labeled, VERIFIED ranked first."
}
},
"description": "Find genuinely online-bookable service businesses in the dfwmetro.net directory. Every listing is returned with its verification status labeled: VERIFIED businesses (human verification-desk reviewed) rank first and carry machine-booking capability and endpoint health; NOT_YET_VERIFIED businesses are clearly labeled — trust_level 'pending' means awaiting desk review and ranks last — and carry machine_ready:false. Pass verified_only:true for the strict VERIFIED-only shelf. Nothing here can change verification status.",
"additionalProperties": true
}Prompts
Not advertised
Resources
Not advertised
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
- 458 ms
- 95th percentile latency
- 458 ms
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · probe · passed · 458 ms · metadata changed · 3 tool(s)
Connect from your client
Each snippet registers the same endpoint; pick the client you use.
Claude Code
claude mcp add --transport http dfwmetro-net-mcp https://dfwmetro.net/mcpCodex
codex mcp add dfwmetro-net-mcp --url https://dfwmetro.net/mcpCursor
{
"mcpServers": {
"dfwmetro-net-mcp": {
"url": "https://dfwmetro.net/mcp"
}
}
}Cline
{
"mcpServers": {
"dfwmetro-net-mcp": {
"type": "streamableHttp",
"url": "https://dfwmetro.net/mcp",
"disabled": false
}
}
}VS Code
{
"servers": {
"dfwmetro-net-mcp": {
"type": "http",
"url": "https://dfwmetro.net/mcp"
}
}
}Gemini CLI
gemini mcp add --transport http dfwmetro-net-mcp https://dfwmetro.net/mcpClaude Desktop
{
"mcpServers": {
"dfwmetro-net-mcp": {
"url": "https://dfwmetro.net/mcp"
}
}
}Windsurf
{
"mcpServers": {
"dfwmetro-net-mcp": {
"serverUrl": "https://dfwmetro.net/mcp"
}
}
}Let your agent find its tools
Find servers like dfwmetro.net MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.