All scored servers

io.github.luisa-sys/lyra-mcp-server: tool descriptions scored

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

Scores, issues and names only

This page shows how io.github.luisa-sys/lyra-mcp-server'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/io.github.luisa-sys/lyra-mcp-server
Average score
59.0 / 100Cloudy
Tools
41
Near-identical descriptions
0

Across the server

  • Major
    41 tools. Above 40, models choose less accurately.too_many_tools
  • Minor
    The server has no instructions. Say there, once, what the server is for and when to use it: Claude Code and Gemini CLI read the instructions before the tool descriptions.instructions_missing

Tools

lyra_remove_link

39 / 100Rain

Purpose
6 / 20
When to use
5 / 20
Arguments
18 / 25
Return value
0 / 15
Constraints and side effects
10 / 10
Examples
0 / 10
  • Major
    The description only restates the name (9 words).restates_name
  • Minor
    Says nothing about what it returns.no_return_info
  • Minor
    Required identifiers whose description does not say where the value comes from: link_id. Name the tool or the place that returns it, or models look it up first.id_source_missing

lyra_remove_school

39 / 100Rain

Purpose
6 / 20
When to use
5 / 20
Arguments
18 / 25
Return value
0 / 15
Constraints and side effects
10 / 10
Examples
0 / 10
  • Major
    The description only restates the name (9 words).restates_name
  • Minor
    Says nothing about what it returns.no_return_info
  • Minor
    Required identifiers whose description does not say where the value comes from: school_id. Name the tool or the place that returns it, or models look it up first.id_source_missing

lyra_add_link

47 / 100Cloudy

Purpose
17 / 20
When to use
5 / 20
Arguments
15 / 25
Return value
0 / 15
Constraints and side effects
10 / 10
Examples
0 / 10
  • Minor
    Arguments without a description: link_type.param_no_description
  • Minor
    String arguments with no constraint or example: title.loose_string_param
  • Minor
    The description mentions none of its 3 or more arguments.params_not_in_description
  • Minor
    Says nothing about what it returns.no_return_info

lyra_list_schools

47 / 100Cloudy

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

lyra_get_onboarding_coaching

49 / 100Cloudy

Purpose
20 / 20
When to use
0 / 20
Arguments
15 / 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
  • Minor
    No `required` list, so every argument is optional.no_required

lyra_publish_profile

50 / 100Cloudy

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

lyra_remove_item

50 / 100Cloudy

Purpose
17 / 20
When to use
5 / 20
Arguments
18 / 25
Return value
0 / 15
Constraints and side effects
10 / 10
Examples
0 / 10
  • Minor
    Says nothing about what it returns.no_return_info
  • 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.id_source_missing

lyra_create_gathering

52 / 100Cloudy

Purpose
17 / 20
When to use
5 / 20
Arguments
15 / 25
Return value
0 / 15
Constraints and side effects
10 / 10
Examples
5 / 10
  • Minor
    Arguments without a description: capacity_min, capacity_max, proposed_slots[].slot_start_iso, proposed_slots[].slot_end_iso, proposed_slots[].score.param_no_description
  • Minor
    String arguments with no constraint or example: proposed_slots[].slot_start_iso, proposed_slots[].slot_end_iso.loose_string_param
  • Minor
    The description mentions none of its 3 or more arguments.params_not_in_description
  • Minor
    Says nothing about what it returns.no_return_info

lyra_get_gathering

53 / 100Cloudy

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

lyra_link_contact_profile

53 / 100Cloudy

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

lyra_update_item

53 / 100Cloudy

Purpose
20 / 20
When to use
5 / 20
Arguments
18 / 25
Return value
0 / 15
Constraints and side effects
10 / 10
Examples
0 / 10
  • Minor
    String arguments with no constraint or example: title.loose_string_param
  • Minor
    Says nothing about what it returns.no_return_info
  • 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.id_source_missing

lyra_update_school

54 / 100Cloudy

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

lyra_get_insights

55 / 100Cloudy

Purpose
20 / 20
When to use
5 / 20
Arguments
18 / 25
Return value
0 / 15
Constraints and side effects
7 / 10
Examples
5 / 10
  • Minor
    String arguments with no constraint or example: slug.loose_string_param
  • Minor
    Says nothing about what it returns.no_return_info

lyra_get_section

55 / 100Cloudy

Purpose
20 / 20
When to use
5 / 20
Arguments
18 / 25
Return value
0 / 15
Constraints and side effects
7 / 10
Examples
5 / 10
  • Minor
    String arguments with no constraint or example: slug.loose_string_param
  • Minor
    Says nothing about what it returns.no_return_info

lyra_list_my_contacts

55 / 100Cloudy

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

lyra_update_manual_of_me

55 / 100Cloudy

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

lyra_cancel_gathering

56 / 100Cloudy

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

lyra_disconnect_provider

57 / 100Cloudy

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

lyra_finalise_gathering

57 / 100Cloudy

Purpose
17 / 20
When to use
5 / 20
Arguments
20 / 25
Return value
0 / 15
Constraints and side effects
10 / 10
Examples
5 / 10
  • Minor
    The description mentions none of its 3 or more arguments.params_not_in_description
  • Minor
    Says nothing about what it returns.no_return_info

lyra_list_my_gatherings

57 / 100Cloudy

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

lyra_update_profile

57 / 100Cloudy

Purpose
17 / 20
When to use
5 / 20
Arguments
15 / 25
Return value
0 / 15
Constraints and side effects
10 / 10
Examples
10 / 10
  • Minor
    String arguments with no constraint or example: display_name, headline, city.loose_string_param
  • Minor
    No `required` list, so every argument is optional.no_required
  • Minor
    Says nothing about what it returns.no_return_info

lyra_add_contact_to_tribe

58 / 100Cloudy

Purpose
17 / 20
When to use
10 / 20
Arguments
21 / 25
Return value
0 / 15
Constraints and side effects
10 / 10
Examples
0 / 10
  • Minor
    The description mentions none of its 3 or more arguments.params_not_in_description
  • Minor
    Says nothing about what it returns.no_return_info
  • Minor
    Required identifiers whose description does not say where the value comes from: tribe_id, contact_id. Name the tool or the place that returns it, or models look it up first.id_source_missing

lyra_add_contact

59 / 100Cloudy

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

lyra_record_rsvp

59 / 100Cloudy

Purpose
17 / 20
When to use
10 / 20
Arguments
22 / 25
Return value
0 / 15
Constraints and side effects
10 / 10
Examples
0 / 10
  • Minor
    The description mentions none of its 3 or more arguments.params_not_in_description
  • Minor
    Says nothing about what it returns.no_return_info
  • Minor
    Required identifiers whose description does not say where the value comes from: gathering_id, invitee_id. Name the tool or the place that returns it, or models look it up first.id_source_missing

lyra_search_profiles

59 / 100Cloudy

Purpose
20 / 20
When to use
10 / 20
Arguments
15 / 25
Return value
7 / 15
Constraints and side effects
7 / 10
Examples
0 / 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

lyra_update_gathering

59 / 100Cloudy

Purpose
20 / 20
When to use
15 / 20
Arguments
9 / 25
Return value
0 / 15
Constraints and side effects
10 / 10
Examples
5 / 10
  • Major
    Arguments without a description: title, description, target_window_start_iso, target_window_end_iso, capacity_min, capacity_max, dietary_summary, notes, accessibility_required.param_no_description
  • Minor
    String arguments with no constraint or example: target_window_start_iso, target_window_end_iso.loose_string_param
  • Minor
    The description mentions none of its 3 or more arguments.params_not_in_description
  • Minor
    Says nothing about what it returns.no_return_info
  • Minor
    Required identifiers whose description does not say where the value comes from: gathering_id. Name the tool or the place that returns it, or models look it up first.id_source_missing

lyra_add_school

60 / 100Cloudy

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

lyra_list_my_tribes

60 / 100Cloudy

Purpose
20 / 20
When to use
10 / 20
Arguments
15 / 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

lyra_add_item

61 / 100Cloudy

Purpose
17 / 20
When to use
5 / 20
Arguments
19 / 25
Return value
0 / 15
Constraints and side effects
10 / 10
Examples
10 / 10
  • Minor
    String arguments with no constraint or example: description.loose_string_param
  • Minor
    The description mentions none of its 3 or more arguments.params_not_in_description
  • Minor
    Says nothing about what it returns.no_return_info

lyra_create_tribe

64 / 100Cloudy

Purpose
17 / 20
When to use
5 / 20
Arguments
22 / 25
Return value
0 / 15
Constraints and side effects
10 / 10
Examples
10 / 10
  • Minor
    The description mentions none of its 3 or more arguments.params_not_in_description
  • Minor
    Says nothing about what it returns.no_return_info

lyra_suggest_substitute

65 / 100Cloudy

Purpose
17 / 20
When to use
10 / 20
Arguments
21 / 25
Return value
7 / 15
Constraints and side effects
10 / 10
Examples
0 / 10
  • Minor
    The description mentions none of its 3 or more arguments.params_not_in_description
  • Minor
    Required identifiers whose description does not say where the value comes from: gathering_id, declined_invitee_id. Name the tool or the place that returns it, or models look it up first.id_source_missing

lyra_suggest_venues

68 / 100Cloudy

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

No issues.

lyra_drain_invite_queue

69 / 100Cloudy

Purpose
17 / 20
When to use
15 / 20
Arguments
15 / 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

lyra_get_profile

69 / 100Cloudy

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

lyra_propose_attendees

69 / 100Cloudy

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

No issues.

lyra_reschedule_gathering

70 / 100Clear

Purpose
20 / 20
When to use
10 / 20
Arguments
20 / 25
Return value
0 / 15
Constraints and side effects
10 / 10
Examples
10 / 10
  • Minor
    The description mentions none of its 3 or more arguments.params_not_in_description
  • Minor
    Says nothing about what it returns.no_return_info

lyra_connect_calendar

71 / 100Clear

Purpose
17 / 20
When to use
15 / 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

lyra_send_invite

71 / 100Clear

Purpose
17 / 20
When to use
5 / 20
Arguments
22 / 25
Return value
7 / 15
Constraints and side effects
10 / 10
Examples
10 / 10
  • Minor
    The description mentions none of its 3 or more arguments.params_not_in_description
  • Minor
    Required identifiers whose description does not say where the value comes from: gathering_id, invitee_id. Name the tool or the place that returns it, or models look it up first.id_source_missing

lyra_get_my_calendar_busy_times

77 / 100Clear

Purpose
17 / 20
When to use
15 / 20
Arguments
18 / 25
Return value
7 / 15
Constraints and side effects
10 / 10
Examples
10 / 10
  • Minor
    The description mentions none of its 3 or more arguments.params_not_in_description

lyra_get_shared_availability

77 / 100Clear

Purpose
17 / 20
When to use
15 / 20
Arguments
18 / 25
Return value
7 / 15
Constraints and side effects
10 / 10
Examples
10 / 10
  • Minor
    The description mentions none of its 3 or more arguments.params_not_in_description

lyra_recommend_gifts

85 / 100Clear

Purpose
20 / 20
When to use
20 / 20
Arguments
21 / 25
Return value
7 / 15
Constraints and side effects
7 / 10
Examples
10 / 10
  • Minor
    String arguments with no constraint or example: slug.loose_string_param
  • Minor
    The description mentions none of its 3 or more arguments.params_not_in_description

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