Myersparkathleticzone Mcp

io.github.chrischall由 GitHub 帳號 chrischall 發布v1.2.1更新於 Nov 7, 2026

Myers Park HS athletics — schedules, teams, rosters, coaches, news and broadcast links

概覽

AI 產生的概覽

針對 Myers Park 高中體育賽事的唯讀 MCP 伺服器:隊伍、賽程、比分、名單、新聞、轉播與相簿。

可以做什麼
  • 依學年列出學校的運動隊伍,並把模糊的隊名解析成隊伍 id
  • 取得全校即將舉行的賽事,或單一隊伍的完整賽季賽程
  • 查詢已結束比賽的結果,並以本校角度給出勝/敗/平
  • 讀取某支隊伍的教練團與球員名單
  • 列出近期新聞、附 NFHS Network 轉播連結的比賽,以及已發布的照片相簿
  • 檢查體育網站是否可連線且頁面仍可解析
適用情境
當使用者希望助理直接回答 Myers Park(或其他 Athletic Zone 學校)的賽程、比分、教練、新聞或收看管道等問題,而不必手動瀏覽網站時適用。
執行需求
以 stdio 方式在本機執行,通常透過 npx 啟動,需要 Node.js。不需帳號、登入或 API 金鑰。兩個選用環境變數:MPAZ_SITE_URL(預設為 Myers Park 網站)與 MPAZ_SCHOOL_ID(預設 10150)。需要能連線至該體育網站。
安裝前請注意
所有工具皆為唯讀,不會索取任何憑證。資料來自對第三方學校網站的擷取,可能不完整:缺少比分代表未知而非零分,多數隊伍不公布球員名單,過往賽季涵蓋不完整,轉播連結指向 NFHS Network。README 說明本專案由 AI 開發與維護,請自行斟酌使用。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Myersparkathleticzone Mcp,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

myersparkathleticzone-mcp

MCP server for Myers Park High School (Mustangs) athletics — schedules, teams, rosters, coaches, news and game broadcast links.

No credentials. Everything this server reads is public. There is no login, no API key, no browser extension and nothing to configure before it works.

Developed and maintained by AI. Use at your own discretion.

Install

bash
npx myersparkathleticzone-mcp

Or in an MCP host's config:

json
{  "mcpServers": {    "myersparkathleticzone": {      "command": "npx",      "args": ["-y", "myersparkathleticzone-mcp"]    }  }}

Tools

ToolWhat it does
mpaz_list_teamsThe school's teams for a year, with the ids the other tools need
mpaz_resolve_teamLoose name ("varsity football") → team id
mpaz_get_scheduleUpcoming events across every team
mpaz_get_team_scheduleOne team's full season
mpaz_get_scoresOne team's results, with win/loss/tie from the school's point of view
mpaz_get_rosterA team's coaching staff and players
mpaz_list_newsRecent news posts
mpaz_list_videosGames with an NFHS Network broadcast link
mpaz_list_photo_galleriesPublished photo galleries
mpaz_healthcheckVerify the site is reachable and parseable

Every tool is read-only; the server performs no writes.

Team-scoped tools need a numeric team id and a sport slug, and team ids differ per school year. Resolve them with mpaz_resolve_team rather than guessing — a stale id makes the site serve a Team … Not Found page (with HTTP 200), which the client detects and reports.

Configuration

Both optional:

VariableDefaultPurpose
MPAZ_SITE_URLhttps://www.myersparkathleticzone.comPoint at another Athletic Zone school site
MPAZ_SCHOOL_ID10150GoFan/PlayOn school id, used to tell your teams from opponents

The site is one tenant of the PlayOn Sports / SportsEngine "Athletic Zone" platform, so setting both points the server at another school on it. Verified against Ballantyne Ridge (https://www.ballantyneridgeathleticzone.com, school id 21785) as well as Myers Park.

Hosted deployments are Myers Park only. The hosted (mint / claude.ai connector) build runs behind a static egress allow list that permits just www.myersparkathleticzone.com, so setting MPAZ_SITE_URL to another school there makes every call fail with "Could not reach". Pointing at another school works only with a local stdio install (npm / .mcpb).

Known limits

These are properties of the upstream site, not bugs, and the tools say so in their output rather than guessing:

  • A missing score is unknown, never zero. Each side's score is stored independently upstream, so half-entered games (3-null, null-4) are common. result is derived only when both sides are present.
  • Myers Park records few scores. Every completed game of theirs observed so far has null scores, so a season may return fixtures with no results at all — that is the school's data entry, not a fault.
  • Past-season coverage is partial and calendar-dependent. Myers Park's /schedule is empty for past years even though the per-team pages still serve them, so mpaz_list_teams falls back to the sport pages' cross-year team selector. That selector is keyed by team, not by sport slug, so it can only be reached through a team that is in season now — meaning off-season sports are unreachable for past years, and which ones are reachable changes through the year. The result carries a coverage note listing what was searched; an empty list there is not evidence the school fielded no teams.
  • Most teams publish coaches but not players, so an empty roster is normal.
  • The all-school schedule is a window of upcoming events, not a full season — use mpaz_get_team_schedule for that.
  • Broadcast links are NFHS Network links, not hosted clips — durations are always 0.

How it works

The site is a fully server-rendered Next.js app whose own /api/* routes are server-only and reject outside requests. The data ships inside the page's React Server Components flight payload, so this server requests pages with the RSC: 1 header and harvests the entities embedded in them.

docs/ATHLETIC-ZONE-API.md pins the captured request/response shapes, the routes, the failure modes, and what was ruled out.

Development

bash
npm installnpm run buildnpm test

License

MIT

來源:README.md,提交 407a0a5

工具

10

mpaz_list_teams

List the school's teams

List this school's athletic teams for a school year, with the team id needed by the schedule, roster and scores tools. Team ids differ per school year — an id from one season fails against another. A past year is answered from the sport pages when the schedule has nothing, which reaches only sports currently in season; the result carries a `coverage` note saying so, and an empty list there does NOT mean the school fielded no teams. Read-only.

輸入參數year

mpaz_resolve_team

Resolve a team name to its id

Find a team id from a loose name like "varsity football", "girls JV volleyball" or just "field hockey". Use this before mpaz_get_team_schedule / mpaz_get_roster / mpaz_get_scores rather than guessing an id. Returns every candidate when the query is ambiguous. Read-only.

輸入參數yearquery必填

mpaz_get_schedule

Get the all-school schedule

Upcoming events across every team, oldest first. Note this page returns a WINDOW of upcoming events (10 observed), not a whole season — for a team's full season use mpaz_get_team_schedule. Each event's `startLocal` is the local time at the school (in `timeZone`, e.g. America/New_York) — quote it as-is; `start` is the same moment in true UTC. Read-only.

輸入參數viewyear

mpaz_get_team_schedule

Get one team's full schedule

A single team's complete season, oldest first. Requires BOTH the sport slug and the team id — resolve them with mpaz_list_teams or mpaz_resolve_team first. Each event's `startLocal` is the local time at the school (in `timeZone`, e.g. America/New_York) — quote it as-is; `start` is the same moment in true UTC. Read-only.

輸入參數yearteamId必填sportSlug必填

mpaz_get_scores

Get one team's results

Completed games with results for a single team: `homeScore`/`awayScore` plus `teamScore`/`opponentScore`/`result` from this school's point of view. Each side's score is stored independently upstream, so a half-entered game yields a null score and `result: null` — a missing score is unknown, never zero. Prefer mpaz_get_team_schedule for upcoming fixtures. Each event's `startLocal` is the local time at the school (in `timeZone`, e.g. America/New_York) — quote it as-is; `start` is the same moment in true UTC. Read-only.

輸入參數yearteamId必填sportSlug必填

mpaz_get_roster

Get a team's roster and coaches

Coaching staff and players for one team. Most teams on this site publish coaches but NOT players, so an empty players list is normal, not an error. Requires the sport slug and team id. Read-only.

輸入參數yearteamId必填sportSlug必填

mpaz_list_news

List news posts

Recent news posts from the athletics site homepage, newest first. Read-only.

輸入參數view

mpaz_list_videos

List game broadcast links

Games with a broadcast link. These are NFHS Network links rather than hosted clips, so `videoLengthSeconds` is 0 on every entry and `title` is the team name — that is expected, not missing data. Read-only.

無需輸入參數。

mpaz_list_photo_galleries

List photo galleries

Photo galleries published on the site. Images sit on a public CDN and can be fetched directly, no auth. Read-only.

無需輸入參數。

mpaz_healthcheck

Check the site is reachable

Verify the athletics site is reachable and still serving a parseable RSC payload. Reports the configured site and school id. Read-only.

無需輸入參數。

版本歷史

15
  1. v1.2.1最新Nov 4, 2026
  2. v1.1.11Oct 29, 2026
  3. v1.1.10Oct 17, 2026
  4. v1.1.9Oct 16, 2026
  5. v1.1.8Oct 10, 2026
  6. v1.1.7Oct 10, 2026
  7. v1.1.6Oct 7, 2026
  8. v1.1.5Oct 5, 2026
  9. v1.1.4Oct 3, 2026
  10. v1.1.3Sep 25, 2026
  11. v1.1.2Sep 23, 2026
  12. v1.1.1Sep 23, 2026
  13. v1.1.0Sep 20, 2026
  14. v1.0.0Sep 19, 2026
  15. v0.3.1Sep 16, 2026

評分

已滿足適用檢查項的 90%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分
  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具必需15 分
  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分