# Timesheets.com MCP by usefulapi (io.usefulapi/timesheets-com): tool descriptions scored

- tools/list taken: 2026-11-02 (UTC)
- From: [Official MCP Registry](https://registry.modelcontextprotocol.io/v0/servers/io.usefulapi%2Ftimesheets-com/versions/latest)
- Connected to: https://timesheets-com.usefulapi.io/mcp
- Homepage: https://usefulapi.io/timesheets-com/
- Repository: https://github.com/m190/usefulapi-mcp
- Scoring rules: v2
- Tools: 22
- Average: 40.0 / 100 (Cloudy)
- Near-identical pairs: 1

This page shows how Timesheets.com MCP by usefulapi (io.usefulapi/timesheets-com)'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

No server-wide issues.

## Tools

- `timesheets_update_vendor`: 28 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: vendor_name, city, state, contact_email, comments.
  - Minor: String arguments with no constraint or example: city, state, comments.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: Says nothing about what it returns.
  - Minor: Required identifiers whose description does not say where the value comes from: vendor_id. Name the tool or the place that returns it, or models look it up first.
- `timesheets_create_event`: 29 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: event_name, event_description.
  - Minor: String arguments with no constraint or example: event_description.
  - Minor: Says nothing about what it returns.
- `timesheets_create_vendor`: 29 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: vendor_name, city, state, contact_email, comments.
  - Minor: String arguments with no constraint or example: city, state, comments.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: Says nothing about what it returns.
- `timesheets_update_event`: 31 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: event_name, event_description.
  - Minor: String arguments with no constraint or example: event_description.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: Says nothing about what it returns.
  - Minor: Required identifiers whose description does not say where the value comes from: event_id. Name the tool or the place that returns it, or models look it up first.
- `timesheets_get_server_reference`: 35 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: what.
  - Minor: Says nothing about what it returns.
- `timesheets_list_project_timers`: 36 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: customer_ids, project_ids, account_code_ids.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: Says nothing about what it returns.
  - Minor: Required identifiers whose description does not say where the value comes from: user_id. Name the tool or the place that returns it, or models look it up first.
- `timesheets_get_project_report`: 37 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: start_date, end_date, user_ids, customer_ids, project_ids, account_code_ids, group_type.
  - Minor: String arguments with no constraint or example: group_type.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: Says nothing about what it returns.
- `timesheets_list_payroll_periods`: 37 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: start_date, end_date.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: Says nothing about what it returns.
- `timesheets_get_expense_report`: 39 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: start_date, end_date, user_ids, vendor_ids, event_ids, customer_ids, project_ids, account_code_ids.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: Says nothing about what it returns.
- `timesheets_get_item`: 40 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Arguments without a description: kind.
  - Minor: Says nothing about what it returns.
  - Minor: Required identifiers whose description does not say where the value comes from: item_id. Name the tool or the place that returns it, or models look it up first.
- `timesheets_get_payroll_period`: 40 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Arguments without a description: user_ids.
  - Minor: Says nothing about what it returns.
  - Minor: Required identifiers whose description does not say where the value comes from: payroll_id. Name the tool or the place that returns it, or models look it up first.
- `timesheets_preview_payroll`: 41 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: start_date, end_date, user_ids.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: Says nothing about what it returns.
- `timesheets_get_record_history`: 43 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Arguments without a description: kind.
  - Minor: Says nothing about what it returns.
  - Minor: Required identifiers whose description does not say where the value comes from: record_id. Name the tool or the place that returns it, or models look it up first.
- `timesheets_list_items`: 43 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Arguments without a description: kind, order_by, full_text_search, start_row.
  - Minor: String arguments with no constraint or example: full_text_search.
  - Minor: Says nothing about what it returns.
- `timesheets_get_hourly_report`: 44 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: mode, start_date, end_date, user_ids, account_code_ids, include_work_description, include_extended_data.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: The meaning of the boolean argument include_work_description is unclear.
  - Minor: The meaning of the boolean argument include_extended_data is unclear.
  - Minor: Says nothing about what it returns.
- `timesheets_list_clock_shifts`: 44 / 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.
- `timesheets_list_users`: 44 / 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.
- `timesheets_create_user`: 45 / 100
  - Major: Arguments without a description: first_name, last_name, email, pay_type, job_title, employee_type, dst_enabled, enable_hourly_tracking, enable_project_tracking, enable_expense_reports.
  - Minor: String arguments with no constraint or example: job_title, employee_type.
  - Minor: The meaning of the boolean argument dst_enabled is unclear.
  - Minor: The meaning of the boolean argument enable_hourly_tracking is unclear.
  - Minor: The meaning of the boolean argument enable_project_tracking is unclear.
  - Minor: The meaning of the boolean argument enable_expense_reports is unclear.
  - Minor: The meaning of the boolean argument send_notification_email is unclear.
  - Minor: Says nothing about what it returns.
  - Minor: Required identifiers whose description does not say where the value comes from: timezone_id. Name the tool or the place that returns it, or models look it up first.
- `timesheets_unassign_user_items`: 45 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Arguments without a description: kind.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: Says nothing about what it returns.
  - Minor: Required identifiers whose description does not say where the value comes from: user_id, item_ids. Name the tool or the place that returns it, or models look it up first.
- `timesheets_assign_user_items`: 48 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Arguments without a description: kind.
  - Minor: Says nothing about what it returns.
  - Minor: Required identifiers whose description does not say where the value comes from: user_id, item_ids. Name the tool or the place that returns it, or models look it up first.
- `timesheets_get_clock_shift`: 50 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Says nothing about what it returns.
  - Minor: Required identifiers whose description does not say where the value comes from: user_id. Name the tool or the place that returns it, or models look it up first.
- `timesheets_get_user_info`: 51 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: No `required` list, so every argument is optional.

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)
