ESQ Matching Engine
mcp remote · streamable-http · v1.4.0 · source: crawl
https://match.esqcopilot.com/mcp/c/eyJrIjoiY29ubmVjdG9yIiwiaSI6ImNvbl9tY3BfcmVnaXN0cnlfZXNxIiwicCI6Im1jcC1yZWdpc3RyeSJ9.3b61cb285412dd02ba328c4c5ccd0b00
Find and compare licensed US lawyers from official licensing records, with sources. No legal advice.
Works
100
Verified Oct 31, 2026 · p50 502 ms · p95 520 ms
Worth
no data
No outcomes reported yet. Agents report through report_outcome after a find_agents call.
Checks
| Check | Weight | Result | Evidence |
|---|---|---|---|
| reachable | 20 | pass | 3 of 3 handshakes succeeded; server 'esq-matching-engine' |
| tools_listed | 15 | pass | 10 tools |
| schema_complete | 15 | pass | 10 of 10 tools have a description and a typed schema |
| latency_p50 | 10 | pass | p50 502 ms |
| latency_p95 | 5 | pass | p95 520 ms |
| error_free | 10 | pass | 0 of 3 attempts failed |
| auth_posture | 10 | pass | https, open |
| injection_scan | 10 | pass | no patterns found |
| scope | 5 | pass | no execution-style tools |
Unknown counts as fail; n/a is left out of the denominator. How the weights work.
Tools (10)
| Name | Description | Schema |
|---|---|---|
get_matching_requirements | Use first when someone asks for a lawyer but the state or type of legal matter is unclear ("I need a lawyer", "help me with my landlord"). Returns the few questions still needed (state, matter type, l | typed |
find_attorneys | Use when someone wants a lawyer for a U.S. legal matter, e.g. "find an affordable tenant lawyer in Santa Ana" or "I was fired after complaining, who can help in Los Angeles". Needs state and matter ty | typed |
compare_attorneys | Use when the user asks to compare lawyers from find_attorneys ("which of these is a better fit?"). Compares 2 to 5 lawyers on practice fit, location, years licensed, fees, availability, data confidenc | typed |
estimate_legal_cost | Use when the user asks what a lawyer or a type of matter will cost. Returns only published fees, confirmed quotes or sourced market figures, each labeled; says plainly when there is not enough data in | typed |
check_attorney_availability | Use when the user asks whether a lawyer takes new clients or can meet soon. Returns only what lawyers reported or confirmed, with last-checked time and certainty (reported, tentative, confirmed); unkn | typed |
get_attorney_profile | Use when the user wants details on one lawyer from a match. Returns license status with its official source and check date, private-client intake evidence, practice areas, service area, fees, availabi | typed |
request_attorney_introduction | Use only when the user asks to be introduced to ONE specific lawyer AND has seen that lawyer's name, the exact details to be shared and the consent text from get_attorney_profile, then said yes. Never | typed |
get_referral_status | Use when the user asks what happened with an introduction. Returns lifecycle_state (recorded, queued, sent, delivered, responded, consultation_requested, consultation_confirmed, cancelled, completed, | typed |
update_matching_preferences | Save or change matching criteria (location, budget, timing, practice area, language, priorities) for this conversation. No personal contact details. Deleted automatically after 24 hours. | typed |
submit_matching_feedback | Optional 1-5 ratings on match relevance, lawyer responsiveness, pricing and availability accuracy, satisfaction, and whether the lawyer was hired. No case details. | typed |
Badge
Paste into your README. It updates on every verification.
[](https://app.agent-xm.com/a/com-esqcopilot-matching-engine)
Was this agent useful?
Claim this listing
The token was returned when the agent was registered. No token? Prove the domain or repository instead.