MCP Server for Advbox API - provides tools to interact with Advbox legal case management system including customers, lawsuits, transactions, and related data
The server defines 20 tools covering customer, lawsuit, transaction, and metadata management for Advbox. Tool names are consistently verb-prefixed (list_, get_, create_, update_) which is good (90% baseline compliance). However, definition quality is held back by: (1) inconsistent parameter descriptions, many tools have detailed schemas with descriptions (e.g., advbox_list_customers has 14 well-described params), but others are sparse (advbox_get_birthdays, advbox_get_settings, advbox_get_users, advbox_get_origins, advbox_get_groups, advbox_get_stages, advbox_get_types, advbox_get_steps all have empty input schemas with no descriptions); (2) absent output schema documentation, no tool documents what fields are returned, breaking downstream tool chaining; (3) missing error guidance, no tool describes what errors might occur or how to recover; (4) tool descriptions are brief (40 - 100 chars), mostly functional but lack LLM-optimization guidance on when to use each tool vs. similar ones. Per-tool analysis: tools 1 - 3, 5 - 7, 11 - 12 have solid input schemas (65 - 75 range); tools 4, 13 - 20 have empty inputs (0 - 30 range). All tools lack output schema definition, capping schema scores. Naming is consistent and clear throughout.
Create a new customer in Advbox. Requires user ID, origin ID, and customer name.
Create a new lawsuit in Advbox. Requires user ID, customer IDs, stage ID, and lawsuit type ID.
Get customers with birthdays in the current month
Get a specific customer by ID from Advbox
Get lawsuit groups from Advbox
Get a specific lawsuit by ID from Advbox
Output schemas not documented for any tool. No tool defines what fields are returned, breaking downstream tool chaining and forcing LLMs to guess field names. Tools like advbox_list_customers and advbox_get_lawsuit should document returned field structures (e.g., 'Returns: {id, name, email, phone, ...}'). This violates pattern:tool-chain and pattern:response-shaper.
Discovery/metadata tools lack input schemas and have minimal descriptions. advbox_get_birthdays, advbox_get_settings, advbox_get_users, advbox_get_origins, advbox_get_groups, advbox_get_stages, advbox_get_types, advbox_get_steps all have empty input schemas (no parameters documented) and descriptions under 50 characters. LLMs cannot determine when to call these vs. alternatives or what they return.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 55 | 2026-07-28+ | v2 |
Get the task history of a specific lawsuit
Get the movements/updates of a specific lawsuit
Get customer origins from Advbox
Get settings from Advbox
Get lawsuit stages from Advbox
Get lawsuit steps from Advbox
Get a specific transaction by ID from Advbox
Get lawsuit types from Advbox
Get users from Advbox
Get users rewards information from Advbox
List customers from Advbox with various filter options including name, phone, email, location, and creation date. Returns paginated results.
List lawsuits from Advbox with various filter options including customer, process number, dates, stage, and responsible. Returns paginated results.
List transactions from Advbox with various filter options including payment dates, due dates, and lawsuit ID. Returns paginated results.
Update an existing lawsuit in Advbox
No error handling guidance in any tool description. Tools do not document what errors are possible, whether they are retryable, or how to recover (e.g., 'If customer not found, call advbox_list_customers() to search by name'). This violates pattern:recovery-guide and pattern:error-classification.
Descriptions are brief (30 - 100 chars) and lack LLM-optimization context. Baseline for A-grade tools is 50 - 200 chars. Tools like advbox_get_customer ('Get a specific customer by ID from Advbox', 50 chars) and advbox_create_lawsuit ('Create a new lawsuit in Advbox. Requires user ID, customer IDs, stage ID, and lawsuit type ID.', 91 chars) lack guidance on when to use them vs. similar tools (e.g., when to call advbox_get_customer vs. advbox_list_customers).
Parameter descriptions in discovery tools are missing. advbox_get_users_rewards accepts a 'date' parameter (YYYY-MM-DD format) but description does not explain what 'date' filters (e.g., 'rewards earned on this date', 'rewards valid from this date'). This forces LLMs to guess intent.
No pagination guidance for list tools. advbox_list_customers and advbox_list_lawsuits accept 'limit' and 'offset' but tool descriptions do not state the default behavior (e.g., 'Returns max 100 items by default. Use limit and offset for pagination.') or indicate if there is a hard cap (limit 1-1000). Baseline recommends stating the limit in the description per pattern:paginated-result.