com.courseprofiler/courseprofiler

MCPcomunidaden línea
v0.1.0com.courseprofilerUnknownActualizado hace 2 m

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

Estado del endpointen línea
comprobado hace 2 días · 1506 ms
100 % de las últimas 6 comprobaciones llegaron a este endpoint
Funciona en
ClaudeCursorCopilotChatGPTGemini

Inferido de los transportes que declara este listado (streamable-http). Que un cliente no aparezca aquí no significa que se haya descartado: simplemente Forge no puede confirmarlo.

Indexado automáticamente desde fuentes públicas. Aún sin verificar por su desarrollador en Forge.Reclamar este listado →
hace 2 mÚltima actualización
Paquete
Autorcom.courseprofiler
LicenciaUnknown
Versión0.1.0
Fuentemcp-registry
Estado de confianza
B
60/100Bueno
✓Listado en el índice de Forge+10/10
—Identidad del publicador verificada+0/30
→ Publicador: este listado no tiene ningún repositorio registrado, así que `forge publish` no puede verificar la propiedad de forma automática. Usa «Reclamar este listado» arriba — en Forge lo revisamos a mano.
—Verificación de dominio+0/10
→ Ahora mismo no está disponible para este tipo de listado: hoy la comprobación de dominio solo se ejecuta para paquetes publicados en npm, así que esta fila todavía no se puede conseguir aquí, sea lo que sea lo que haya alojado en el dominio.
✓Análisis de inyección de prompts · limpio+30/30
✓Análisis de ofuscación / exfiltración · limpio+20/20
EstadoIndexado por la comunidad
PublicadorSin verificar
FirmaSin firmar
Dominio—
Procedencia—
DependenciasSin auditar
Superficie de herramientas24 herramientas · 1 privilegiadas
Análisis de seguridad✓ Limpiovlive · hace 23 d¿Qué tan bien funciona este análisis?
EvaluacionesNinguna
Indexado15 jul 2026

La verificación confirma la identidad del publicador (la propiedad del repo), no la seguridad del código. El análisis de seguridad cubre los CVE conocidos y los scripts de instalación sospechosos.

Herramientas

24 herramientas · 1 privilegiadas
Observado en vivo desde el endpoint del proveedor23d ago

Leído de un handshake MCP real initialize → tools/list contra el endpoint declarado. No se invocó ninguna herramienta: tools/list es la llamada de introspección de solo lectura que el protocolo define para esto. Refleja lo que el servidor anunciaba en ese momento; un endpoint alojado no está fijado a ninguna versión y puede cambiar sin avisar.

  • https://courseprofiler.com/mcp24 herramientas · 1564 ms
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 kind=url/artifact/raw_file, or course.crsprof_artifact_id. Do not use raw_json or reconstruct/synthe…

Primary 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 kind=url/artifact/raw_file, or course.crsprof_artifact_id. Do not use raw_json or reconstruct/synthe…

ParámetroTipoDescripción
course_fileobjectUse this only when the MCP client provides an inline/proxied GPX, FIT, CRSProf, or ZIP-with-one-GPX file object. Provide content for text GPX/XML/JSON/CRSProf,…
courseobject—
runnerobject—
race_namestringRace/course name to resolve through the CourseProfiler catalog when no course source is provided, e.g. Val d'Aran PDA.
estimateobject—
runner_profile_fileobjectUse this only when the MCP client provides an inline/proxied USRProf runner profile file object. Provide content for text USRProf/JSON or base64 for binary. Pe…
pdfobject—
search_race_catalogSearch CourseProfiler's race catalog by race/course name and return direct CRSProf URLs that can be used as course sources.

Search CourseProfiler's race catalog by race/course name and return direct CRSProf URLs that can be used as course sources.

ParámetroTipoDescripción
query*stringRace or course name to search, e.g. Val d'Aran PDA.
limitintegerMaximum matches to return, default 5.
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-party route hosts such as Wikiloc may return 403 to server fetches; when a URL is blocked, ask the…

Import 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-party route hosts such as Wikiloc may return 403 to server fetches; when a URL is blocked, ask the…

ParámetroTipoDescripción
sourceobject—
optionsobject—
course_fileobjectInline/proxied GPX, FIT, CRSProf, or ZIP-with-one-GPX file object to import into CRSProf. Use content for text GPX/XML/JSON/CRSProf, base64 for FIT/ZIP/binary,…
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 waypoints; if it already contains GPX/CRSProf waypoints, avoid duplicate Start/Finish/aid stations and…

Add 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 waypoints; if it already contains GPX/CRSProf waypoints, avoid duplicate Start/Finish/aid stations and…

ParámetroTipoDescripción
crsprof_artifact_id*stringCRSProf artifact ID returned by import_course or get_artifact.
waypoints*object—
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 resulting artifact in create_race_plan for race planning, or call submit_course if and only if the user…

Generate 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 resulting artifact in create_race_plan for race planning, or call submit_course if and only if the user…

ParámetroTipoDescripción
crsprof_artifact_id*stringEnriched CRSProf artifact ID returned by enrich_course_waypoints.
optionsobject—
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. Do not silently use every local file. profile_intent is advisory: the server does not filter sources…

Generate 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. Do not silently use every local file. profile_intent is advisory: the server does not filter sources…

ParámetroTipoDescripción
sources*arrayRunner evidence/profile sources. Use uploaded source_file artifact IDs from POST /api/artifact-uploads with purpose runner_evidence for GPX/FIT/CRSProf activit…
import_optionsobject—
profile_intentobjectprofile_intent is advisory context for the agent. The server does not filter or select evidence from it; submit only user-approved sources.
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_segments only create temporary artifacts. A final CRSProf artifact is not a submission. If there is no…

Submit 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_segments only create temporary artifacts. A final CRSProf artifact is not a submission. If there is no…

ParámetroTipoDescripción
course*object—
metadataobject—
race_namestringRace/course name to submit. Assistants should search the catalog and official web sources before calling submit_course, then populate metadata.event from offic…
submitterobject—
original_file_namestringOptional original route/profile file name for review metadata.
course_fileobjectInline/proxied GPX, FIT, CRSProf, or ZIP-with-one-GPX file object to import. Use content for text GPX/XML/JSON/CRSProf or base64 for FIT/ZIP/binary. Bare local…
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, and upload requirements.

Use 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, and upload requirements.

ParámetroTipoDescripción
race_namestringOptional race/course name the user wants to submit, e.g. Quebec Mega Trail 30K.
known_course_urlstringOptional candidate official direct GPX/FIT/CRSProf/ZIP URL if already found.
has_waypoint_databooleanWhether official waypoint/resource/cutoff data is already available.
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 catalog matches when available.

Use 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 catalog matches when available.

ParámetroTipoDescripción
has_runner_profilebooleanWhether the user already provided a USRProf runner profile or runner evidence.
race_namestringOptional race name the user mentioned, e.g. Val d'Aran PDA.
known_course_urlstringOptional candidate direct GPX/FIT/CRSProf URL if already found.
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 MCP clients should upload artifacts.

Use 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 MCP clients should upload artifacts.

No se publicó ningún esquema de entrada para esta herramienta.

get_artifact_upload_requirementsprivilegiadaUse 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 raw-byte MCP upload tool.

Use 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 raw-byte MCP upload tool.

No se publicó ningún esquema de entrada para esta herramienta.

get_jobPoll a CourseProfiler async job by job_id.

Poll a CourseProfiler async job by job_id.

ParámetroTipoDescripción
job_id*stringCourseProfiler job ID, e.g. job_...
get_artifactFetch artifact metadata and a private short-lived download URL by artifact_id.

Fetch artifact metadata and a private short-lived download URL by artifact_id.

ParámetroTipoDescripción
artifact_id*stringCourseProfiler artifact ID, e.g. art_...
validate_course_profileValidate a CRSProf artifact or inline CRSProf JSON before race planning or catalog submission. This does not mutate artifacts or submit courses.

Validate a CRSProf artifact or inline CRSProf JSON before race planning or catalog submission. This does not mutate artifacts or submit courses.

ParámetroTipoDescripción
crsprofobject—
crsprof_artifact_idstringExisting CRSProf artifact ID to validate.
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.

Validate a USRProf artifact or inline USRProf JSON before creating personalized race plans. This does not mutate artifacts or generate a new profile.

ParámetroTipoDescripción
usrprofobject—
usrprof_artifact_idstringExisting USRProf artifact ID to validate.
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, metric/imperial unit system, format, and file name. Omit unit_system unless the user explicitly ask…

Export 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, metric/imperial unit system, format, and file name. Omit unit_system unless the user explicitly ask…

ParámetroTipoDescripción
crsprof_artifact_id*stringExisting CRSProf artifact ID containing the course/profile/plan data to render.
optionsobject—
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 merge or replace. Strava credentials are never accepted through MCP: this tool returns a private one-h…

Build 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 merge or replace. Strava credentials are never accepted through MCP: this tool returns a private one-h…

ParámetroTipoDescripción
decisionstring—
resume_job_idstringExisting waiting Strava profile-build job to resume.
course_fileobjectInline/proxied GPX, FIT, CRSProf, or ZIP-with-one-GPX target course, using the same convention as create_race_plan.
target_distance_mnumberTarget distance in metres when no course is supplied. Ask the user before choosing it.
existing_usrprof_artifact_idstringExisting USRProf artifact to merge with or replace.
courseobject—
filtersobject—
existing_profile_strategystringRequired whenever existing_usrprof_artifact_id is supplied; ask the user explicitly.
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 preserved and summarized. Returns job plus a bounded structured summary, units, missing-data warnings and c…

Analyze 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 preserved and summarized. Returns job plus a bounded structured summary, units, missing-data warnings and c…

ParámetroTipoDescripción
sourceobject—
optionsobject—
course_fileobjectInline GPX/FIT content or base64; use an artifact from agent-upload.html if the client cannot read bytes.
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_offset and total_matches. Distances are metres and times seconds. Climbs group existing UP movement row…

Read 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_offset and total_matches. Distances are metres and times seconds. Climbs group existing UP movement row…

ParámetroTipoDescripción
axisstringRange only; required for comparison artifacts.
to_mnumberRange end, greater than from_m and within source coverage. Adjacent ranges own stationary boundary time once; final range includes terminal dwell.
limitinteger—
from_mnumberRange start on the chosen source axis; required for range.
min_duration_secondsnumberStops only; inclusive duration threshold.
sortstring—
artifact_id*stringPrivate v3 CRSProf or uploaded CRSProf artifact ID.
offsetinteger—
duration_metricstringStops only. Unknown durations are explicitly excluded when filtering.
query*string—
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 does not redetect stops: use analyze_activity on original GPX/FIT to change detection. Returns job a…

Compare 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 does not redetect stops: use analyze_activity on original GPX/FIT to change detection. Returns job a…

ParámetroTipoDescripción
execution_artifact_id*stringAnalyzed execution v3 CRSProf artifact ID.
stop_association_distance_mnumberPlanned-to-actual stop association only; no redetection.
plan_artifact_id*stringPlan v3 CRSProf artifact ID.
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_attachment with explicit upload permission if host file handoff is available; otherwise offer the browser u…

Read 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_attachment with explicit upload permission if host file handoff is available; otherwise offer the browser u…

ParámetroTipoDescripción
offsetintegerDefault 0 for paged queries; rejected for insights.
usrprof_artifact_id*stringExisting USRProf or uploaded USRProf source artifact; legacy .userprof needs explicit migration.
limitintegerDefault 20 for paged queries; rejected for insights.
query*string—
course_artifact_idstringRequired for course_fit, optional for coverage, rejected elsewhere. Existing current v3 CRSProf reference geometry.
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 saved GAP settings. Requires current v3 course and runner artifact IDs. Defaults to load_response_evi…

Assess 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 saved GAP settings. Requires current v3 course and runner artifact IDs. Defaults to load_response_evi…

ParámetroTipoDescripción
course_artifact_id*stringCurrent v3 CRSProf or uploaded CRSProf source artifact; reference-plan geometry and saved constraints.
usrprof_artifact_id*stringExisting USRProf or uploaded USRProf source artifact; never implicitly replace or select evidence.
estimation_modelstringExperimental v3 requires explicit user choice and must match the stored profile model.
allow_profile_preparationbooleanExplicit user permission for existing in-memory profile preparation when needed. Does not authorize source replacement.
target_elapsed_seconds*numberElapsed goal in seconds, including saved dwell.
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 and saved GAP settings. Requires current v3 course and runner artifact IDs. Defaults to load_response_…

Compare 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 and saved GAP settings. Requires current v3 course and runner artifact IDs. Defaults to load_response_…

ParámetroTipoDescripción
course_artifact_id*stringCurrent v3 CRSProf or uploaded CRSProf source artifact; reference-plan geometry and saved constraints.
usrprof_artifact_id*stringExisting USRProf or uploaded USRProf source artifact; never implicitly replace or select evidence.
estimation_modelstringExperimental v3 requires explicit user choice and must match the stored profile model.
allow_profile_preparationbooleanExplicit user permission for existing in-memory profile preparation when needed. Does not authorize source replacement.
split_percentnumber—
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 artifact IDs. Obtain explicit permission to send the selected file to CourseProfiler before setting uplo…

Store 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 artifact IDs. Obtain explicit permission to send the selected file to CourseProfiler before setting uplo…

ParámetroTipoDescripción
upload_authorized*booleanSet true only after explicit user authorization to upload the selected attachment to CourseProfiler.
file*object—
profile_type*string—

24 de 24 herramientas publicaron una descripción.

Los nombres y descripciones de las herramientas los escribe el publicador y se muestran literalmente como texto inerte. Son las cadenas que un cliente MCP pasa al modelo, así que Forge las analiza en busca de patrones de inyección de prompts — cualquier hallazgo aparece junto al análisis de seguridad de arriba. «Privilegiada» es una coincidencia de palabra clave en el nombre de la herramienta, no una auditoría de lo que hace: un nombre inofensivo puede hacer cualquier cosa.

Acerca de

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

Palabras clave
mcp
Alternativas
Comparando superficies de herramientas…

Sin cobertura de dependencias

Esta entrada no publica ningún paquete de npm, así que Forge no tiene un árbol de dependencias para ella. Es una carencia de cobertura, no una afirmación de que no tenga dependencias.