All scored servers

Busymate DevTools: tool descriptions scored dev.busymate/busymate-devtools

tools/list taken
(UTC)
Connected to
https://mcp.busymate.dev
Scoring rules
v2
Score this URL as it is today

Scores, issues and names only

This page shows how Busymate DevTools (dev.busymate/busymate-devtools)'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.

servers/dev.busymate/busymate-devtools
Average score
56.1 / 100Cloudy
Tools
53
Near-identical descriptions
0

Across the server

  • Major
    53 tools. Above 40, models choose less accurately.too_many_tools

Tools

get_service_group

15 / 100Rain

Purpose
6 / 20
When to use
0 / 20
Arguments
2 / 25
Return value
0 / 15
Constraints and side effects
7 / 10
Examples
0 / 10
  • Major
    The description only restates the name (8 words).restates_name
  • Major
    Says nothing about when to use it, or when not to.no_usage_context
  • Major
    Arguments without a description: id, name.param_no_description
  • Minor
    String arguments with no constraint or example: id, name.loose_string_param
  • Minor
    No `required` list, so every argument is optional.no_required
  • Minor
    Says nothing about what it returns.no_return_info

get_workspace

15 / 100Rain

Purpose
6 / 20
When to use
0 / 20
Arguments
2 / 25
Return value
0 / 15
Constraints and side effects
7 / 10
Examples
0 / 10
  • Major
    The description only restates the name (7 words).restates_name
  • Major
    The description is too short (7 words).too_short
  • Major
    Says nothing about when to use it, or when not to.no_usage_context
  • Major
    Arguments without a description: id, slug.param_no_description
  • Minor
    String arguments with no constraint or example: id, slug.loose_string_param
  • Minor
    No `required` list, so every argument is optional.no_required
  • Minor
    Says nothing about what it returns.no_return_info

list_tabs

15 / 100Rain

Purpose
6 / 20
When to use
0 / 20
Arguments
2 / 25
Return value
0 / 15
Constraints and side effects
7 / 10
Examples
0 / 10
  • Major
    The description only restates the name (8 words).restates_name
  • Major
    Says nothing about when to use it, or when not to.no_usage_context
  • Major
    Arguments without a description: workspace_id, workspace_slug.param_no_description
  • Minor
    String arguments with no constraint or example: workspace_id, workspace_slug.loose_string_param
  • Minor
    No `required` list, so every argument is optional.no_required
  • Minor
    Says nothing about what it returns.no_return_info

get_device_settings

22 / 100Rain

Purpose
13 / 20
When to use
0 / 20
Arguments
2 / 25
Return value
0 / 15
Constraints and side effects
7 / 10
Examples
0 / 10
  • Major
    Says nothing about when to use it, or when not to.no_usage_context
  • Major
    Arguments without a description: device_uuid, deviceName.param_no_description
  • Minor
    String arguments with no constraint or example: device_uuid, deviceName.loose_string_param
  • Minor
    No `required` list, so every argument is optional.no_required
  • Minor
    Says nothing about what it returns.no_return_info

export_har

26 / 100Rain

Purpose
17 / 20
When to use
0 / 20
Arguments
2 / 25
Return value
0 / 15
Constraints and side effects
7 / 10
Examples
0 / 10
  • Major
    Says nothing about when to use it, or when not to.no_usage_context
  • Major
    Arguments without a description: device_uuid, deviceName, host, since, before, limit.param_no_description
  • Minor
    String arguments with no constraint or example: device_uuid, deviceName, host, since, before.loose_string_param
  • Minor
    No `required` list, so every argument is optional.no_required
  • Minor
    Says nothing about what it returns.no_return_info

get_entry_count

26 / 100Rain

Purpose
17 / 20
When to use
0 / 20
Arguments
2 / 25
Return value
0 / 15
Constraints and side effects
7 / 10
Examples
0 / 10
  • Major
    Says nothing about when to use it, or when not to.no_usage_context
  • Major
    Arguments without a description: workspace_id, workspace_slug, device_uuids, hosts, methods, status_class, search_q, origin, after, before.param_no_description
  • Minor
    String arguments with no constraint or example: workspace_id, workspace_slug, search_q, origin, after, before.loose_string_param
  • Minor
    No `required` list, so every argument is optional.no_required
  • Minor
    Says nothing about what it returns.no_return_info

download_snapshot

29 / 100Rain

Purpose
17 / 20
When to use
0 / 20
Arguments
5 / 25
Return value
0 / 15
Constraints and side effects
7 / 10
Examples
0 / 10
  • Major
    Says nothing about when to use it, or when not to.no_usage_context
  • Major
    Arguments without a description: name.param_no_description
  • Minor
    String arguments with no constraint or example: name.loose_string_param
  • Minor
    Says nothing about what it returns.no_return_info

get_block_rules_device

34 / 100Rain

Purpose
20 / 20
When to use
0 / 20
Arguments
2 / 25
Return value
0 / 15
Constraints and side effects
7 / 10
Examples
5 / 10
  • Major
    Says nothing about when to use it, or when not to.no_usage_context
  • Major
    Arguments without a description: device_uuid, deviceName.param_no_description
  • Minor
    String arguments with no constraint or example: device_uuid, deviceName.loose_string_param
  • Minor
    No `required` list, so every argument is optional.no_required
  • Minor
    Says nothing about what it returns.no_return_info

list_push_tokens

34 / 100Rain

Purpose
20 / 20
When to use
0 / 20
Arguments
2 / 25
Return value
0 / 15
Constraints and side effects
7 / 10
Examples
5 / 10
  • Major
    Says nothing about when to use it, or when not to.no_usage_context
  • Major
    Arguments without a description: device_uuid, deviceName.param_no_description
  • Minor
    String arguments with no constraint or example: device_uuid, deviceName.loose_string_param
  • Minor
    No `required` list, so every argument is optional.no_required
  • Minor
    Says nothing about what it returns.no_return_info

get_device_egress_status

37 / 100Rain

Purpose
20 / 20
When to use
0 / 20
Arguments
2 / 25
Return value
0 / 15
Constraints and side effects
10 / 10
Examples
5 / 10
  • Major
    Says nothing about when to use it, or when not to.no_usage_context
  • Major
    Arguments without a description: device_uuid, deviceName.param_no_description
  • Minor
    String arguments with no constraint or example: device_uuid, deviceName.loose_string_param
  • Minor
    No `required` list, so every argument is optional.no_required
  • Minor
    Says nothing about what it returns.no_return_info

list_snapshots

38 / 100Rain

Purpose
6 / 20
When to use
0 / 20
Arguments
25 / 25
Return value
0 / 15
Constraints and side effects
7 / 10
Examples
0 / 10
  • Major
    The description only restates the name (8 words).restates_name
  • Major
    Says nothing about when to use it, or when not to.no_usage_context
  • Minor
    Says nothing about what it returns.no_return_info

list_tags

38 / 100Rain

Purpose
6 / 20
When to use
0 / 20
Arguments
25 / 25
Return value
0 / 15
Constraints and side effects
7 / 10
Examples
0 / 10
  • Major
    The description only restates the name (7 words).restates_name
  • Major
    The description is too short (7 words).too_short
  • Major
    Says nothing about when to use it, or when not to.no_usage_context
  • Minor
    Says nothing about what it returns.no_return_info

get_device_status

39 / 100Rain

Purpose
20 / 20
When to use
5 / 20
Arguments
2 / 25
Return value
0 / 15
Constraints and side effects
7 / 10
Examples
5 / 10
  • Major
    Arguments without a description: device_uuid, deviceName.param_no_description
  • Minor
    String arguments with no constraint or example: device_uuid, deviceName.loose_string_param
  • Minor
    No `required` list, so every argument is optional.no_required
  • Minor
    Says nothing about what it returns.no_return_info

list_workspaces

47 / 100Cloudy

Purpose
20 / 20
When to use
0 / 20
Arguments
15 / 25
Return value
0 / 15
Constraints and side effects
7 / 10
Examples
5 / 10
  • Major
    Says nothing about when to use it, or when not to.no_usage_context
  • Minor
    Arguments without a description: include_archived.param_no_description
  • Minor
    No `required` list, so every argument is optional.no_required
  • Minor
    The meaning of the boolean argument include_archived is unclear.vague_boolean
  • Minor
    Says nothing about what it returns.no_return_info

list_service_groups

49 / 100Cloudy

Purpose
17 / 20
When to use
0 / 20
Arguments
25 / 25
Return value
0 / 15
Constraints and side effects
7 / 10
Examples
0 / 10
  • Major
    Says nothing about when to use it, or when not to.no_usage_context
  • Minor
    Says nothing about what it returns.no_return_info

list_wipe_jobs

50 / 100Cloudy

Purpose
20 / 20
When to use
0 / 20
Arguments
10 / 25
Return value
0 / 15
Constraints and side effects
10 / 10
Examples
10 / 10
  • Major
    Says nothing about when to use it, or when not to.no_usage_context
  • Major
    It may be destructive, but destructiveHint is not set.destructive_unmarked
  • Minor
    Arguments without a description: workspace_id, job_id, device_uuid.param_no_description
  • Minor
    String arguments with no constraint or example: workspace_id, workspace_slug, job_id, device_uuid.loose_string_param
  • Minor
    No `required` list, so every argument is optional.no_required
  • Minor
    Says nothing about what it returns.no_return_info

get_device_health

51 / 100Cloudy

Purpose
17 / 20
When to use
10 / 20
Arguments
2 / 25
Return value
7 / 15
Constraints and side effects
10 / 10
Examples
5 / 10
  • Major
    Arguments without a description: device_uuid, deviceName.param_no_description
  • Major
    It may be destructive, but destructiveHint is not set.destructive_unmarked
  • Minor
    String arguments with no constraint or example: device_uuid, deviceName.loose_string_param
  • Minor
    No `required` list, so every argument is optional.no_required

get_device_egress_fail_posture

54 / 100Cloudy

Purpose
20 / 20
When to use
10 / 20
Arguments
2 / 25
Return value
7 / 15
Constraints and side effects
10 / 10
Examples
5 / 10
  • Major
    Arguments without a description: device_uuid, deviceName.param_no_description
  • Minor
    String arguments with no constraint or example: device_uuid, deviceName.loose_string_param
  • Minor
    No `required` list, so every argument is optional.no_required

list_device_service_groups

57 / 100Cloudy

Purpose
20 / 20
When to use
5 / 20
Arguments
17 / 25
Return value
0 / 15
Constraints and side effects
10 / 10
Examples
5 / 10
  • Minor
    No `required` list, so every argument is optional.no_required
  • Minor
    Says nothing about what it returns.no_return_info

list_advisor_findings

58 / 100Cloudy

Purpose
20 / 20
When to use
0 / 20
Arguments
18 / 25
Return value
0 / 15
Constraints and side effects
10 / 10
Examples
10 / 10
  • Major
    Says nothing about when to use it, or when not to.no_usage_context
  • Minor
    No `required` list, so every argument is optional.no_required
  • Minor
    Says nothing about what it returns.no_return_info

search_entries

58 / 100Cloudy

Purpose
20 / 20
When to use
10 / 20
Arguments
6 / 25
Return value
7 / 15
Constraints and side effects
10 / 10
Examples
5 / 10
  • Major
    Arguments without a description: q, device_uuid, after, before, order, limit.param_no_description
  • Minor
    String arguments with no constraint or example: q, device_uuid, after, before.loose_string_param

get_advisor_finding

59 / 100Cloudy

Purpose
20 / 20
When to use
0 / 20
Arguments
20 / 25
Return value
7 / 15
Constraints and side effects
7 / 10
Examples
5 / 10
  • Major
    Says nothing about when to use it, or when not to.no_usage_context

get_push_response

59 / 100Cloudy

Purpose
20 / 20
When to use
0 / 20
Arguments
20 / 25
Return value
7 / 15
Constraints and side effects
7 / 10
Examples
5 / 10
  • Major
    Says nothing about when to use it, or when not to.no_usage_context

list_docs_sections

59 / 100Cloudy

Purpose
20 / 20
When to use
0 / 20
Arguments
25 / 25
Return value
7 / 15
Constraints and side effects
7 / 10
Examples
0 / 10
  • Major
    Says nothing about when to use it, or when not to.no_usage_context

list_todos

60 / 100Cloudy

Purpose
20 / 20
When to use
0 / 20
Arguments
21 / 25
Return value
7 / 15
Constraints and side effects
7 / 10
Examples
5 / 10
  • Major
    Says nothing about when to use it, or when not to.no_usage_context
  • Minor
    No `required` list, so every argument is optional.no_required

get_entry_counts_freshness

62 / 100Cloudy

Purpose
17 / 20
When to use
5 / 20
Arguments
25 / 25
Return value
0 / 15
Constraints and side effects
10 / 10
Examples
5 / 10
  • Major
    It may be destructive, but destructiveHint is not set.destructive_unmarked
  • Minor
    Says nothing about what it returns.no_return_info

get_product_pricing

64 / 100Cloudy

Purpose
20 / 20
When to use
5 / 20
Arguments
25 / 25
Return value
7 / 15
Constraints and side effects
7 / 10
Examples
0 / 10

No issues.

get_usage

64 / 100Cloudy

Purpose
20 / 20
When to use
0 / 20
Arguments
17 / 25
Return value
7 / 15
Constraints and side effects
10 / 10
Examples
10 / 10
  • Major
    Says nothing about when to use it, or when not to.no_usage_context
  • Minor
    No `required` list, so every argument is optional.no_required

list_entries

64 / 100Cloudy

Purpose
20 / 20
When to use
0 / 20
Arguments
17 / 25
Return value
7 / 15
Constraints and side effects
10 / 10
Examples
10 / 10
  • Major
    Says nothing about when to use it, or when not to.no_usage_context
  • Minor
    No `required` list, so every argument is optional.no_required

list_invoices

64 / 100Cloudy

Purpose
20 / 20
When to use
0 / 20
Arguments
22 / 25
Return value
7 / 15
Constraints and side effects
10 / 10
Examples
5 / 10
  • Major
    Says nothing about when to use it, or when not to.no_usage_context
  • Minor
    No `required` list, so every argument is optional.no_required

list_screen_share_recordings

64 / 100Cloudy

Purpose
20 / 20
When to use
5 / 20
Arguments
17 / 25
Return value
7 / 15
Constraints and side effects
10 / 10
Examples
5 / 10
  • Minor
    No `required` list, so every argument is optional.no_required

search_docs

64 / 100Cloudy

Purpose
20 / 20
When to use
0 / 20
Arguments
25 / 25
Return value
7 / 15
Constraints and side effects
7 / 10
Examples
5 / 10
  • Major
    Says nothing about when to use it, or when not to.no_usage_context

get_setup_steps

66 / 100Cloudy

Purpose
20 / 20
When to use
5 / 20
Arguments
22 / 25
Return value
7 / 15
Constraints and side effects
7 / 10
Examples
5 / 10
  • Minor
    No `required` list, so every argument is optional.no_required

get_subscription

66 / 100Cloudy

Purpose
20 / 20
When to use
0 / 20
Arguments
22 / 25
Return value
7 / 15
Constraints and side effects
7 / 10
Examples
10 / 10
  • Major
    Says nothing about when to use it, or when not to.no_usage_context
  • Minor
    No `required` list, so every argument is optional.no_required

test_pac_connection

66 / 100Cloudy

Purpose
17 / 20
When to use
10 / 20
Arguments
17 / 25
Return value
7 / 15
Constraints and side effects
10 / 10
Examples
5 / 10
  • Minor
    No `required` list, so every argument is optional.no_required
  • Minor
    The description mentions none of its 3 or more arguments.params_not_in_description

get_screen_share_recording

67 / 100Cloudy

Purpose
20 / 20
When to use
5 / 20
Arguments
20 / 25
Return value
7 / 15
Constraints and side effects
10 / 10
Examples
5 / 10
  • Minor
    String arguments with no constraint or example: id.loose_string_param
  • Minor
    Required identifiers whose description does not say where the value comes from: id. Name the tool or the place that returns it, or models look it up first.id_source_missing

list_device_audit_modes

67 / 100Cloudy

Purpose
17 / 20
When to use
10 / 20
Arguments
25 / 25
Return value
0 / 15
Constraints and side effects
10 / 10
Examples
5 / 10
  • Minor
    Says nothing about what it returns.no_return_info

get_audit_event

69 / 100Cloudy

Purpose
20 / 20
When to use
5 / 20
Arguments
20 / 25
Return value
7 / 15
Constraints and side effects
7 / 10
Examples
10 / 10

No issues.

get_stats

69 / 100Cloudy

Purpose
20 / 20
When to use
5 / 20
Arguments
25 / 25
Return value
7 / 15
Constraints and side effects
7 / 10
Examples
5 / 10

No issues.

get_todo

69 / 100Cloudy

Purpose
20 / 20
When to use
10 / 20
Arguments
20 / 25
Return value
7 / 15
Constraints and side effects
7 / 10
Examples
5 / 10
  • Minor
    Required identifiers whose description does not say where the value comes from: id. Name the tool or the place that returns it, or models look it up first.id_source_missing

list_breakpoint_events

69 / 100Cloudy

Purpose
20 / 20
When to use
5 / 20
Arguments
22 / 25
Return value
7 / 15
Constraints and side effects
10 / 10
Examples
5 / 10
  • Minor
    No `required` list, so every argument is optional.no_required

list_issue_reports

69 / 100Cloudy

Purpose
20 / 20
When to use
5 / 20
Arguments
22 / 25
Return value
7 / 15
Constraints and side effects
10 / 10
Examples
5 / 10
  • Minor
    No `required` list, so every argument is optional.no_required

share_advisor_finding

69 / 100Cloudy

Purpose
20 / 20
When to use
5 / 20
Arguments
22 / 25
Return value
7 / 15
Constraints and side effects
10 / 10
Examples
5 / 10
  • Minor
    String arguments with no constraint or example: fingerprint.loose_string_param

inspect_requests

71 / 100Clear

Purpose
17 / 20
When to use
10 / 20
Arguments
17 / 25
Return value
7 / 15
Constraints and side effects
10 / 10
Examples
10 / 10
  • Minor
    Arguments without a description: device_uuid, deviceName.param_no_description
  • Minor
    String arguments with no constraint or example: device_uuid, deviceName.loose_string_param

summarize_device_traffic

73 / 100Clear

Purpose
17 / 20
When to use
20 / 20
Arguments
17 / 25
Return value
7 / 15
Constraints and side effects
7 / 10
Examples
5 / 10
  • Minor
    No `required` list, so every argument is optional.no_required

get_my_account

74 / 100Clear

Purpose
17 / 20
When to use
10 / 20
Arguments
25 / 25
Return value
7 / 15
Constraints and side effects
10 / 10
Examples
5 / 10

No issues.

list_audit_events

74 / 100Clear

Purpose
20 / 20
When to use
10 / 20
Arguments
17 / 25
Return value
7 / 15
Constraints and side effects
10 / 10
Examples
10 / 10
  • Minor
    No `required` list, so every argument is optional.no_required

read_docs_page

74 / 100Clear

Purpose
20 / 20
When to use
5 / 20
Arguments
25 / 25
Return value
7 / 15
Constraints and side effects
7 / 10
Examples
10 / 10

No issues.

list_device_events

75 / 100Clear

Purpose
17 / 20
When to use
15 / 20
Arguments
16 / 25
Return value
7 / 15
Constraints and side effects
10 / 10
Examples
10 / 10
  • Major
    It may be destructive, but destructiveHint is not set.destructive_unmarked
  • Minor
    The description is long (715 words). It helps selection but costs steps and tokens.too_long
  • Minor
    Arguments without a description: device_uuid, deviceName.param_no_description
  • Minor
    String arguments with no constraint or example: device_uuid, deviceName, host.loose_string_param
  • Minor
    No `required` list, so every argument is optional.no_required

get_device

76 / 100Clear

Purpose
20 / 20
When to use
20 / 20
Arguments
17 / 25
Return value
7 / 15
Constraints and side effects
7 / 10
Examples
5 / 10
  • Minor
    String arguments with no constraint or example: device_uuid.loose_string_param
  • Minor
    No `required` list, so every argument is optional.no_required

list_devices

76 / 100Clear

Purpose
20 / 20
When to use
10 / 20
Arguments
19 / 25
Return value
7 / 15
Constraints and side effects
10 / 10
Examples
10 / 10
  • Minor
    No `required` list, so every argument is optional.no_required

get_entry

79 / 100Clear

Purpose
20 / 20
When to use
15 / 20
Arguments
17 / 25
Return value
7 / 15
Constraints and side effects
10 / 10
Examples
10 / 10
  • Minor
    No `required` list, so every argument is optional.no_required

get_status

79 / 100Clear

Purpose
20 / 20
When to use
15 / 20
Arguments
25 / 25
Return value
7 / 15
Constraints and side effects
7 / 10
Examples
5 / 10

No issues.

What static scoring cannot tell

This score reads only the text of each description and schema: it says what is written, not what a model will do. Short tools whose names already say what they do, such as browser_close, score low here even when models use them well, and in our measurements current models chose the right tool in one step even from one-line descriptions, as long as the names and schemas differed. What the text cannot show, such as what happens over several steps and whether an added sentence helps or misleads, is what an evaluation measures, on the Pro and Team plans.

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