About Sports Context Protocol
Sports Context Protocol Golf Alpha is a local context and safety layer for golf AI agents, demonstrated with synthetic course data. It records decisions and updates memory from outcomes so later similar decisions can use prior feedback.
Key features
- 01Provide course, tee-sheet, and policy context
- 02Check booking and pricing decisions
- 03Create temporary tee-time holds
- 04Record decisions and accept outcome feedback
- 05Update learning memory from feedback
Use cases
- 01Check whether a booking follows course rules
- 02Find available tee times using inventory and preferences
- 03Feed operator outcomes into later recommendations
MCP support
The local MCP server exposes 11 read-only resources, 9 tools, and 4 prompts to clients for course context, safety checks, soft holds, decision logging, and learning feedback.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
Tools
9Saved tool list · updated 2w ago
| Parameter | Type | Required | Description |
|---|---|---|---|
| date | string | No | |
| courseId | string | No |
Details
From the project READMESCP Golf — Profile 001 of the Sports Context Protocol
The context, safety, and memory layer for sports agents. Golf first.
Before a sports agent acts, it checks SCP. Then SCP learns from what happened.
SCP — Sports Context Protocol — is an open context layer for AI agents operating in sports. Every sport venue has the same five things underneath: inventory, rules, actions, consequences, and memory. SCP is the standard way an agent reads those before it acts, and learns from the outcome after.
SCP Golf is Profile 001 — the first working profile. Golf is the cleanest wedge because an agent cannot safely book, price, move, or recommend anything at a course without understanding tee-sheet state, protected inventory, pricing policy, pace risk, events, and operator memory. Golf makes the problem impossible to ignore.
This repository is SCP Golf Alpha: a synthetic demo course, a local MCP server, booking and pricing safety checks, soft holds, a decision ledger, and a self-learning memory. No real course data, no integrations, no database.
- Protocol-level spec:
docs/SCP_CORE_SPEC.md - The profile system:
docs/SCP_PROFILES.md - This profile:
docs/SCP_GOLF_PROFILE.md
Why golf agents need this
AI golf agents are coming — answering calls, booking tee times, quoting prices, moving reservations. The problem: most agents only know the conversation. They do not know the course: the tee-sheet state, the member protections, the league blocks, the pricing floor, the pace risk, the operator's preferences, and what happened the last time a similar decision was made.
SCP Golf gives them that, and then it learns.
What the alpha does
- Models one synthetic course — Harbor Ridge Golf Club — for Saturday, June 6, 2026: a 67-slot tee sheet with member, league, and outing blocks.
- Exposes the course as 11 MCP resources (read-only context).
- Exposes 9 MCP tools for safe booking, pricing, soft holds, decision logging, outcome feedback, and learning insights.
- Exposes 4 MCP prompts (reusable workflows).
- Logs every decision to a ledger and learns from outcomes — operator overrides, pace issues, price rejections — so the next similar decision is better.
Install
npm install
npm run build
npm run typecheck
npm run test
Run
npm run dev # runs the MCP server on stdio (tsx, no build needed)
npm start # runs the compiled server from dist/
Test it interactively with the MCP Inspector:
npx @modelcontextprotocol/inspector npm run dev
The tools
| Tool | What it does |
|---|---|
get_course_context | Full operating context — read this before acting. |
get_available_inventory | Available tee times near a preferred time. |
check_booking_action | Is a booking allowed, blocked, risky? Writes a decision. |
check_pricing_action | Is a quoted/discounted price allowed? Writes a decision. |
create_soft_hold | Temporary hold on a tee time before confirmation. |
write_decision_event | Log a decision directly. |
submit_outcome_feedback | The learning tool. Feed an outcome back to SCP. |
get_learning_insights | What SCP has learned. |
explain_action | Explain a result for golfer / operator / developer. |
The resources
scp://course/demo and its children: context, tee-sheet,
booking-policy, pricing-policy, events, weather, pace,
decision-ledger, learning-memory, soft-holds.
The self-learning loop
This is the heart of SCP. It is operational learning — no model training.
- An agent calls a tool. SCP builds a decision fingerprint (a bucketed, deterministic description of the kind of decision).
- SCP checks rules and learned memory keyed on that fingerprint.
- SCP recommends a safe action and logs a decision event.
- Feedback arrives via
submit_outcome_feedback. - SCP scores the outcome and updates its learning memory.
- The next decision with a matching fingerprint is shaped by that memory.
The demo moment: ask for Saturday ~09:00, have an operator override the result
once, ask again — SCP now recommends the operator's preferred time. See
docs/LEARNING_LOOP.md.
Docs
docs/SCP_CORE_SPEC.md— the protocol, sport-agnostic.docs/SCP_PROFILES.md— the profile system and roadmap.docs/SCP_GOLF_PROFILE.md— Profile 001 primitive mapping.docs/SCP_GOLF_SPEC.md— golf implementation detail.docs/QUICKSTART.md— run and test locally.docs/DEMO_PROMPTS.md— 10 demo prompts.docs/LEARNING_LOOP.md— how the learning works.docs/ROADMAP.md— phases beyond the alpha.
Status
Alpha. Synthetic data. Booking safety first. Self-learning from decision outcomes. Not partnered with any course, not integrated with any provider, not live with any operator.
License
MIT
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.