MCP server for interacting with Bazos.cz classifieds platform, providing tools to search advertisements, manage user ratings, create/delete ads, and handle authentication
Bazos MCP server has explicit tool registration with schemas and descriptions, but significant gaps limit production readiness. All 8 tools have descriptions (10-200 chars, mostly adequate) and input schemas with typed properties. However, output schemas are completely undocumented, LLMs cannot predict response structure for chaining. Parameter descriptions are present but often lack constraints (ranges, formats, dependencies). Error handling is minimal: generic catch-all exceptions with no recovery guidance. Security concerns: phone numbers and emails exposed as parameters; no mention of rate limiting despite explicit warnings about ban risk. Tool composition is reasonable (search, get, create, delete, verify) but lacks idempotency guarantees and confirmation patterns for destructive ops.
Creates a new ad with provided values. If the user doesn't provide any of the required fields that cannot be created from the context, ask the user for them. User must be verified with a phone number to do this action (only do the verification if you return forbidden response, the MCP server holds the verification token across sessions).
Delete users ad by ad ID. User must be verified with a phone number to do this action (only do the verification if you got forbidden response, the MCP server holds the verification token across sessions).
Get detail of the advertisement
Get ratings of a user
Get zip code from latitude and longitude
Sends a SMS notification with the verification code to the user. Ask to paste the verification code and call the tool for verifying the code. Call this tool ONLY if you got FORBIDDEN response from te server - authentication is persistent across sessions
No output schemas documented. LLMs cannot predict response structure, breaking tool chaining and forcing agents to guess field names for downstream calls.
Phone numbers and emails exposed as tool parameters. These are PII and should never appear in agent traces/logs. Use server-side secret injection or require user input via MRTR.
Destructive operations (delete_ad, create_ad) lack confirmation or dry-run support. Agents can accidentally delete ads without user approval.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 52 | 2026-07-28+ | v2 |
Returns a list of advertisements on Bazos.cz with specified parameters
Put the token from the sms with the phone number and get the token. Before calling this tool always ask user for the token. This should be called after this tool: request_sms_login_with_phone_number
Generic error handling: catch-all exceptions return only error message, no recovery guidance. 'Error fetching bazos advertisements: ...' tells LLM nothing about retry eligibility or next steps.
Parameter constraints missing: offset/limit lack min/max bounds despite explicit ban-risk warnings (up to 200). No enum for price_type in search_ads. No regex/format for phone numbers.