Servidor MCP

Tradehand

io.github.Humanleap/tradehand
Negocio y operaciones Público y accesible MCP 2025-11-25

Qué hace este MCP

Searches a UK directory of tradespeople, retrieves public trader and service details, and provides public website content.

browse_trades
List Tradehand's canonical UK trades. Instant quote is available before a trader is assigned.
Solo lectura
Esquema de entrada
{'type': 'object', 'properties': {'limit': {'type': 'integer', 'default': 20, 'maximum': 20, 'minimum': 1}, 'query': {'type': 'string'}, 'cursor': {'type': 'string'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'required': ['schemaVersion', 'outcome', 'data', 'missingFacts', 'blockers', 'nextActions', 'continuation'], 'properties': {'data': {'type': 'object'}, 'outcome': {'enum': ['ready', 'needs_input', 'blocked', 'pending', 'completed'], 'type': 'string'}, 'blockers': {'type': 'array', 'items': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'string'}, 'message': {'type': 'string'}}, 'additionalProperties': False}}, 'revision': {'type': 'string'}, 'nextActions': {'type': 'array', 'items': {'type': 'object', 'required': ['code', 'label', 'requiredFacts'], 'properties': {'code': {'type': 'string'}, 'label': {'type': 'string'}, 'requiredFacts': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}}, 'continuation': {'type': ['object', 'null'], 'properties': {'url': {'type': 'string', 'format': 'uri'}, 'kind': {'enum': ['first_party'], 'type': 'string'}}, 'additionalProperties': False}, 'missingFacts': {'type': 'array', 'items': {'type': 'object', 'required': ['field', 'question'], 'properties': {'field': {'type': 'string'}, 'question': {'type': 'string'}}, 'additionalProperties': False}}, 'schemaVersion': {'type': 'integer', 'const': 1}}, 'additionalProperties': False}
get_agent_discovery
Return the public agent discovery endpoints, content policy, and canonical URLs for Tradehand.
Solo lectura
Esquema de entrada
{'type': 'object', 'properties': {}, 'additionalProperties': False}
get_page_markdown
Fetch a public Tradehand website page as clean markdown for agent reading and summarisation.
Solo lectura
Esquema de entrada
{'type': 'object', 'required': ['path'], 'properties': {'path': {'type': 'string', 'default': '/', 'description': 'Public path on tradehand.com, for example /pricing or /for-trades.'}}, 'additionalProperties': False}
get_service_options
Return the listing's actual catalogue services when one exists. Does not reserve a slot or claim bookability.
Solo lectura Acceso externo
Esquema de entrada
{'type': 'object', 'required': ['publicReference'], 'properties': {'publicReference': {'type': 'string'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'required': ['schemaVersion', 'outcome', 'data', 'missingFacts', 'blockers', 'nextActions', 'continuation'], 'properties': {'data': {'type': 'object'}, 'outcome': {'enum': ['ready', 'needs_input', 'blocked', 'pending', 'completed'], 'type': 'string'}, 'blockers': {'type': 'array', 'items': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'string'}, 'message': {'type': 'string'}}, 'additionalProperties': False}}, 'revision': {'type': 'string'}, 'nextActions': {'type': 'array', 'items': {'type': 'object', 'required': ['code', 'label', 'requiredFacts'], 'properties': {'code': {'type': 'string'}, 'label': {'type': 'string'}, 'requiredFacts': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}}, 'continuation': {'type': ['object', 'null'], 'properties': {'url': {'type': 'string', 'format': 'uri'}, 'kind': {'enum': ['first_party'], 'type': 'string'}}, 'additionalProperties': False}, 'missingFacts': {'type': 'array', 'items': {'type': 'object', 'required': ['field', 'question'], 'properties': {'field': {'type': 'string'}, 'question': {'type': 'string'}}, 'additionalProperties': False}}, 'schemaVersion': {'type': 'integer', 'const': 1}}, 'additionalProperties': False}
get_trader
Return a public directory profile by listing slug. Instant quote remains available even when the listing has no purchasable catalogue. Does not expose phone, street address or coordinates.
Solo lectura Acceso externo
Esquema de entrada
{'type': 'object', 'required': ['publicReference'], 'properties': {'publicReference': {'type': 'string', 'description': 'Public directory listing slug from search_traders.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'required': ['schemaVersion', 'outcome', 'data', 'missingFacts', 'blockers', 'nextActions', 'continuation'], 'properties': {'data': {'type': 'object'}, 'outcome': {'enum': ['ready', 'needs_input', 'blocked', 'pending', 'completed'], 'type': 'string'}, 'blockers': {'type': 'array', 'items': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'string'}, 'message': {'type': 'string'}}, 'additionalProperties': False}}, 'revision': {'type': 'string'}, 'nextActions': {'type': 'array', 'items': {'type': 'object', 'required': ['code', 'label', 'requiredFacts'], 'properties': {'code': {'type': 'string'}, 'label': {'type': 'string'}, 'requiredFacts': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}}, 'continuation': {'type': ['object', 'null'], 'properties': {'url': {'type': 'string', 'format': 'uri'}, 'kind': {'enum': ['first_party'], 'type': 'string'}}, 'additionalProperties': False}, 'missingFacts': {'type': 'array', 'items': {'type': 'object', 'required': ['field', 'question'], 'properties': {'field': {'type': 'string'}, 'question': {'type': 'string'}}, 'additionalProperties': False}}, 'schemaVersion': {'type': 'integer', 'const': 1}}, 'additionalProperties': False}
read_okf_concept
Read one file of the Tradehand Open Knowledge Format bundle under /okf as raw markdown, YAML frontmatter intact. Start at /okf/index.md for the list of concepts.
Solo lectura
Esquema de entrada
{'type': 'object', 'required': ['path'], 'properties': {'path': {'type': 'string', 'default': '/okf/index.md', 'description': 'Bundle path under /okf, for example /okf/costs/eicr.md, /okf/costs/ or /okf/log.md.'}}, 'additionalProperties': False}
search_traders
Find current public Tradehand directory listings by trade and optional UK postcode or place. Returns claim state, listing-source freshness, accreditation names, and canonical profile URLs; it does not claim availability, expose mixed-source ratings, or contact anyone.
Solo lectura Acceso externo
Esquema de entrada
{'type': 'object', 'required': ['trade'], 'properties': {'limit': {'type': 'integer', 'default': 10, 'maximum': 20, 'minimum': 1}, 'trade': {'type': 'string', 'description': 'Trade name or directory slug, for example Electricians, plumber, or roofers.'}, 'location': {'type': 'string', 'description': 'Optional UK town, city, or borough; do not combine with postcode.'}, 'postcode': {'type': 'string', 'description': 'Optional full UK postcode, for example CO1 1AA.'}}, 'additionalProperties': False}
Esquema de salida
{'type': 'object', 'required': ['status', 'trade', 'requestedLocation', 'resolvedArea', 'total', 'returned', 'truncated', 'coverageNote', 'listings'], 'properties': {'total': {'type': 'integer', 'minimum': 0}, 'trade': {'type': 'object', 'required': ['value', 'label', 'slug'], 'properties': {'slug': {'type': 'string'}, 'label': {'type': 'string'}, 'value': {'type': 'string'}}, 'additionalProperties': False}, 'status': {'enum': ['ok', 'empty'], 'type': 'string'}, 'listings': {'type': 'array', 'items': {'type': 'object', 'required': ['publicReference', 'name', 'trade', 'location', 'claimed', 'accreditations', 'sourceRegister', 'sourceCheckedAt', 'profileUrl'], 'properties': {'name': {'type': 'string'}, 'trade': {'type': 'string'}, 'claimed': {'type': 'boolean'}, 'location': {'type': 'string'}, 'profileUrl': {'type': 'string', 'format': 'uri'}, 'accreditations': {'type': 'array', 'items': {'type': 'string'}}, 'sourceRegister': {'type': ['string', 'null']}, 'publicReference': {'type': 'string', 'description': 'Public directory listing slug for get_trader.'}, 'sourceCheckedAt': {'type': ['string', 'null']}}, 'additionalProperties': False}}, 'returned': {'type': 'integer', 'minimum': 0}, 'truncated': {'type': 'boolean'}, 'coverageNote': {'type': 'string'}, 'resolvedArea': {'type': 'object', 'required': ['name', 'path'], 'properties': {'name': {'type': 'string'}, 'path': {'type': ['string', 'null'], 'format': 'uri'}}, 'additionalProperties': False}, 'requestedLocation': {'type': ['string', 'null']}}, 'additionalProperties': False}
Añadido
read_okf_concept
2 de October de 2026 a las 02:40
Añadido
get_agent_discovery
2 de October de 2026 a las 02:40
Añadido
get_page_markdown
2 de October de 2026 a las 02:40
Añadido
get_service_options
2 de October de 2026 a las 02:40
Añadido
get_trader
2 de October de 2026 a las 02:40
Añadido
search_traders
2 de October de 2026 a las 02:40
Añadido
browse_trades
2 de October de 2026 a las 02:40