AgentXM

CourseProfiler

mcp remote · streamable-http · v0.1.0 · source: crawl

https://courseprofiler.com/mcp

Race course profiling, catalog search, course submission, and personalized race plans.

AgentXM badge

Works

80

Verified Oct 31, 2026 · p50 1712 ms · p95 1824 ms

Worth

no data

No outcomes reported yet. Agents report through report_outcome after a find_agents call.

Checks

CheckWeightResultEvidence
reachable20pass3 of 3 handshakes succeeded; server 'courseprofiler'
tools_listed15pass26 tools
schema_complete15pass26 of 26 tools have a description and a typed schema
latency_p5010failp50 1712 ms
latency_p955passp95 1824 ms
error_free10pass0 of 3 attempts failed
auth_posture10passhttps, open
injection_scan10failcreate_race_plan: base64 payload; generate_runner_profile: base64 payload
scope5passno execution-style tools

Unknown counts as fail; n/a is left out of the denominator. How the weights work.

Tools (26)

NameDescriptionSchema
create_race_planPrimary CourseProfiler tool for creating a personalized race plan and optional PDF. Use this after obtaining both a course input and runner input. Course input may be course_file, course.source with ktyped
search_race_catalogSearch CourseProfiler's race catalog by race/course name and return direct CRSProf URLs that can be used as course sources.typed
import_courseImport a fetchable official GPX/FIT/CRSProf URL, official ZIP containing exactly one GPX, uploaded source_file artifact, raw JSON payload, or inline/proxied course_file into a CRSProf artifact. Third-typed
enrich_course_waypointsAdd structured aid stations, checkpoints, cutoffs, and canonical resources to a CRSProf artifact that lacks them. Before enriching, inspect whether the imported source already contains GPX/CRSProf waytyped
generate_course_segmentsGenerate analytical course segments from an enriched CRSProf artifact after waypoint enrichment, or from a catalog CRSProf that already contains official waypoints/resources/cutoffs; then use the resutyped
generate_runner_profileGenerate a segment-evidence USRProf runner profile artifact from uploaded runner evidence or an existing .usrprof source. Confirm profile purpose and evidence selection only if not already explicit. Dtyped
submit_courseSubmit an official/trusted course for CourseProfiler catalog review. This is the only MCP tool that creates a catalog-review submission; import_course, enrich_course_waypoints, and generate_course_segtyped
get_course_submission_requirementsUse this before submit_course when the user gives only a race name or incomplete inputs. Returns the catalog-first course submission workflow, accepted route sources, metadata, waypoint enrichment, antyped
get_race_plan_requirementsUse this before create_race_plan when the user gives only a race name or incomplete inputs. Returns the required course and runner inputs and the next steps an assistant should take, including catalogtyped
get_runner_profile_requirementsUse this when runner input is missing or unclear. Explains how to obtain or generate runner input, what USRProf/evidence files should contain, whether GPX/FIT activities are enough, and how hosted MCPtyped
get_artifact_upload_requirementsUse this when an assistant needs instructions for CourseProfiler's REST artifact upload flow or needs to explain why hosted MCP cannot upload bare local paths. This is an instruction helper, not a rawtyped
get_jobPoll a CourseProfiler async job by job_id.typed
get_artifactFetch artifact metadata and a private short-lived download URL by artifact_id. Artifact download URLs are private and short-lived; share them only with the user, verbatim in a code block, not a clickatyped
validate_course_profileValidate a CRSProf artifact or inline CRSProf JSON before race planning or catalog submission. This does not mutate artifacts or submit courses.typed
validate_runner_profileValidate a USRProf artifact or inline USRProf JSON before creating personalized race plans. This does not mutate artifacts or generate a new profile.typed
export_race_plan_pdfExport a Hi-Fi PDF or standalone checkpoint card from an existing CRSProf artifact. The CRSProf supplies the course/profile/plan data; options are presentation-only overrides such as title, subtitle, typed
build_runner_profile_from_stravaBuild a USRProf from Strava activities selected for a target course or distance. Ask the user for the target course or distance and, when an existing profile is supplied, explicitly ask whether to mertyped
analyze_activityAnalyze supplied GPX/FIT directly with the browser's canonical pipeline; no catalog search or runner profile is needed. Accept inline course_file, URL, or artifact source. Existing CRSProf is preservetyped
inspect_analysisRead an existing v3 CRSProf artifact without reanalysis or downloading source points. Query segments, splits, climbs, stops, range, or quality. Pages default to 20 rows (maximum 100); follow next_offstyped
compare_executionCompare plan and execution v3 CRSProf artifacts with the full browser canonical comparison pipeline. Association defaults to 60 metres; override stop_association_distance_m only when requested. This dtyped
inspect_runner_profileRead an existing USRProf or uploaded USRProf source artifact without reconstruction, scope replacement or model activation. For chat attachments without artifact IDs, first use import_profile_attachmetyped
assess_finish_time_goalAssess a positive elapsed goal including saved dwell using the existing nine intensity/shape combinations (5% shapes). Preserve reference-plan movement locks, stops, checkpoint windows, cutoffs and satyped
compare_pacing_strategiesCompare all nine existing intensity/shape combinations without an elapsed goal. split_percent defaults to 5, inclusive range 0-15. Preserve reference-plan locks, dwell, checkpoint windows, cutoffs andtyped
import_profile_attachmentStore an attached USRProf or CRSProf unchanged as a private source_file artifact (maximum 25 MiB). Prefer this for ChatGPT attachments when file handoff is available; do not ask the user to copy artiftyped
get_storage_readinessRead-only non-secret storage diagnostic. Default checks configuration only. check_bucket=true performs HeadBucket; never writes test objects. Bucket access does not verify job/artifact reads or writestyped
get_activity_submissionRead-only lookup of an opt-in analyze_activity submission using the same caller/key. No URL fetches, writes or reanalysis. outcome_unknown is not absence and never authorizes a fresh execution. Requirtyped

Badge

Paste into your README. It updates on every verification.

[![AgentXM](https://app.agent-xm.com/badge/com-courseprofiler-courseprofiler.svg)](https://app.agent-xm.com/a/com-courseprofiler-courseprofiler)

Was this agent useful?

Claim this listing

The token was returned when the agent was registered. No token? Prove the domain or repository instead.