All scored servers

Botchelor: tool descriptions scored io.github.smithdavedesign/botchelor

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

Scores, issues and names only

This page shows how Botchelor (io.github.smithdavedesign/botchelor)'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.smithdavedesign/botchelor
Average score
56.6 / 100Cloudy
Tools
37
Near-identical descriptions
0

Across the server

  • Minor
    37 tools. Above 25, models start to tell tools apart less well.many_tools
  • Minor
    The server's instructions are 3934 characters. Claude Code reads only the first 2,048 by default (Codex 0.154.0 reads them whole). Put what the server is for first.instructions_long

Tools

update_character

39 / 100Rain

Purpose
20 / 20
When to use
0 / 20
Arguments
7 / 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: character_id, name, age, bio, traits, want, dealbreaker, appearance, pronouns, voice, soul, extras, temperament, this_week, keep_name, open_to_dates, open_audience, while_away, partner_style.param_no_description
  • Minor
    String arguments with no constraint or example: name, bio, want, dealbreaker, appearance, voice, this_week.loose_string_param
  • Minor
    The meaning of the boolean argument keep_name is unclear.vague_boolean
  • Minor
    The meaning of the boolean argument open_to_dates is unclear.vague_boolean
  • Minor
    Says nothing about what it returns.no_return_info
  • Minor
    Required identifiers whose description does not say where the value comes from: character_id. Name the tool or the place that returns it, or models look it up first.id_source_missing

decline_own_date

40 / 100Cloudy

Purpose
20 / 20
When to use
0 / 20
Arguments
13 / 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
    Arguments without a description: episode_id.param_no_description
  • Minor
    Says nothing about what it returns.no_return_info
  • Minor
    Required identifiers whose description does not say where the value comes from: episode_id. Name the tool or the place that returns it, or models look it up first.id_source_missing

export_character

40 / 100Cloudy

Purpose
20 / 20
When to use
0 / 20
Arguments
13 / 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
    Arguments without a description: character_id.param_no_description
  • Minor
    Says nothing about what it returns.no_return_info
  • Minor
    Required identifiers whose description does not say where the value comes from: character_id. Name the tool or the place that returns it, or models look it up first.id_source_missing

get_leaderboard

42 / 100Cloudy

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

link_account

42 / 100Cloudy

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

get_character

47 / 100Cloudy

Purpose
20 / 20
When to use
0 / 20
Arguments
8 / 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
  • Major
    Arguments without a description: character_id.param_no_description
  • Minor
    Required identifiers whose description does not say where the value comes from: character_id. Name the tool or the place that returns it, or models look it up first.id_source_missing

vote_feedback

48 / 100Cloudy

Purpose
20 / 20
When to use
0 / 20
Arguments
16 / 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: vote.param_no_description
  • 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

clear_model

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

my_dates

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

predict

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
    Arguments without a description: episode_id, pick.param_no_description
  • Minor
    Required identifiers whose description does not say where the value comes from: episode_id. Name the tool or the place that returns it, or models look it up first.id_source_missing

review_character

49 / 100Cloudy

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

my_model

51 / 100Cloudy

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

my_notifications

51 / 100Cloudy

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

hand_over_own_date

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: episode_id.param_no_description
  • 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: episode_id. Name the tool or the place that returns it, or models look it up first.id_source_missing

my_status

54 / 100Cloudy

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

read_texts

54 / 100Cloudy

Purpose
20 / 20
When to use
5 / 20
Arguments
22 / 25
Return value
0 / 15
Constraints and side effects
7 / 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: character_id. Name the tool or the place that returns it, or models look it up first.id_source_missing

send_text

54 / 100Cloudy

Purpose
20 / 20
When to use
5 / 20
Arguments
22 / 25
Return value
0 / 15
Constraints and side effects
7 / 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: character_id. Name the tool or the place that returns it, or models look it up first.id_source_missing

swipe_deck

56 / 100Cloudy

Purpose
20 / 20
When to use
0 / 20
Arguments
19 / 25
Return value
0 / 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
    Arguments without a description: limit.param_no_description
  • 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: character_id. Name the tool or the place that returns it, or models look it up first.id_source_missing

reflect_on_date

57 / 100Cloudy

Purpose
20 / 20
When to use
5 / 20
Arguments
15 / 25
Return value
0 / 15
Constraints and side effects
7 / 10
Examples
10 / 10
  • Minor
    Arguments without a description: episode_id, rating, would_date_again, worked.param_no_description
  • Minor
    The meaning of the boolean argument would_date_again is unclear.vague_boolean
  • Minor
    Says nothing about what it returns.no_return_info
  • Minor
    Required identifiers whose description does not say where the value comes from: episode_id. Name the tool or the place that returns it, or models look it up first.id_source_missing

browse_episodes

58 / 100Cloudy

Purpose
20 / 20
When to use
5 / 20
Arguments
19 / 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

search_characters

58 / 100Cloudy

Purpose
20 / 20
When to use
0 / 20
Arguments
19 / 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

feedback_board

60 / 100Cloudy

Purpose
20 / 20
When to use
15 / 20
Arguments
18 / 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
    The description mentions none of its 3 or more arguments.params_not_in_description
  • Minor
    Says nothing about what it returns.no_return_info

set_date_visibility

60 / 100Cloudy

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

get_episode

61 / 100Cloudy

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

my_matches

61 / 100Cloudy

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

set_model

61 / 100Cloudy

Purpose
20 / 20
When to use
0 / 20
Arguments
22 / 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

create_character

62 / 100Cloudy

Purpose
20 / 20
When to use
0 / 20
Arguments
18 / 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
    Arguments without a description: age, soul.values, soul.insecurities, soul.humor, soul.boundaries, soul.romantic, soul.communication, temperament.warmth, temperament.openness, temperament.guardedness, temperament.humor, keep_look_alike.param_no_description
  • Minor
    The meaning of the boolean argument keep_look_alike is unclear.vague_boolean

answer_match

63 / 100Cloudy

Purpose
20 / 20
When to use
10 / 20
Arguments
18 / 25
Return value
0 / 15
Constraints and side effects
10 / 10
Examples
5 / 10
  • Minor
    Arguments without a description: yes.param_no_description
  • Minor
    The meaning of the boolean argument yes is unclear.vague_boolean
  • Minor
    Says nothing about what it returns.no_return_info
  • Minor
    Required identifiers whose description does not say where the value comes from: character_id. Name the tool or the place that returns it, or models look it up first.id_source_missing

sliding_doors

63 / 100Cloudy

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

send_feedback

66 / 100Cloudy

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

autoplay_own_date

67 / 100Cloudy

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

go_on_date

67 / 100Cloudy

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

plan_second_date

68 / 100Cloudy

Purpose
17 / 20
When to use
15 / 20
Arguments
14 / 25
Return value
7 / 15
Constraints and side effects
10 / 10
Examples
5 / 10
  • Minor
    Arguments without a description: character_id, with, place.param_no_description
  • Minor
    No `required` list, so every argument is optional.no_required

get_own_date_step

70 / 100Clear

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

swipe

70 / 100Clear

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

submit_own_date_step

72 / 100Clear

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

start_own_date

83 / 100Clear

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

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