# ScoreCompute (com.scorecompute/scorecompute): tool descriptions scored

- tools/list taken: 2026-11-02 (UTC)
- From: [Official MCP Registry](https://registry.modelcontextprotocol.io/v0/servers/com.scorecompute%2Fscorecompute/versions/latest)
- Connected to: https://scorecompute.com/mcp
- Homepage: https://scorecompute.com/
- Scoring rules: v2
- Tools: 38
- Average: 46.2 / 100 (Cloudy)
- Near-identical pairs: 0

This page shows how ScoreCompute (com.scorecompute/scorecompute)'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: 38 tools. Above 25, models start to tell tools apart less well.
- Minor: The server's instructions are 3701 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.

## Tools

- `solve_equilibrium`: 26 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: iterations.
  - Minor: No `required` list, so every argument is optional.
  - Minor: Says nothing about what it returns.
- `analyze_chess_game`: 30 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: positions, positions[].fen, positions[].played, depth.
  - Minor: String arguments with no constraint or example: positions[].fen, positions[].played.
  - Minor: Says nothing about what it returns.
- `check_shadow_track`: 32 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: date_utc, latitude, longitude, samples, samples[].minutes, samples[].azimuth_deg, tolerance_deg.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: Says nothing about what it returns.
- `optimize_tasks`: 32 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: budget, items, items[].name, items[].duration, items[].value.
  - Minor: Says nothing about what it returns.
- `list_capabilities`: 34 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: theme.
  - Minor: No `required` list, so every argument is optional.
  - Minor: Says nothing about what it returns.
- `analyze_kinematics`: 35 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: angular_speed_deg_per_s, distance_min_km, distance_max_km, claimed_distance_km, claimed_speed_kmh.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: Says nothing about what it returns.
- `audit_statistics`: 35 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: n, mean, sd, decimals, min_value, max_value.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: Says nothing about what it returns.
- `simulate_pi`: 35 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: samples, seed, backend, device_ids.
  - Minor: Says nothing about what it returns.
- `simulate_plan`: 35 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: durations, budget, samples, seed, uncertainty.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: Says nothing about what it returns.
- `screen_wash_trading`: 39 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: trades, trades[].ts_s, trades[].price, trades[].volume, window_s, price_band_pct.
  - Minor: The description mentions none of its 3 or more arguments.
- `submit_network_job`: 41 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: samples, seed, backend, workload, scenario_id.
  - Minor: The description mentions none of its 3 or more arguments.
- `check_ephemeris`: 42 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: date_utc, latitude, longitude, object, claimed_azimuth_deg, claimed_elevation_deg, tolerance_deg.
  - Minor: The description mentions none of its 3 or more arguments.
- `scan_counterexample`: 42 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: bound, expression, max_counterexamples, max_evaluations, relation, tolerance, variables, variables[].max, variables[].min, variables[].name, variables[].steps.
- `tour_profile`: 42 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: points, points[].x, points[].y, reference_distance_fraction.
- `assimilate_observation`: 44 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: observations, observations.observers, observations.observers[].lat, observations.observers[].lon, observations.observers[].elevation_m, observations.observers[].sigma_az_deg, observations.observers[].sigma_el_deg, observations.observers[].samples, observations.observers[].samples[].azimuth_deg, observations.observers[].samples[].elevation_deg, new_series, new_series.id, new_series.station, new_series.station.id, new_series.station.lat, new_series.station.lon, new_series.station.elevation_m, new_series.sigma_az_deg, new_series.sigma_el_deg, new_series.samples, new_series.samples[].azimuth_deg, new_series.samples[].elevation_deg, objective, assumptions, assumptions.independent_new_errors, assumptions.exact_stations_and_clocks, assumptions.constant_velocity.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: The meaning of the boolean argument assumptions.independent_new_errors is unclear.
  - Minor: The meaning of the boolean argument assumptions.exact_stations_and_clocks is unclear.
  - Minor: The meaning of the boolean argument assumptions.constant_velocity is unclear.
- `build_robust_plan`: 44 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: items, items[].name, items[].duration, items[].value, budget, uncertainty, min_success_rate, samples, seed, max_candidates, duration_model, allowed_tools.
  - Minor: The description mentions none of its 3 or more arguments.
- `execute_composition`: 44 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: goals, available, constraints, constraints.allowed_tools, constraints.local_only, constraints.max_steps, constraints.max_search_states, constraints.max_structural_cost, inputs, adapters, adapters.route_durations.v1, adapters.route_durations.v1.speed_kmh.
  - Minor: The meaning of the boolean argument constraints.local_only is unclear.
- `get_network_job`: 44 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: job_id.
  - Minor: Required identifiers whose description does not say where the value comes from: job_id. Name the tool or the place that returns it, or models look it up first.
- `improve_schedule`: 44 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: items, items[].name, items[].duration, items[].value, required_indices, deadline_minutes, costs, costs.per_extra_minute, costs.per_lost_value, costs.max_cost, uncertainty, min_success_rate, samples, search_seed, confirmation_seed, duration_model.
  - Minor: String arguments with no constraint or example: duration_model.
  - Minor: The description mentions none of its 3 or more arguments.
- `plan_mission`: 44 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: items, items[].name, items[].duration, items[].value, budget, uncertainty, min_success_rate, samples, seed, max_candidates, duration_model, allowed_tools.
  - Minor: The description mentions none of its 3 or more arguments.
- `stress_test_observation`: 44 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: observations, observations.observers, observations.observers[].lat, observations.observers[].lon, observations.observers[].elevation_m, observations.observers[].sigma_az_deg, observations.observers[].sigma_el_deg, observations.observers[].samples, observations.observers[].samples[].azimuth_deg, observations.observers[].samples[].elevation_deg, claim, claim.max_position_shift_m, bounds, bounds.max_angular_bias_deg, bounds.max_clock_offset_delta_s, bounds.max_evaluations, bounds.stop_on_first, cases, cases[].id, cases[].observer_index, cases[].azimuth_bias_deg, cases[].elevation_bias_deg, perturbations_are_hypothetical.
  - Minor: The meaning of the boolean argument bounds.stop_on_first is unclear.
  - Minor: The meaning of the boolean argument perturbations_are_hypothetical is unclear.
- `compute_orbit`: 45 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: eccentricity, elapsed_days, semi_major_au.
  - Minor: The description mentions none of its 3 or more arguments.
- `run_route_policy`: 45 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: points, points[].x, points[].y, program, program.version, program.score, program.score.op, program.score.name, program.score.value, program.score.left, program.score.left.op, program.score.left.name, program.score.left.value, program.score.left.left, program.score.left.left.op, program.score.left.left.name, program.score.left.left.value, program.score.left.left.left, program.score.left.left.left.op, program.score.left.left.left.name, program.score.left.left.left.value, program.score.left.left.left.left, program.score.left.left.left.left.op, program.score.left.left.left.left.name, program.score.left.left.left.left.value, program.score.left.left.left.right, program.score.left.left.left.right.op, program.score.left.left.left.right.name, program.score.left.left.left.right.value, program.score.left.left.right, program.score.left.left.right.op, program.score.left.left.right.name, program.score.left.left.right.value, program.score.left.left.right.left, program.score.left.left.right.left.op, program.score.left.left.right.left.name, program.score.left.left.right.left.value, program.score.left.left.right.right, program.score.left.left.right.right.op, program.score.left.left.right.right.name, program.score.left.left.right.right.value, program.score.left.right, program.score.left.right.op, program.score.left.right.name, program.score.left.right.value, program.score.left.right.left, program.score.left.right.left.op, program.score.left.right.left.name, program.score.left.right.left.value, program.score.left.right.left.left, program.score.left.right.left.left.op, program.score.left.right.left.left.name, program.score.left.right.left.left.value, program.score.left.right.left.right, program.score.left.right.left.right.op, program.score.left.right.left.right.name, program.score.left.right.left.right.value, program.score.left.right.right, program.score.left.right.right.op, program.score.left.right.right.name, program.score.left.right.right.value, program.score.left.right.right.left, program.score.left.right.right.left.op, program.score.left.right.right.left.name, program.score.left.right.right.left.value, program.score.left.right.right.right, program.score.left.right.right.right.op, program.score.left.right.right.right.name, program.score.left.right.right.right.value, program.score.right, program.score.right.op, program.score.right.name, program.score.right.value, program.score.right.left, program.score.right.left.op, program.score.right.left.name, program.score.right.left.value, program.score.right.left.left, program.score.right.left.left.op, program.score.right.left.left.name, program.score.right.left.left.value, program.score.right.left.left.left, program.score.right.left.left.left.op, program.score.right.left.left.left.name, program.score.right.left.left.left.value, program.score.right.left.left.right, program.score.right.left.left.right.op, program.score.right.left.left.right.name, program.score.right.left.left.right.value, program.score.right.left.right, program.score.right.left.right.op, program.score.right.left.right.name, program.score.right.left.right.value, program.score.right.left.right.left, program.score.right.left.right.left.op, program.score.right.left.right.left.name, program.score.right.left.right.left.value, program.score.right.left.right.right, program.score.right.left.right.right.op, program.score.right.left.right.right.name, program.score.right.left.right.right.value, program.score.right.right, program.score.right.right.op, program.score.right.right.name, program.score.right.right.value, program.score.right.right.left, program.score.right.right.left.op, program.score.right.right.left.name, program.score.right.right.left.value, program.score.right.right.left.left, program.score.right.right.left.left.op, program.score.right.right.left.left.name, program.score.right.right.left.left.value, program.score.right.right.left.right, program.score.right.right.left.right.op, program.score.right.right.left.right.name, program.score.right.right.left.right.value, program.score.right.right.right, program.score.right.right.right.op, program.score.right.right.right.name, program.score.right.right.right.value, program.score.right.right.right.left, program.score.right.right.right.left.op, program.score.right.right.right.left.name, program.score.right.right.right.left.value, program.score.right.right.right.right, program.score.right.right.right.right.op, program.score.right.right.right.right.name, program.score.right.right.right.right.value, fuel_limit, time_budget_ms.
- `triangulate_tracks`: 45 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: observers, observers[].lat, observers[].lon, observers[].elevation_m, observers[].sigma_az_deg, observers[].sigma_el_deg, observers[].samples, observers[].samples[].azimuth_deg, observers[].samples[].elevation_deg.
  - Minor: The description mentions none of its 3 or more arguments.
- `compose_capabilities`: 47 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: goals, available, constraints, constraints.allowed_tools, constraints.local_only, constraints.max_steps, constraints.max_search_states, constraints.max_structural_cost, inputs, adapters, adapters.route_durations.v1, adapters.route_durations.v1.speed_kmh.
  - Minor: The meaning of the boolean argument constraints.local_only is unclear.
- `plan_observation`: 47 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Major: Arguments without a description: observations.observers, observations.observers[].lat, observations.observers[].lon, observations.observers[].elevation_m, observations.observers[].sigma_az_deg, observations.observers[].sigma_el_deg, observations.observers[].samples, observations.observers[].samples[].azimuth_deg, observations.observers[].samples[].elevation_deg, candidates, candidates[].id, candidates[].station, candidates[].station.id, candidates[].station.lat, candidates[].station.lon, candidates[].station.elevation_m, candidates[].sigma_az_deg, candidates[].sigma_el_deg, candidates[].cost_units, objective, constraints, constraints.max_cost_units, constraints.min_elevation_deg, assumptions, assumptions.independent_new_errors, assumptions.exact_stations_and_clocks, assumptions.constant_velocity.
  - Minor: The description mentions none of its 3 or more arguments.
  - Minor: The meaning of the boolean argument assumptions.independent_new_errors is unclear.
  - Minor: The meaning of the boolean argument assumptions.exact_stations_and_clocks is unclear.
  - Minor: The meaning of the boolean argument assumptions.constant_velocity is unclear.
- `verify_shadows`: 47 / 100
  - Major: Arguments without a description: date_utc, latitude, longitude, control_points, control_points[].px, control_points[].world, shadow, shadow.a, shadow.b, second_shadow, second_shadow.a, second_shadow.b, pixel_sigma, time_sigma_minutes, seed, samples.
  - Minor: The description mentions none of its 3 or more arguments.
- `kepler_stability`: 54 / 100
  - Major: Arguments without a description: a_max_au, a_min_au, duration_yr, e_max, e_min, initial_phase_deg, jupiter_semi_major_au, mass_ratio, max_work_units, n_a, n_e, steps_per_year.
  - Minor: The description mentions none of its 3 or more arguments.
- `forge_route_policy`: 55 / 100
  - Major: Arguments without a description: train, train[].id, train[].points, train[].points[].x, train[].points[].y, seed, budget, budget.candidates, budget.fuel_per_case, budget.time_per_case_ms.
- `check_arithmetic`: 57 / 100
  - Major: Arguments without a description: claimed_value, expression, tolerance_absolute, tolerance_relative, values, values[].name, values[].value.
- `list_composition_capabilities`: 57 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Says nothing about what it returns.
- `network_status`: 57 / 100
  - Minor: Says nothing about what it returns.
- `route_optimizer`: 57 / 100
  - Major: Arguments without a description: metric, points, points[].x, points[].y, points[].lat, points[].lon, return_to_start, time_budget_ms.
  - Minor: The meaning of the boolean argument return_to_start is unclear.
- `verify_claim`: 57 / 100
  - Major: Arguments without a description: domain, parameters, claim, claim.kind, claim.claimed_total_km, claim.order.
- `plan_golden_hour`: 60 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: The description mentions none of its 3 or more arguments.
- `propagate_uncertainty`: 66 / 100
  - Major: Says nothing about when to use it, or when not to.
  - Minor: Arguments without a description: correlations[].a, correlations[].b, correlations[].coefficient, variables, variables[].distribution, variables[].name.
- `hear_the_shape`: 67 / 100
  - Major: Says nothing about when to use it, or when not to.
- `shape_the_sound`: 84 / 100

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)
