Loqal

Profissionais de serviços locais no Brasil: encanador, eletricista, diarista e +270 tipos

¿Debería usar esto?

Calidad y seguridad

B
Calidad de la descripción
73%
Integridad del esquema
84%
Calidad de los nombres
93%
Riesgo de envenenamiento
40%
Coincidencia de permisos
100%
Cumplimiento del protocolo
100%

Hallazgos (9)

  • HIGHTool poisoning patterns detected
  • MEDIUMTool 'check_coverage' description contains placeholder texten check_coverage
  • LOWTool 'search_services' description lacks action verben search_services
  • LOWTool 'check_coverage' description lacks action verben check_coverage
  • LOWTool 'get_request' description lacks action verben get_request
  • LOWTool 'rate_service' description lacks action verben rate_service
  • INFOTool description contains placeholder or incomplete texten check_coverage
  • INFOTool description contains placeholder or incomplete texten get_request
  • INFOTool description contains placeholder or incomplete texten rate_service

Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.

Costo de contexto

~2,380Tokens (definiciones de herramientas)
~2.0 KBTamaño de respuesta típico
Impacto moderado en la atención (1.86% del contexto de 128k)

Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.

Instalar

Instalación con un clic

Agrega esto a tu archivo `claude_desktop_config.json`:

{
  "mcpServers": {
    "loqal": {
      "url": "https://api.loqal.com.br/mcp"
    }
  }
}

Puntos de conexión remotos

https://api.loqal.com.br/mcpstreamable-http

Qué puede hacer

Inventario de herramientas

Herramientas (9)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
🟢search_services(need)

Mapeia uma necessidade em linguagem natural ("cano da pia vazando", "limpar ar-condicionado") para os serviços da Loqal. Use quando não estiver claro qual profissional resolve.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "need": {
      "type": "string",
      "minLength": 2,
      "description": "A necessidade, com as palavras do usuário"
    }
  },
  "required": [
    "need"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "matches": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "niche": {
            "type": "string"
          },
          "niche_slug": {
            "type": "string"
          },
          "service": {
            "type": [
              "string",
              "null"
            ]
          },
          "service_key": {
            "type": [
              "string",
              "null"
            ]
          },
          "score": {
            "type": "number"
          }
        },
        "required": [
          "niche",
          "niche_slug",
          "service",
          "service_key",
          "score"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "matches"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢list_categories(sector, where)

Setores e nichos da Loqal (285 tipos de serviço), com quantos profissionais reais atendem. Filtre por setor (slug) ou por lugar para ver só o que existe ali.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "sector": {
      "description": "slug do setor, ex.: reformas-e-reparos",
      "type": "string"
    },
    "where": {
      "type": "string"
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢check_coverage(where, need)

Diz se a Loqal reconhece um lugar (bairro, cidade, UF em todo o Brasil) e quantos profissionais reais atendem ali, no geral ou para uma necessidade. Use antes de prometer algo ao usuário.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "where": {
      "type": "string",
      "minLength": 2
    },
    "need": {
      "type": "string"
    }
  },
  "required": [
    "where"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢find_providers(need, niche, service, where, lat, ...)

Encontra profissionais reais perto de um lugar para uma necessidade. Ex.: need="instalar 3 ventiladores", where="Tijuca, Rio de Janeiro", min_rating=4.5, max_price_brl=350. Retorna perfis estruturados (nota, avaliações, distância, preço quando informado) e uma tela com cards.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "need": {
      "type": "string",
      "minLength": 2,
      "description": "O que o usuário precisa, com as palavras dele"
    },
    "niche": {
      "description": "Slug exato do tipo de profissional (de list_categories), ex.: \"motorista\", \"pedreiro\". Quando informado, vence a interpretação do texto.",
      "type": "string"
    },
    "service": {
      "description": "Subcategoria exata, a service_key de search_services (ex.: \"piscina/limpeza\"). Prioriza quem faz exatamente isso, sem esconder o resto do tipo.",
      "type": "string"
    },
    "where": {
      "description": "Bairro e/ou cidade, ex.: \"Tijuca, Rio de Janeiro\" ou \"Pinheiros SP\"",
      "type": "string"
    },
    "lat": {
      "description": "Latitude (busca geolocalizada: use com lng quando o usuário compartilhar a localização)",
      "type": "number"
    },
    "lng": {
      "type": "number"
    },
    "radius_km": {
      "description": "Raio da busca em km a partir de lat/lng ou do lugar (padrão: 5 a 15 km conforme o lugar)",
      "type": "number",
      "minimum": 1,
      "maximum": 80
    },
    "min_rating": {
      "type": "number",
      "minimum": 0,
      "maximum": 5
    },
    "min_reviews": {
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    },
    "max_price_brl": {
      "description": "Mantém quem não informou preço (cobra por orçamento)",
      "type": "number",
      "exclusiveMinimum": 0
    },
    "emergency_24h": {
      "description": "Só quem atende 24 horas / emergência",
      "type": "boolean"
    },
    "sort": {
      "type": "string",
      "enum": [
        "relevance",
        "distance",
        "rating"
      ]
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 20
    }
  },
  "required": [
    "need"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "understood": {
      "type": "object",
      "properties": {
        "niche": {
          "type": [
            "string",
            "null"
          ]
        },
        "service": {
          "type": [
            "string",
            "null"
          ]
        },
        "place": {
          "type": [
            "string",
            "null"
          ]
        },
        "urgent": {
          "type": "boolean"
        },
        "confidence": {
          "type": "number"
        }
      },
      "required": [
        "niche",
        "service",
        "place",
        "urgent",
        "confidence"
      ],
      "additionalProperties": false
    },
    "total": {
      "type": "number"
    },
    "providers": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "slug": {
            "type": "string"
          },
          "provider": {
            "type": "string"
          },
          "category": {
            "type": [
              "string",
              "null"
            ]
          },
          "services": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "service_area": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "city": {
            "type": [
              "string",
              "null"
            ]
          },
          "state": {
            "type": [
              "string",
              "null"
            ]
          },
          "distance_km": {
            "type": [
              "number",
              "null"
            ]
          },
          "location": {
            "anyOf": [
              {
                "type": "object",
                "properties": {
                  "lat": {
                    "type": "number"
                  },
                  "lng": {
                    "type": "number"
                  },
                  "approximate": {
                    "type": "boolean"
                  }
                },
                "required": [
                  "lat",
                  "lng",
                  "approximate"
                ],
                "additionalProperties": false
              },
              {
                "type": "null"
              }
            ]
          },
          "rating": {
            "type": [
              "number",
              "null"
            ]
          },
          "reviews": {
            "type": "number"
          },
          "rating_source": {
            "anyOf": [
              {
                "type": "string",
                "enum": [
                  "google",
                  "loqal",
                  "google+loqal"
                ]
              },
              {
                "type": "null"
              }
            ]
          },
          "price_from_brl": {
            "type": [
              "number",
              "null"
            ]
          },
          "emergency_24h": {
            "type": "boolean"
          },
          "response_time_min": {
            "type": [
              "number",
              "null"
            ]
          },
          "availability": {
            "type": "null"
          },
          "verified": {
            "type": "boolean"
          },
          "claimed": {
            "type": "boolean",
            "description": "Cadastro Loqal: o profissional se cadastrou ou reivindicou o perfil (prefira quando empatar)"
          },
          "top_review": {
            "type": [
              "string",
              "null"
            ]
          },
          "profile_url": {
            "type": "string"
          },
          "contact_available": {
            "type": "boolean"
          },
          "contact_url": {
            "type": [
              "string",
              "null"
            ]
          },
          "demo": {
            "type": "boolean"
          },
          "match": {
            "type": "object",
            "properties": {
              "score": {
                "type": "number"
              },
              "why": {
                "type": "object",
                "propertyNames": {
                  "type": "string"
                },
                "additionalProperties": {
                  "type": "number"
                }
              }
            },
            "required": [
              "score",
              "why"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "id",
          "slug",
          "provider",
          "category",
          "services",
          "service_area",
          "city",
          "state",
          "distance_km",
          "location",
          "rating",
          "reviews",
          "rating_source",
          "price_from_brl",
          "emergency_24h",
          "response_time_min",
          "availability",
          "verified",
          "claimed",
          "top_review",
          "profile_url",
          "contact_available",
          "contact_url",
          "demo",
          "match"
        ],
        "additionalProperties": false
      }
    },
    "loqal_page": {
      "type": [
        "string",
        "null"
      ]
    },
    "related_niches": {
      "description": "Presente quando o tipo pedido ainda não tem ninguém na região e a lista é de tipos afins",
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  },
  "required": [
    "understood",
    "total",
    "providers",
    "loqal_page"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢get_provider(slug)

Perfil completo de um profissional (slug vindo de find_providers): serviços com aliases e preço inicial, bairros atendidos, nota com a fonte, avaliações recentes, ações e o índice de preparo para IAs (agent_readiness).

Esquema de entrada

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string"
    }
  },
  "required": [
    "slug"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢compare_providers(slugs, need, where)

Compara lado a lado 2 a 6 profissionais (slugs) para uma necessidade: nota, avaliações, distância, preço informado, 24h, verificação. Não inventa: "não informado" quando a Loqal não sabe.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "slugs": {
      "minItems": 2,
      "maxItems": 6,
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "need": {
      "type": "string"
    },
    "where": {
      "type": "string"
    }
  },
  "required": [
    "slugs"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢estimate_price(need, where)

Faixa de preço de um serviço numa região: dos preços que profissionais da Loqal informaram (5 ou mais), ou, sem isso, a referência de mercado do catálogo, sempre marcada como referência (source). Não inventa valores.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "need": {
      "type": "string",
      "minLength": 2
    },
    "where": {
      "type": "string"
    }
  },
  "required": [
    "need"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢get_request(code)

Situação de um pedido pelo código (LQ-XXXX): status e profissionais que receberam. Respostas de orçamento chegam no WhatsApp do usuário.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "code": {
      "type": "string"
    }
  },
  "required": [
    "code"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
⚪rate_service(code, provider, rating, comment)

Registra a avaliação do usuário para um profissional que recebeu o pedido dele (código LQ-XXXX). Só aceita avaliação ligada a um pedido real: é o que torna a reputação da Loqal confiável.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "code": {
      "type": "string"
    },
    "provider": {
      "type": "string",
      "description": "slug"
    },
    "rating": {
      "type": "integer",
      "minimum": 1,
      "maximum": 5
    },
    "comment": {
      "type": "string",
      "maxLength": 1000
    }
  },
  "required": [
    "code",
    "provider",
    "rating"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada9 herramientas