{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_amcgqa5bnc99","handle":"esq-matching-engine","url":"https://wellknown.network/agents/esq-matching-engine","links":{"self":"https://wellknown.network/agents/esq-matching-engine/record.json","html":"https://wellknown.network/agents/esq-matching-engine","markdown":"https://wellknown.network/agents/esq-matching-engine/record.md","api":"https://wellknown.network/api/v1/agents/esq-matching-engine","status":"https://wellknown.network/api/v1/agents/esq-matching-engine/status","claim":"https://wellknown.network/agents/esq-matching-engine/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/esq-matching-engine/claim.json","badge":"https://wellknown.network/agents/esq-matching-engine/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/esq-matching-engine/history","tools":"https://wellknown.network/api/v1/agents/esq-matching-engine/tools"},"ard":{"identifier":"urn:air:match.esqcopilot.com:server:esq-matching-engine","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"ESQ Matching Engine","summary":"Find and compare licensed US lawyers from official licensing records, with sources. No legal advice.","description":"Find and compare licensed US lawyers from official licensing records, with sources. No legal advice.","publisher":{"name":"com.esqcopilot","url":null},"homepage":"https://match.esqcopilot.com/ai-agents","repository":null,"version":"1.4.0","license":null,"protocols":["mcp"],"tags":[],"pricing":null,"endpoints":[{"url":"https://match.esqcopilot.com/mcp/c/eyJrIjoiY29ubmVjdG9yIiwiaSI6ImNvbl9tY3BfcmVnaXN0cnlfZXNxIiwicCI6Im1jcC1yZWdpc3RyeSJ9.3b61cb285412dd02ba328c4c5ccd0b00","type":"mcp_streamable_http","auth":null,"probeable":true}],"skills":null,"tools":null,"extra":{"updatedAt":"2026-10-25T16:01:21.969235Z","publishedAt":"2026-10-25T16:01:21.969235Z","registryName":"com.esqcopilot/matching-engine"},"attribution":{"kind":"mcp_registry","name":"mcp_registry","summary":"mcp_registry","version":"mcp_registry","description":"mcp_registry","homepageUrl":"mcp_registry","publisherName":"mcp_registry"}},"derived":{"capabilities":[{"slug":"commerce.pricing","name":"Pricing & Quotes","confidence":1,"provenance":"derived"},{"slug":"documents.contracts","name":"Contracts & Legal","confidence":0.859,"provenance":"derived"},{"slug":"dev.filesystem","name":"Filesystem","confidence":0.54,"provenance":"derived"},{"slug":"ai.agent-discovery","name":"Agent Discovery","confidence":0.54,"provenance":"derived"}],"categories":["ai","commerce","dev","documents"],"language":"en"},"observed":{"status":"live","statusReason":"Responded 7h ago.","lastOkAt":"2026-11-04T12:22:14.912Z","lastProbedAt":"2026-11-04T12:22:14.912Z","statusComputedAt":"2026-11-04T12:25:40.699Z","reliability30d":{"probes":22,"successRate":1,"p50Ms":93,"basis":"service","measures":{"availability":"availability","latency":"response time","tools":"tool surface observed","summary":"Checks reached the service itself."},"checks":{"total":22,"ok":22,"authBoundaryOk":0,"serviceOk":22,"note":"Counted from the observation rows for the window, checks of the server only (HTTP, A2A card, MCP initialize). ok = authBoundaryOk + serviceOk. `probes` is the sum of daily rollups and includes registry checks, so it can differ from `total`."}},"latestObservations":[{"at":"2026-11-04T12:22:14.912Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":126,"error":null,"detail":{"tools":[{"name":"start_from_directory_profile","description":"Use FIRST when the user names or pastes an ESQ CoPilot directory profile (directory.esqcopilot.com/attorney/...) or says they want help with a lawyer they were "},{"name":"prepare_introduction","description":"Use when the user wants to contact ONE lawyer (\"prepare my message\"). Builds a short, editable first message from general facts (matter type, matter location, h"},{"name":"get_matching_requirements","description":"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 quest"},{"name":"find_attorneys","description":"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"},{"name":"compare_attorneys","description":"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 lice"},{"name":"estimate_legal_cost","description":"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 "},{"name":"check_attorney_availability","description":"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 certaint"},{"name":"get_attorney_profile","description":"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, prac"},{"name":"request_attorney_introduction","description":"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 ge"},{"name":"get_introduction_status","description":"Use when the user asks what happened with an introduction. Returns lifecycle_state (recorded, queued, sent, delivered, responded, consultation_requested, consul"},{"name":"get_referral_status","description":"Older name of get_introduction_status, kept so existing connections keep working; prefer get_introduction_status. Use when the user asks what happened with an i"},{"name":"cancel_introduction","description":"Use when the user wants to cancel an introduction or a pending request that has not been sent to the lawyer. Needs the private status_token. Deletes the user's "},{"name":"confirm_introduction","description":"Use only when get_introduction_status shows pending.ready_to_confirm true (the lawyer has since activated the free EsqHarness). Show the user confirm_text_to_sh"},{"name":"update_matching_preferences","description":"Save or change matching criteria (location, budget, timing, practice area, language, priorities) for this conversation. No personal contact details. Deleted aut"},{"name":"submit_matching_feedback","description":"Optional 1-5 ratings on match relevance, lawyer responsiveness, pricing and availability accuracy, satisfaction, and whether the lawyer was hired. No case detai"}],"toolCount":15,"toolsHash":"6baaa9ff8cc423720b2f4fefc8099df6e896952bea14531dd247253c0326409c","serverName":"esq-matching-engine","capabilities":["resources","tools"],"serverVersion":"1.7.0","protocolVersion":"2025-06-18"}},{"at":"2026-11-04T03:31:15.414Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":100,"error":null,"detail":{"tools":[{"name":"start_from_directory_profile","description":"Use FIRST when the user names or pastes an ESQ CoPilot directory profile (directory.esqcopilot.com/attorney/...) or says they want help with a lawyer they were "},{"name":"prepare_introduction","description":"Use when the user wants to contact ONE lawyer (\"prepare my message\"). Builds a short, editable first message from general facts (matter type, matter location, h"},{"name":"get_matching_requirements","description":"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 quest"},{"name":"find_attorneys","description":"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"},{"name":"compare_attorneys","description":"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 lice"},{"name":"estimate_legal_cost","description":"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 "},{"name":"check_attorney_availability","description":"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 certaint"},{"name":"get_attorney_profile","description":"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, prac"},{"name":"request_attorney_introduction","description":"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 ge"},{"name":"get_introduction_status","description":"Use when the user asks what happened with an introduction. Returns lifecycle_state (recorded, queued, sent, delivered, responded, consultation_requested, consul"},{"name":"get_referral_status","description":"Older name of get_introduction_status, kept so existing connections keep working; prefer get_introduction_status. Use when the user asks what happened with an i"},{"name":"cancel_introduction","description":"Use when the user wants to cancel an introduction or a pending request that has not been sent to the lawyer. Needs the private status_token. Deletes the user's "},{"name":"confirm_introduction","description":"Use only when get_introduction_status shows pending.ready_to_confirm true (the lawyer has since activated the free EsqHarness). Show the user confirm_text_to_sh"},{"name":"update_matching_preferences","description":"Save or change matching criteria (location, budget, timing, practice area, language, priorities) for this conversation. No personal contact details. Deleted aut"},{"name":"submit_matching_feedback","description":"Optional 1-5 ratings on match relevance, lawyer responsiveness, pricing and availability accuracy, satisfaction, and whether the lawyer was hired. No case detai"}],"toolCount":15,"toolsHash":"6baaa9ff8cc423720b2f4fefc8099df6e896952bea14531dd247253c0326409c","serverName":"esq-matching-engine","capabilities":["resources","tools"],"serverVersion":"1.7.0","protocolVersion":"2025-06-18"}},{"at":"2026-11-03T19:35:17.741Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":86,"error":null,"detail":{"tools":[{"name":"get_matching_requirements","description":"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 quest"},{"name":"find_attorneys","description":"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"},{"name":"compare_attorneys","description":"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 lice"},{"name":"estimate_legal_cost","description":"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 "},{"name":"check_attorney_availability","description":"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 certaint"},{"name":"get_attorney_profile","description":"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, prac"},{"name":"request_attorney_introduction","description":"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 ge"},{"name":"get_referral_status","description":"Use when the user asks what happened with an introduction. Returns lifecycle_state (recorded, queued, sent, delivered, responded, consultation_requested, consul"},{"name":"update_matching_preferences","description":"Save or change matching criteria (location, budget, timing, practice area, language, priorities) for this conversation. No personal contact details. Deleted aut"},{"name":"submit_matching_feedback","description":"Optional 1-5 ratings on match relevance, lawyer responsiveness, pricing and availability accuracy, satisfaction, and whether the lawyer was hired. No case detai"}],"toolCount":10,"toolsHash":"6ff1d22c1e426d72b25ee35a2b839692b0f1c3a8d098af384cdf15ab6cb41f74","serverName":"esq-matching-engine","capabilities":["resources","tools"],"serverVersion":"1.5.0","protocolVersion":"2025-06-18"}},{"at":"2026-11-03T11:28:17.011Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":89,"error":null,"detail":{"tools":[{"name":"get_matching_requirements","description":"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 quest"},{"name":"find_attorneys","description":"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"},{"name":"compare_attorneys","description":"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 lice"},{"name":"estimate_legal_cost","description":"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 "},{"name":"check_attorney_availability","description":"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 certaint"},{"name":"get_attorney_profile","description":"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, prac"},{"name":"request_attorney_introduction","description":"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 ge"},{"name":"get_referral_status","description":"Use when the user asks what happened with an introduction. Returns lifecycle_state (recorded, queued, sent, delivered, responded, consultation_requested, consul"},{"name":"update_matching_preferences","description":"Save or change matching criteria (location, budget, timing, practice area, language, priorities) for this conversation. No personal contact details. Deleted aut"},{"name":"submit_matching_feedback","description":"Optional 1-5 ratings on match relevance, lawyer responsiveness, pricing and availability accuracy, satisfaction, and whether the lawyer was hired. No case detai"}],"toolCount":10,"toolsHash":"6ff1d22c1e426d72b25ee35a2b839692b0f1c3a8d098af384cdf15ab6cb41f74","serverName":"esq-matching-engine","capabilities":["resources","tools"],"serverVersion":"1.5.0","protocolVersion":"2025-06-18"}},{"at":"2026-11-03T03:31:31.745Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":92,"error":null,"detail":{"tools":[{"name":"get_matching_requirements","description":"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 quest"},{"name":"find_attorneys","description":"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"},{"name":"compare_attorneys","description":"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 lice"},{"name":"estimate_legal_cost","description":"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 "},{"name":"check_attorney_availability","description":"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 certaint"},{"name":"get_attorney_profile","description":"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, prac"},{"name":"request_attorney_introduction","description":"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 ge"},{"name":"get_referral_status","description":"Use when the user asks what happened with an introduction. Returns lifecycle_state (recorded, queued, sent, delivered, responded, consultation_requested, consul"},{"name":"update_matching_preferences","description":"Save or change matching criteria (location, budget, timing, practice area, language, priorities) for this conversation. No personal contact details. Deleted aut"},{"name":"submit_matching_feedback","description":"Optional 1-5 ratings on match relevance, lawyer responsiveness, pricing and availability accuracy, satisfaction, and whether the lawyer was hired. No case detai"}],"toolCount":10,"toolsHash":"6ff1d22c1e426d72b25ee35a2b839692b0f1c3a8d098af384cdf15ab6cb41f74","serverName":"esq-matching-engine","capabilities":["resources","tools"],"serverVersion":"1.5.0","protocolVersion":"2025-06-18"}},{"at":"2026-11-02T19:23:40.184Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":89,"error":null,"detail":{"tools":[{"name":"get_matching_requirements","description":"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 quest"},{"name":"find_attorneys","description":"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"},{"name":"compare_attorneys","description":"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 lice"},{"name":"estimate_legal_cost","description":"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 "},{"name":"check_attorney_availability","description":"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 certaint"},{"name":"get_attorney_profile","description":"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, prac"},{"name":"request_attorney_introduction","description":"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 ge"},{"name":"get_referral_status","description":"Use when the user asks what happened with an introduction. Returns lifecycle_state (recorded, queued, sent, delivered, responded, consultation_requested, consul"},{"name":"update_matching_preferences","description":"Save or change matching criteria (location, budget, timing, practice area, language, priorities) for this conversation. No personal contact details. Deleted aut"},{"name":"submit_matching_feedback","description":"Optional 1-5 ratings on match relevance, lawyer responsiveness, pricing and availability accuracy, satisfaction, and whether the lawyer was hired. No case detai"}],"toolCount":10,"toolsHash":"6ff1d22c1e426d72b25ee35a2b839692b0f1c3a8d098af384cdf15ab6cb41f74","serverName":"esq-matching-engine","capabilities":["resources","tools"],"serverVersion":"1.5.0","protocolVersion":"2025-06-18"}},{"at":"2026-11-02T11:28:09.850Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":87,"error":null,"detail":{"tools":[{"name":"get_matching_requirements","description":"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 quest"},{"name":"find_attorneys","description":"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"},{"name":"compare_attorneys","description":"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 lice"},{"name":"estimate_legal_cost","description":"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 "},{"name":"check_attorney_availability","description":"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 certaint"},{"name":"get_attorney_profile","description":"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, prac"},{"name":"request_attorney_introduction","description":"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 ge"},{"name":"get_referral_status","description":"Use when the user asks what happened with an introduction. Returns lifecycle_state (recorded, queued, sent, delivered, responded, consultation_requested, consul"},{"name":"update_matching_preferences","description":"Save or change matching criteria (location, budget, timing, practice area, language, priorities) for this conversation. No personal contact details. Deleted aut"},{"name":"submit_matching_feedback","description":"Optional 1-5 ratings on match relevance, lawyer responsiveness, pricing and availability accuracy, satisfaction, and whether the lawyer was hired. No case detai"}],"toolCount":10,"toolsHash":"6ff1d22c1e426d72b25ee35a2b839692b0f1c3a8d098af384cdf15ab6cb41f74","serverName":"esq-matching-engine","capabilities":["resources","tools"],"serverVersion":"1.5.0","protocolVersion":"2025-06-18"}},{"at":"2026-11-02T03:28:57.744Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":1116,"error":null,"detail":{"tools":[{"name":"get_matching_requirements","description":"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 quest"},{"name":"find_attorneys","description":"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"},{"name":"compare_attorneys","description":"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 lice"},{"name":"estimate_legal_cost","description":"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 "},{"name":"check_attorney_availability","description":"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 certaint"},{"name":"get_attorney_profile","description":"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, prac"},{"name":"request_attorney_introduction","description":"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 ge"},{"name":"get_referral_status","description":"Use when the user asks what happened with an introduction. Returns lifecycle_state (recorded, queued, sent, delivered, responded, consultation_requested, consul"},{"name":"update_matching_preferences","description":"Save or change matching criteria (location, budget, timing, practice area, language, priorities) for this conversation. No personal contact details. Deleted aut"},{"name":"submit_matching_feedback","description":"Optional 1-5 ratings on match relevance, lawyer responsiveness, pricing and availability accuracy, satisfaction, and whether the lawyer was hired. No case detai"}],"toolCount":10,"toolsHash":"6ff1d22c1e426d72b25ee35a2b839692b0f1c3a8d098af384cdf15ab6cb41f74","serverName":"esq-matching-engine","capabilities":["resources","tools"],"serverVersion":"1.5.0","protocolVersion":"2025-06-18"}},{"at":"2026-11-01T19:22:34.498Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":90,"error":null,"detail":{"tools":[{"name":"get_matching_requirements","description":"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 quest"},{"name":"find_attorneys","description":"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"},{"name":"compare_attorneys","description":"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 lice"},{"name":"estimate_legal_cost","description":"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 "},{"name":"check_attorney_availability","description":"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 certaint"},{"name":"get_attorney_profile","description":"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, prac"},{"name":"request_attorney_introduction","description":"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 ge"},{"name":"get_referral_status","description":"Use when the user asks what happened with an introduction. Returns lifecycle_state (recorded, queued, sent, delivered, responded, consultation_requested, consul"},{"name":"update_matching_preferences","description":"Save or change matching criteria (location, budget, timing, practice area, language, priorities) for this conversation. No personal contact details. Deleted aut"},{"name":"submit_matching_feedback","description":"Optional 1-5 ratings on match relevance, lawyer responsiveness, pricing and availability accuracy, satisfaction, and whether the lawyer was hired. No case detai"}],"toolCount":10,"toolsHash":"6ff1d22c1e426d72b25ee35a2b839692b0f1c3a8d098af384cdf15ab6cb41f74","serverName":"esq-matching-engine","capabilities":["resources","tools"],"serverVersion":"1.5.0","protocolVersion":"2025-06-18"}},{"at":"2026-11-01T10:29:12.968Z","kind":"mcp_initialize","ok":true,"httpStatus":200,"latencyMs":95,"error":null,"detail":{"tools":[{"name":"get_matching_requirements","description":"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 quest"},{"name":"find_attorneys","description":"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"},{"name":"compare_attorneys","description":"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 lice"},{"name":"estimate_legal_cost","description":"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 "},{"name":"check_attorney_availability","description":"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 certaint"},{"name":"get_attorney_profile","description":"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, prac"},{"name":"request_attorney_introduction","description":"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 ge"},{"name":"get_referral_status","description":"Use when the user asks what happened with an introduction. Returns lifecycle_state (recorded, queued, sent, delivered, responded, consultation_requested, consul"},{"name":"update_matching_preferences","description":"Save or change matching criteria (location, budget, timing, practice area, language, priorities) for this conversation. No personal contact details. Deleted aut"},{"name":"submit_matching_feedback","description":"Optional 1-5 ratings on match relevance, lawyer responsiveness, pricing and availability accuracy, satisfaction, and whether the lawyer was hired. No case detai"}],"toolCount":10,"toolsHash":"a3347c7f61d895e4fcd79de75e687e9fa12607dd39b3c61044e9575a04545419","serverName":"esq-matching-engine","capabilities":["resources","tools"],"serverVersion":"1.4.0","protocolVersion":"2025-06-18"}}],"tools":[{"name":"start_from_directory_profile","description":"Use FIRST when the user names or pastes an ESQ CoPilot directory profile (directory.esqcopilot.com/attorney/...) or says they want help with a lawyer they were "},{"name":"prepare_introduction","description":"Use when the user wants to contact ONE lawyer (\"prepare my message\"). Builds a short, editable first message from general facts (matter type, matter location, h"},{"name":"get_matching_requirements","description":"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 quest"},{"name":"find_attorneys","description":"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"},{"name":"compare_attorneys","description":"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 lice"},{"name":"estimate_legal_cost","description":"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 "},{"name":"check_attorney_availability","description":"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 certaint"},{"name":"get_attorney_profile","description":"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, prac"},{"name":"request_attorney_introduction","description":"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 ge"},{"name":"get_introduction_status","description":"Use when the user asks what happened with an introduction. Returns lifecycle_state (recorded, queued, sent, delivered, responded, consultation_requested, consul"},{"name":"get_referral_status","description":"Older name of get_introduction_status, kept so existing connections keep working; prefer get_introduction_status. Use when the user asks what happened with an i"},{"name":"cancel_introduction","description":"Use when the user wants to cancel an introduction or a pending request that has not been sent to the lawyer. Needs the private status_token. Deletes the user's "},{"name":"confirm_introduction","description":"Use only when get_introduction_status shows pending.ready_to_confirm true (the lawyer has since activated the free EsqHarness). Show the user confirm_text_to_sh"},{"name":"update_matching_preferences","description":"Save or change matching criteria (location, budget, timing, practice area, language, priorities) for this conversation. No personal contact details. Deleted aut"},{"name":"submit_matching_feedback","description":"Optional 1-5 ratings on match relevance, lawyer responsiveness, pricing and availability accuracy, satisfaction, and whether the lawyer was hired. No case detai"}],"package":null,"toolSurface":{"id":"ts_vqa6b2ae9v2k","endpointId":"ep_qwwp5fphywxs","hash":"6baaa9ff8cc423720b2f4fefc8099df6e896952bea14531dd247253c0326409c","toolCount":15,"serverName":"esq-matching-engine","serverVersion":"1.7.0","protocolVersion":"2025-06-18","firstSeenAt":"2026-11-04T03:31:15.420Z","lastSeenAt":"2026-11-04T12:22:14.926Z","observations":2,"toolNames":["start_from_directory_profile","prepare_introduction","get_matching_requirements","find_attorneys","compare_attorneys","estimate_legal_cost","check_attorney_availability","get_attorney_profile","request_attorney_introduction","get_introduction_status","get_referral_status","cancel_introduction","confirm_introduction","update_matching_preferences","submit_matching_feedback"],"distinctSurfaces":3},"endpointFacts":[{"id":"ep_qwwp5fphywxs","url":"https://match.esqcopilot.com/mcp/c/eyJrIjoiY29ubmVjdG9yIiwiaSI6ImNvbl9tY3BfcmVnaXN0cnlfZXNxIiwicCI6Im1jcC1yZWdpc3RyeSJ9.3b61cb285412dd02ba328c4c5ccd0b00","type":"mcp_streamable_http","factsCheckedAt":"2026-11-01T19:22:34.541Z","auth":{"observedAt":"2026-11-01T19:22:34.628Z","authRequired":false,"scheme":null,"resourceMetadata":null,"authorizationServer":null,"conformance":{"dpop":false,"rfc8414":false,"rfc9728":false,"pkceS256":false,"clientIdMetadataDocument":false,"dynamicClientRegistration":false}},"tls":{"observedAt":"2026-11-01T19:22:34.799Z","protocol":"TLSv1.3","chainValid":true,"chainError":null,"hostMatches":true,"subject":"match.esqcopilot.com","issuer":{"commonName":"YE1","organization":"Let's Encrypt"},"validFrom":"2026-10-18T15:35:38.000Z","validTo":"2027-01-16T15:35:37.000Z","daysToExpiry":72,"sanCount":1,"fingerprint256":"F8:A7:76:36:BD:24:81:2A:EE:6C:34:22:C7:2A:09:97:A3:CE:FB:27:3E:6C:92:06:A0:DB:E2:85:AA:F2:E4:F5"}}]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"mcp_registry","key":"com.esqcopilot/matching-engine","url":"https://registry.modelcontextprotocol.io/v0/servers/com.esqcopilot%2Fmatching-engine","firstSeenAt":"2026-10-28T13:20:04.679Z","fetchedAt":"2026-11-01T02:18:50.267Z","normalizedAt":"2026-11-01T02:18:50.267Z"}]},"firstSeenAt":"2026-10-28T13:20:04.679Z","updatedAt":"2026-11-04T12:27:12.596Z"}