SCP Golf MCP Server
Enables AI agents to safely interact with golf course operations by providing real-time inventory, booking rules, pricing policies, and a self-learning memory system.
README
SCP 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
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.