Zaptu
Connect people with independent local home-service contractors. For plumbing, the person dials.
사용해야 할까요
품질 및 안전성
발견 사항 (1)
- LOWlist_supported_services에서
도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.
컨텍스트 비용
이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.
설치
원클릭 설치
`claude_desktop_config.json` 파일에 다음을 추가하세요:
{
"mcpServers": {
"zaptu": {
"url": "https://api.zaptu.ai/mcp"
}
}
}원격 엔드포인트
https://api.zaptu.ai/mcpstreamable-http할 수 있는 일
도구 목록
도구 (5)
🟢get_plumbing_call_number(zip_code)
Get the phone number a person dials to be connected with a local plumbing professional. Use this for any plumbing need (leak, clog, water heater, sewer, burst pipe). No name, phone, or consent is needed. Read what_to_tell_the_user to the person. The person must place the call themselves: never dial, autodial, transfer, or call on their behalf. Zaptu does not perform the work and this is not a booking.
입력 스키마
{
"type": "object",
"properties": {
"zip_code": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Optional US ZIP of the job site. Not required.",
"title": "Zip Code"
}
},
"title": "get_plumbing_call_numberArguments"
}출력 스키마
{
"type": "object",
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "get_plumbing_call_numberOutput"
}🟡request_home_service(service_type, zip_code, customer_name, customer_phone, consent_to_contact, ...)
Submit a home-service request (a lead, not a booking). Cleaning, pest control, HVAC, handyman, and other are collecting: the request is passed along when a buyer covers the service, and there is no live buyer yet, so do not promise a callback. Requires name, phone, ZIP, and the person's explicit consent. For plumbing, the result includes call_to_connect and call_instruction: give the person the number and have them dial it. Never place the call yourself. get_plumbing_call_number does the same without any personal details.
입력 스키마
{
"type": "object",
"properties": {
"service_type": {
"description": "Type of local service requested. For plumbing, prefer get_plumbing_call_number.",
"enum": [
"house_cleaning",
"deep_cleaning",
"move_in_out_cleaning",
"recurring_cleaning",
"pest_control",
"plumbing",
"hvac",
"handyman",
"other"
],
"title": "Service Type",
"type": "string"
},
"zip_code": {
"description": "US 5-digit ZIP for the job site.",
"title": "Zip Code",
"type": "string"
},
"customer_name": {
"description": "Customer's full name.",
"title": "Customer Name",
"type": "string"
},
"customer_phone": {
"description": "US phone number for follow-up contact about this request.",
"title": "Customer Phone",
"type": "string"
},
"consent_to_contact": {
"description": "Must be true for non-plumbing services: the person agreed to a call or text about this request.",
"title": "Consent To Contact",
"type": "boolean"
},
"city": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "City"
},
"state": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "2-letter US state code.",
"title": "State"
},
"address_line": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Address Line"
},
"bedrooms": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Bedrooms"
},
"bathrooms": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"title": "Bathrooms"
},
"square_feet": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Square Feet"
},
"home_type": {
"anyOf": [
{
"enum": [
"apartment",
"condo",
"townhouse",
"single_family",
"other"
],
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Home Type"
},
"frequency": {
"default": "one_time",
"enum": [
"one_time",
"weekly",
"biweekly",
"monthly"
],
"title": "Frequency",
"type": "string"
},
"preferred_date": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Preferred date as YYYY-MM-DD, if any.",
"title": "Preferred Date"
},
"flexible_dates": {
"default": true,
"title": "Flexible Dates",
"type": "boolean"
},
"notes": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "What the person needs, in their words.",
"title": "Notes"
},
"customer_email": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Customer Email"
},
"source_agent": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": "mcp",
"description": "Your agent or product name.",
"title": "Source Agent"
},
"dry_run": {
"default": false,
"description": "Validate only; nothing is saved or passed along.",
"title": "Dry Run",
"type": "boolean"
}
},
"required": [
"service_type",
"zip_code",
"customer_name",
"customer_phone",
"consent_to_contact"
],
"title": "request_home_serviceArguments"
}출력 스키마
{
"type": "object",
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "request_home_serviceOutput"
}⚪request_cleaning(zip_code, customer_name, customer_phone, consent_to_contact, bedrooms, ...)
Shortcut for residential house cleaning (collecting; not a booking). Same pipeline as request_home_service.
입력 스키마
{
"type": "object",
"properties": {
"zip_code": {
"description": "US 5-digit ZIP for the home.",
"title": "Zip Code",
"type": "string"
},
"customer_name": {
"description": "Customer's full name.",
"title": "Customer Name",
"type": "string"
},
"customer_phone": {
"description": "US phone number.",
"title": "Customer Phone",
"type": "string"
},
"consent_to_contact": {
"description": "Must be true: the person agreed to a call or text about this request.",
"title": "Consent To Contact",
"type": "boolean"
},
"bedrooms": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Bedrooms"
},
"bathrooms": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"title": "Bathrooms"
},
"square_feet": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Square Feet"
},
"frequency": {
"default": "one_time",
"enum": [
"one_time",
"weekly",
"biweekly",
"monthly"
],
"title": "Frequency",
"type": "string"
},
"preferred_date": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Preferred Date"
},
"notes": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Notes"
},
"customer_email": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Customer Email"
},
"city": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "City"
},
"state": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "State"
}
},
"required": [
"zip_code",
"customer_name",
"customer_phone",
"consent_to_contact"
],
"title": "request_cleaningArguments"
}출력 스키마
{
"type": "object",
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "request_cleaningOutput"
}🟢get_lead_status(lead_id)
Look up a previously submitted service request by lead_id.
입력 스키마
{
"type": "object",
"properties": {
"lead_id": {
"description": "ID returned by request_home_service.",
"title": "Lead Id",
"type": "string"
}
},
"required": [
"lead_id"
],
"title": "get_lead_statusArguments"
}출력 스키마
{
"type": "object",
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "get_lead_statusOutput"
}🟢list_supported_services
Which services are live (plumbing: the person dials a number) vs collecting, plus the rules for agents.
입력 스키마
{
"type": "object",
"properties": {},
"title": "list_supported_servicesArguments"
}출력 스키마
{
"type": "object",
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "list_supported_servicesOutput"
}커뮤니티
증거