# eyeot ERP (io.github.Termi24/eyeot-erp): tool descriptions scored

- tools/list taken: 2026-11-02 (UTC)
- From: [Official MCP Registry](https://registry.modelcontextprotocol.io/v0/servers/io.github.Termi24%2Feyeot-erp/versions/latest)
- Connected to: https://erp.eyeot.fr/api/v1/mcp
- Repository: https://github.com/Termi24/ERP-by-Eyeot-Software
- Scoring rules: v2
- Tools: 33
- Average: 37.1 / 100 (Rain)
- Near-identical pairs: 0

This page shows how eyeot ERP (io.github.Termi24/eyeot-erp)'s tool descriptions scored, the issues found and the names of its tools and parameters. The descriptions are the server's own: read them where the copy came from.

Forecall asked the URL this server lists in the official MCP Registry for its tools/list once, on the date above, without calling any tool. The server may have changed since.

## Across the server

- Minor: 33 tools. Above 25, models start to tell tools apart less well.

## Tools

- `update_client`: 22 / 100
  - Major: The description only restates the name (4 words).
  - Major: The description is too short (4 words).
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: body.address, body.address_line1, body.address_line2, body.category, body.city, body.company, body.country, body.email, body.first_name, body.icp_score, body.last_name, body.marketing_opt_in, body.name, body.notes, body.phone, body.postal_code, body.siren, body.siret, body.status, body.vat_number, body.website.
  - Minor: String arguments with no constraint or example: client_id.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: The meaning of the boolean argument body.marketing_opt_in is unclear.
  - Minor: Says nothing about what it returns.
  - Minor: Required identifiers whose description does not say where the value comes from: client_id. Name the tool or the place that returns it, or models look it up first.
- `create_quote`: 23 / 100
  - Major: The description is too short (4 words).
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: body.client_id, body.currency, body.discount_percent, body.intervention_date, body.items, body.items[].discount_percent, body.items[].product_id, body.items[].product_name, body.items[].quantity, body.items[].tva_rate, body.items[].unit_price, body.notes, body.opportunity_id, body.technician_id, body.valid_until.
  - Minor: String arguments with no constraint or example: body.client_id, body.currency.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: Says nothing about what it returns.
- `create_client`: 24 / 100
  - Major: The description only restates the name (4 words).
  - Major: The description is too short (4 words).
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: body.address, body.address_line1, body.address_line2, body.category, body.city, body.company, body.country, body.email, body.first_name, body.icp_score, body.last_name, body.marketing_opt_in, body.name, body.notes, body.phone, body.postal_code, body.siren, body.siret, body.status, body.vat_number, body.website.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: The meaning of the boolean argument body.marketing_opt_in is unclear.
  - Minor: Says nothing about what it returns.
- `create_ticket`: 24 / 100
  - Major: The description only restates the name (5 words).
  - Major: The description is too short (5 words).
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: body.cart_lines, body.cart_lines[].discount_cents, body.cart_lines[].label, body.cart_lines[].product_id, body.cart_lines[].qty, body.cart_lines[].tax_rate_percent, body.cart_lines[].total_ht_cents, body.cart_lines[].total_ttc_cents, body.cart_lines[].total_tva_cents, body.cart_lines[].unit_price_ht_cents, body.client_id, body.payments, body.payments[].amount_cents, body.payments[].card_brand, body.payments[].change_cents, body.payments[].charge_id, body.payments[].last4, body.payments[].method, body.payments[].payment_intent_id, body.payments[].provider, body.payments[].reader_id, body.session_id.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: Says nothing about what it returns.
- `create_opportunity`: 26 / 100
  - Major: The description is too short (4 words).
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: body.amount, body.client_id, body.expected_close_date, body.notes, body.probability, body.stage.
  - Minor: String arguments with no constraint or example: body.client_id.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: Says nothing about what it returns.
- `request_leave`: 27 / 100
  - Major: The description is too short (3 words).
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: body.end_date, body.half_day_end, body.half_day_start, body.leave_type_id, body.reason, body.start_date, body.type.
  - Minor: String arguments with no constraint or example: body.type.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: The meaning of the boolean argument body.half_day_end is unclear.
  - Minor: The meaning of the boolean argument body.half_day_start is unclear.
  - Minor: Says nothing about what it returns.
- `create_product`: 28 / 100
  - Major: The description is too short (6 words).
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: body.auto_reorder, body.barcode, body.category, body.cost_price, body.name, body.quantity_in_stock, body.reorder_quantity, body.site_id, body.sku, body.sold_by_weight, body.threshold, body.unit, body.unit_precision, body.unit_price, body.valuation_method.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: The meaning of the boolean argument body.auto_reorder is unclear.
  - Minor: The meaning of the boolean argument body.sold_by_weight is unclear.
  - Minor: Says nothing about what it returns.
- `create_order`: 29 / 100
  - Major: The description is too short (6 words).
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: body.expected_delivery_date, body.items, body.items[].product_id, body.items[].quantity, body.items[].unit_price, body.notes, body.order_type, body.site_id, body.supplier_id.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: Says nothing about what it returns.
- `accept_quote`: 33 / 100
  - Major: The description only restates the name (7 words).
  - Major: The description is too short (7 words).
  - Major: Says nothing about when to use it, or when not to.
  - Minor: String arguments with no constraint or example: quote_id.
  - Minor: Says nothing about what it returns.
  - Minor: Required identifiers whose description does not say where the value comes from: quote_id. Name the tool or the place that returns it, or models look it up first.
- `get_client`: 33 / 100
  - Major: The description only restates the name (7 words).
  - Major: The description is too short (7 words).
  - Major: Says nothing about when to use it, or when not to.
  - Minor: String arguments with no constraint or example: client_id.
  - Minor: Says nothing about what it returns.
  - Minor: Required identifiers whose description does not say where the value comes from: client_id. Name the tool or the place that returns it, or models look it up first.
- `quote_pdf`: 33 / 100
  - Major: The description only restates the name (8 words).
  - Major: Says nothing about when to use it, or when not to.
  - Minor: String arguments with no constraint or example: quote_id.
  - Minor: Says nothing about what it returns.
  - Minor: Required identifiers whose description does not say where the value comes from: quote_id. Name the tool or the place that returns it, or models look it up first.
- `convert_opportunity_to_quote`: 37 / 100
  - Major: The description is too short (5 words).
  - Major: Says nothing about when to use it, or when not to.
  - Minor: String arguments with no constraint or example: opportunity_id.
  - Minor: Says nothing about what it returns.
  - Minor: Required identifiers whose description does not say where the value comes from: opportunity_id. Name the tool or the place that returns it, or models look it up first.
- `invoice_from_quote`: 37 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: String arguments with no constraint or example: quote_id.
  - Minor: Says nothing about what it returns.
  - Minor: Required identifiers whose description does not say where the value comes from: quote_id. Name the tool or the place that returns it, or models look it up first.
- `dashboard_alerts`: 38 / 100
  - Major: The description only restates the name (3 words).
  - Major: The description is too short (3 words).
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Says nothing about what it returns.
- `dashboard_kpis`: 38 / 100
  - Major: The description only restates the name (4 words).
  - Major: The description is too short (4 words).
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Says nothing about what it returns.
- `list_clients`: 38 / 100
  - Major: The description only restates the name (4 words).
  - Major: The description is too short (4 words).
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Says nothing about what it returns.
- `list_tickets`: 38 / 100
  - Major: The description only restates the name (4 words).
  - Major: The description is too short (4 words).
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Says nothing about what it returns.
- `stock_dashboard`: 38 / 100
  - Major: The description only restates the name (3 words).
  - Major: The description is too short (3 words).
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Says nothing about what it returns.
- `create_employee`: 42 / 100
  - Major: The description is too short (4 words).
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Says nothing about what it returns.
- `create_invoice`: 42 / 100
  - Major: The description is too short (4 words).
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Says nothing about what it returns.
- `list_employees`: 42 / 100
  - Major: The description is too short (4 words).
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Says nothing about what it returns.
- `list_invoices`: 42 / 100
  - Major: The description is too short (3 words).
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Says nothing about what it returns.
- `list_leaves`: 42 / 100
  - Major: The description is too short (6 words).
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Says nothing about what it returns.
- `list_opportunities`: 42 / 100
  - Major: The description is too short (5 words).
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Says nothing about what it returns.
- `list_orders`: 42 / 100
  - Major: The description is too short (5 words).
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Says nothing about what it returns.
- `list_products`: 42 / 100
  - Major: The description is too short (4 words).
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Says nothing about what it returns.
- `list_quotes`: 42 / 100
  - Major: The description is too short (3 words).
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Says nothing about what it returns.
- `list_stock_alerts`: 42 / 100
  - Major: The description is too short (4 words).
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Says nothing about what it returns.
- `list_suppliers`: 42 / 100
  - Major: The description is too short (3 words).
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Says nothing about what it returns.
- `search`: 42 / 100
  - Major: The description is too short (3 words).
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Says nothing about what it returns.
- `whoami`: 49 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Says nothing about what it returns.
- `eyeot_help`: 51 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: No `required` list, so every argument is optional.
  - Minor: Says nothing about what it returns.
- `eyeot_call`: 54 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Says nothing about what it returns.

Is your server listed here and you would rather it were not? Email support@forecall.dev, and we will take it off within 7 days.

[All scored servers](https://forecall.dev/en/servers)
