Pactum — legal services in Uzbekistan
Server Details
Uzbekistan legal services: find services, read Uzbek law, request a lawyer's quote.
- Status
- Healthy
- Uptime
- 100.0% over 23 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 7 tools
Most tools have clearly distinct purposes (search vs. get vs. list; articles vs. services). The main risk is book_consultation vs. request_quote, since both collect contact details and pass work to lawyers, but the descriptions explicitly distinguish prepaid consultation from a custom quote.
All seven tools follow a clean verb_noun pattern (book_consultation, get_consultation_price, get_service, list_practice_areas, request_quote, search_articles, search_services). The convention is uniform and predictable across the set.
Seven tools is well-scoped for a legal-services booking and information surface. Each tool covers a distinct step (discover prices, browse services, read articles, request quote, book) without redundancy.
The surface covers discovery, pricing, quoting, and booking for the domain, with a status link returned by booking. Minor gaps exist: no dedicated tool to check an existing order/quote status or to cancel/reschedule a consultation.
Available Tools
7 toolsbook_consultationBook a paid consultation with a lawyerAInspect
Book a consultation with a Pactum lawyer, prepaid; the amount is credited toward the service if the client orders it. Get the price from get_consultation_price first and tell it to the user. Call ONLY after the user asked for a consultation, accepted that price, gave their real name and phone, and agreed that Pactum stores these details. Returns the order number, price, how to pay and a status link. For a price quote on a whole task use request_quote instead.
| Name | Required | Description | Default |
|---|---|---|---|
| topic | Yes | What the user wants to discuss, in their own terms | |
| agent_name | No | Your assistant name, e.g. ChatGPT, Claude | |
| contact_name | Yes | Client name as the user gave it | |
| service_slug | No | Slug from search_services, if a specific service fits | |
| user_consent | Yes | true only if the user explicitly agreed to share these details with Pactum and its partner lawyer | |
| contact_email | No | ||
| contact_phone | Yes | Phone with country code, e.g. +998901234567 | |
| practice_area | No | Slug from list_practice_areas, if known | |
| preferred_date | No | YYYY-MM-DD, Tashkent time; a lawyer confirms | |
| preferred_time | No | HH:MM, Mon–Fri 9:00–18:00 Tashkent | |
| preferred_language | No | ||
| user_accepts_price | Yes | true only if the user was told the price from get_consultation_price and agreed to pay it |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations cover the generic profile (non-readonly, openWorld, non-idempotent, non-destructive), and the description adds the traits annotations cannot express: this is a prepaid/paid action, the charge is credited if the client orders the service, and it stores/forwards personal data to Pactum and a partner lawyer. It also enumerates the return payload (order number, price, payment instructions, status link), which matters since no output schema exists.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Four sentences, each load-bearing: capability, prerequisite sequence, call precondition, return payload, and the sibling alternative. The precondition and the routing sentence are not buried.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 12-parameter, high-coverage schema with no output schema, the description fills the two real gaps: the correct call ordering (price lookup before booking) and the shape of the response. Nothing an agent needs before invoking it is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 83%, so the schema already documents nearly every field, including the const-true gates on user_accepts_price and user_consent. The description reinforces the consent/price-acceptance prerequisites but adds no format or syntax detail beyond what the schema provides, so the baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('Book a consultation with a Pactum lawyer') plus the commercial model (prepaid, credited toward the service). It also names what it is not (request_quote) so an agent can separate it from the sibling quote tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives an explicit prerequisite chain ('get_consultation_price first'), a hard gating condition ('Call ONLY after the user asked... accepted that price, gave their real name and phone, and agreed that Pactum stores these details'), and an explicit alternative for the adjacent case ('For a price quote on a whole task use request_quote instead').
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_consultation_pricePrice of a consultation with a lawyerARead-onlyInspect
Current price and length of a prepaid consultation with a Pactum lawyer. Read-only, books nothing. Call it BEFORE book_consultation and tell the user the price: book_consultation needs the user to accept it first.
| Name | Required | Description | Default |
|---|---|---|---|
| locale | No | Response language: ru, uz or en (default en) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, so safety is covered; the description reinforces it ('Read-only, books nothing') and adds the meaningful workflow constraint that the price must be surfaced to the user before booking. It stops short of describing caching or how current the price is, so it doesn't fully saturate the dimension, but it adds real context beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences: the first defines what is returned, the second gives the sequencing instruction. Nothing is redundant and the ordering guidance is front-loaded where it matters most.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description compensates by naming the returned values (price and length). Combined with the annotations and the fully documented single param, an agent has everything needed to invoke this correctly in a booking flow.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Only one parameter with 100% schema description coverage, and the enum values are already documented in the schema. The description adds no syntax or default detail for 'locale'; per the baseline rule this is a clear 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific resource and its two returned facts ('current price and length of a prepaid consultation'), plus the domain qualifier 'Pactum lawyer'. This clearly separates it from get_service and request_quote without needing to open any schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states the ordering condition relative to a named sibling: 'Call it BEFORE book_consultation and tell the user the price: book_consultation needs the user to accept it first.' This tells the agent both when to call and why, which is exactly the guidance an agent needs to sequence a booking flow.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_serviceService detailsARead-onlyInspect
Full description of one Pactum service by slug (from search_services): what is included, price anchor, FAQ and page URL to cite.
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes | Service slug, e.g. trademark-registration | |
| locale | No | Response language: ru, uz or en (default en) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=false, so the safety profile is covered. The description goes beyond that by enumerating what the response contains (inclusions, price anchor, FAQ, page URL to cite), which is valuable since there is no output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single tight sentence that front-loads the action and resource and packs the return contents into the tail. No filler, no redundancy with the title.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description usefully enumerates the payload (inclusions, price, FAQ, URL) and identifies the required input source. It omits any note on locale behavior for a multi-locale service, but the schema covers that, leaving only a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both slug and locale are already documented in the schema with format and enum values. The description only reinforces that slug is a service slug sourced from search_services and says nothing about locale, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (retrieve full description), a specific resource (one Pactum service), and the key (slug). It also names the sibling (search_services) where the slug comes from, so an agent can distinguish it from search_services, request_quote, and search_articles without opening any schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The parenthetical '(from search_services)' tells the agent this tool is the follow-up drill-down after searching, which is clear usage context. It does not state when NOT to use it or contrast explicitly with siblings like request_quote, so it falls short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_practice_areasPractice areasARead-onlyInspect
Practice areas Pactum works in (slug + name). Pass a slug as practice_area in request_quote to route the request to the right lawyer.
| Name | Required | Description | Default |
|---|---|---|---|
| locale | No | Response language: ru, uz or en (default en) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=false, so the safety profile is covered. The description adds the output shape (slug + name), which is useful, but says nothing about whether the list is static, paginated, or filtered by anything other than locale.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, zero filler. The resource definition is front-loaded and the actionable routing hint follows immediately.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description compensates by naming the returned fields (slug + name) and the integration point with request_quote. Only minor gaps remain, such as whether the list is locale-dependent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the single 'locale' parameter is fully documented with its enum and default in the schema. The description adds no extra semantics about the parameter, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States the specific resource ('Practice areas Pactum works in') and even the return shape ('slug + name'), which no sibling shares. An agent can immediately tell this apart from get_service or search_services.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives a concrete downstream use: 'Pass a slug as practice_area in request_quote to route the request to the right lawyer.' This tells the agent when it needs this tool (as a prerequisite to request_quote), though it names no exclusions or competing alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
request_quoteRequest a price quote from a lawyerAInspect
Send the user's legal task to Pactum lawyers; a lawyer reviews it and contacts the user with a price. Call ONLY after the user asked to be contacted, gave their real name and phone or e-mail, and agreed that Pactum stores these details and may pass the request to a partner lawyer. Put the task in the user's own terms: situation, goal, key facts. Never invent contacts; never call it "to test". Returns the request number.
| Name | Required | Description | Default |
|---|---|---|---|
| task | Yes | What exactly the client needs: situation, goal, key facts | |
| budget | No | Budget, if the user named one | |
| country | No | Client country, if not Uzbekistan | |
| deadline | No | When it is needed, e.g. "by 15 October" | |
| documents | No | Documents the client already has | |
| agent_name | No | Your assistant name, e.g. ChatGPT, Claude | |
| client_type | Yes | company | individual | foreign_company | foreign_individual | |
| company_name | No | ||
| contact_name | Yes | Client name as the user gave it | |
| service_slug | No | Slug from search_services, if a specific service fits | |
| user_consent | Yes | true only if the user explicitly agreed to share these details with Pactum and its partner lawyer | |
| contact_email | No | ||
| contact_phone | No | Phone with country code, e.g. +998901234567 | |
| practice_area | No | Slug from list_practice_areas, if known | |
| contact_telegram | No | Telegram @username, in addition to phone/e-mail | |
| preferred_language | No | Language for the lawyer to use |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds substantial context beyond the annotations: it discloses that accepting this creates an external, non-idempotent request that a partner lawyer will act on and follow up by phone/e-mail, enumerates the consent preconditions, and forbids fabricating contact details. Annotations only say openWorld=true and non-idempotent; the description explains what that actually means for the user's privacy and follow-up.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with purpose, then the gating conditions, then content guidance, then the return value. Every clause carries a distinct instruction (consent gate, phrasing rule, anti-test warning, return value) with no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 16-parameter submission tool with 94% schema coverage, the description covers the risky parts well: consent, contact integrity, phrasing, and the returned request number (important since there is no output schema). It leaves optional-parameter selection entirely to the schema, which is acceptable but leaves a small gap around when budget/deadline/documents matter.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 94%, so the baseline is 3, but the description adds real meaning: how the task text should be phrased (situation, goal, key facts in the user's own terms) and an integrity rule for the contact fields ('never invent contacts'). It does not explain any of the 12 optional fields, which the schema already handles.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb, resource and outcome: send the user's legal task to Pactum lawyers, who review it and contact the user with a price. That is clearly distinguishable from the sibling read/search tools (get_service, list_practice_areas, search_articles, search_services) without opening any schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives explicit preconditions (call ONLY after the user asked to be contacted, gave real name and phone/e-mail, and consented to storage and partner-lawyer sharing) plus a clear prohibition ('never call it "to test"'). It stops short of routing the agent through the sibling discovery tools (search_services, list_practice_areas) before submitting, which is implied only via the schema's service_slug/practice_area descriptions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_articlesSearch legal articlesARead-onlyInspect
Search Pactum articles explaining Uzbek law (company law, trademarks, tax, labour, licensing…). Returns titles, short summaries and URLs — cite them when answering the user.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | How many (default 5) | |
| query | Yes | Topic, e.g. "trademark registration", "ликвидация ООО" | |
| locale | No | Response language: ru, uz or en (default en) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=false, so the safety profile is covered. The description adds real value by disclosing the return payload shape (titles, short summaries, URLs) and the intended behaviour of citing results, which is not visible in any structured field since there is no output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, zero filler, with the resource and scope front-loaded before the return/citation note. Every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description correctly compensates by naming the returned fields and the citation expectation, and all three parameters are fully documented in the schema. Only the absence of any sibling-routing guidance keeps it from being fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with each of the three parameters documented including examples and defaults, so the baseline is 3. The description adds no parameter-level detail (e.g. query syntax, locale interaction) beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Search) and resource (Pactum articles explaining Uzbek law) with the topical scope enumerated (company law, trademarks, tax, labour, licensing). This clearly separates it from the sibling search_services, which targets a different resource type.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The clause 'cite them when answering the user' implies the usage context (answering legal questions with sourced answers), which is genuine guidance. However, it names no alternatives or exclusions, so an agent gets no explicit routing rule against search_services or get_service.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_servicesSearch legal servicesARead-onlyInspect
Search the Pactum catalog of legal services in Uzbekistan (company registration, licences, trademarks, contracts, tax, disputes, migration, real estate and more). Use when the user describes a task they want done. Returns services with slug, price anchor and page URL; pass a slug to get_service or request_quote.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | How many results (default 8) | |
| query | Yes | Short phrase, e.g. "register LLC", "товарный знак", "ish ruxsatnomasi" | |
| locale | No | Response language: ru, uz or en (default en) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnlyHint=true, openWorldHint=false), so the bar is lower. The description adds real value beyond them by disclosing the response shape (slug, price anchor, page URL) and the intended follow-up chain, though it says nothing about auth, rate limits or empty-result behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences: the corpus and domain list come first, then the trigger, then the return shape and next-step routing. No clause is redundant with the schema or annotations.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description usefully names the returned fields and the downstream tools, which is what an agent needs to chain calls. It omits any note on pagination/limit interaction or empty results, but nothing critical for correct invocation is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents query, limit and locale with examples and constraints. The description adds no syntax or default detail beyond that, so the baseline 3 applies; the 'pass a slug' note refers to an output field, not an input parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource (search the Pactum catalog of legal services in Uzbekistan) plus the covered domains, so the agent knows exactly what corpus is being queried. It also contrasts implicitly with search_articles and list_practice_areas by scoping to bookable services.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives a clear trigger condition ('Use when the user describes a task they want done') and routes the agent onward to get_service or request_quote once a slug is in hand. It stops short of naming when NOT to use it versus search_articles, so it is strong but not fully exhaustive.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
2 tool updates
- Changed
book_consultation1 field changed- changed
Input schema / properties / user_accepts_price / descriptionPrevious value: -"true only if the user agreed to pay for the consultation"New value: +"true only if the user was told the price from get_consultation_price and agreed to pay it"
- Added
get_consultation_price
1 tool update
- Added
book_consultation
5 tool updates
- First observed
get_service - First observed
list_practice_areas - First observed
request_quote - First observed
search_articles - First observed
search_services
Related MCP Connectors
Current law as data for AI: search, read and verify statutes and citations. CIS countries first.
1Find, compare and contact licensed U.S. lawyers from public bar data. Not legal advice.
Latvian law search: in-force statutes, verbatim articles, verified Q&A. Anonymous, read-only.
Search Iranian statutes, court rulings, advisory opinions and circulars, with legal calculators.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceEnables searching and reading Kazakhstan law texts, retrieving versions as of past dates, and exploring legislative history via MCP.-
- AlicenseBqualityBmaintenanceConnects AI clients to public Turkish legislation and court/board decisions, letting users search and retrieve legal texts, case law, and institutional rulings, and generate petition drafts and UYAP UDF files.20MIT
- AlicenseNot gradedqualityBmaintenanceMCP server for Azerbaijan's official legal-acts database (e-qanun.az), enabling search, metadata retrieval, and full-text access to legislative and judicial documents.MIT
- AlicenseNot gradedqualityFmaintenanceQuery 4,326 Hungarian laws (Ptk., Mt., Btk., etc.) from MCP-compatible clients. Includes full-text search, citation validation, and EU law mapping.17 npm26Apache 2.0
Glama MCP Gateway
Add one secure layer between your agents and this server.