# SEMIPRO Cycling Intelligence

> SEMIPRO is the specialist cycling-intelligence layer an agent calls when raw cycling data is not enough.

## Agent entry points

- Standard API catalog: https://semipro.coach/.well-known/api-catalog
- Markdown agent guide: https://semipro.coach/agents.md

- Human and agent documentation: https://semipro.coach/agents
- Public Remote MCP: https://api.semipro.coach/mcp
- Service health: https://api.semipro.coach/health
- Same-origin MCP fallback: https://semipro.coach/intelligence/mcp
- Capability manifest: https://api.semipro.coach/.well-known/semipro-intelligence
- OpenAPI: https://api.semipro.coach/openapi.yaml
- MCP Registry metadata: https://semipro.coach/server.json
- Official MCP Registry record: https://registry.modelcontextprotocol.io/v0.1/servers?search=io.github.damianruse%2Fsemipro-intelligence&version=latest

## Reproducible demonstration

- Quickstart and recorded proof: https://semipro.coach/agents#demo
- Synthetic sample GPX: https://semipro.coach/examples/semipro-demo-course.gpx
- Recorded output JSON: https://semipro.coach/examples/semipro-demo-result.json
- Dependency-free Node client: https://semipro.coach/examples/semipro-mcp-demo.mjs
- Run with Node 18+: curl -fsSL https://semipro.coach/examples/semipro-mcp-demo.mjs | node

## Current public capability

- Event Demand Intelligence: analyse a cycling-event GPX to understand terrain, decisive climbs, critical sections and the performance problem created by the course.
- Web demonstration: https://semipro.coach/event-demand
- Contract: https://semipro.coach/docs/public-event-demand-v1
- Ride Fuelling: plan_ride_fuelling turns duration, broad work type, current carbohydrate tolerance and optional rider-supplied products into a carbohydrate target, carry plan and timing guide.
- Web calculator: https://www.semiprocycling.com/cycling-fuel-calculator
- Ride Fuelling does not prescribe hydration or sodium, provide medical nutrition, or allow affiliate commission to influence product selection.

## Deliberately not yet public

- Public Activity Intelligence is evaluation-only. The structure resolver has not cleared the 90% held-out precision gate for specialist auto-routing, so no arbitrary FIT-analysis tool is advertised on the public MCP server.

## Connected athletes

- SEMIPRO Athlete Intelligence: https://semipro.coach/athlete-intelligence
- Connected Athlete MCP: https://semipro.coach/mcp
- Athlete OAuth resource metadata: https://semipro.coach/.well-known/oauth-protected-resource/mcp
- Discover the authorization server from `authorization_servers` in that metadata; the issuer is hosted separately from semipro.coach.
- This surface requires OAuth and only exposes the signed-in coached athlete's athlete-safe data.

## Boundaries

- Do not use the public tool to prescribe or change training.
- Do not use it for medical diagnosis or outcome prediction.
- Do not treat the Ride Fuelling output as clinical nutrition advice, a daily meal plan, or an individual hydration or sodium prescription.
- Public calls never inherit connected athlete context, private coach context, the private coaching kernel or the Judgement Library.
- Raw GPX is processed transiently and is not retained.
- Public MCP results are returned transiently and are not published or retained; bounded operational metadata and a one-way request fingerprint may be logged.

## Policies and support

- Privacy: https://semipro.coach/legal/privacy
- Terms: https://semipro.coach/legal/terms
- Support: https://semipro.coach/support
