Token导航 LogoToken导航TokenDH.com
Spond No Match MCP logo
AI代理stdio官方级别未说明来源级核验

Spond No Match MCP

MCP Server

一个基于MCP协议的服务器,用于管理Spond平台上的儿童体育活动,提供比赛、训练日程和出席情况查询等功能。

工具数

6

提示词数

0

GitHub Stars

4

资源数

0
PythonClaudeAI代理Claude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

Starefossen

提供方

Starefossen

最后核验

2026/5/17 20:21

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

pip install -r requirements.txt

详细介绍

无匹配mcp

主控程序 用于管理儿童体育活动的服务器 响应。专为希望让人工智能助理访问即将到来的比赛、训练日程和出勤情况的家长而设计,这样你就可以从任何有MCP能力的客户那里问“本周有什么?”或“为奥利弗报名参加周六的比赛”。

特性

  • 六种工具 --列出组、即将举行的活动、活动详细信息、出席状态、回复和搜索
  • 家庭成员映射 --配置哪些孩子属于哪些组
  • 挪威产量 --挪威语格式的回复(日期、工作日、状态标签)
  • TTL缓存 -组缓存1小时,事件5分钟,以最大限度地减少API调用
  • 承载令牌身份验证 --用于保护敏感家庭数据的可选身份验证
  • 缩放到零就绪 --轻量级Python服务器,在Knative上运行良好

工具

工具说明
list_groups列出所有有成员计数的Spond组
get_upcoming_events获取即将到来的活动,可按儿童或团体进行筛选
get_event_details特定活动的完整细节(地点、描述、回复)
get_attendance显示哪些事件缺少对孩子的响应
respond_to_event接受或拒绝家庭成员的活动
search_events按标题或描述中的文本搜索即将发生的事件

快速开始

先决条件

  • Python 3.11+
  • A. 响应 具有活动组成员资格的帐户

在本地运行

# Install dependencies
pip install -r requirements.txt

# Start the server
SPOND_USERNAME=you@example.com \
SPOND_PASSWORD=your-password \
KIDS_CONFIG='[{"name":"Oliver","groups":["Team 2013"]},{"name":"Emma","groups":["Team 2017"]}]' \
python main.py

服务器在端口8080上启动:

  • 健康检查: http://localhost:8080/health
  • MCP SSE端点: http://localhost:8080/sse

码头工人

docker build -t spond-mcp .
docker run -p 8080:8080 \
  -e SPOND_USERNAME=you@example.com \
  -e SPOND_PASSWORD=your-password \
  -e 'KIDS_CONFIG=[{"name":"Oliver","groups":["Team 2013"]}]' \
  spond-mcp

环境变量

变量必填默认描述
SPOND_USERNAME赞助帐户电子邮件
SPOND_PASSWORDSpond帐户密码
KIDS_CONFIG没有[]JSON数组将子名称映射到Spond组名称
MCP_AUTH_TOKEN身份验证的承载令牌(见下文)
PORT没有8080服务器端口
BASE_URL没有http://localhost:8080SSE端点构造的公共URL

KIDS_CONFIG 格式

将孩子的名字映射到他们的Spond组名称。组匹配是模糊的——部分匹配是有效的(例如。 "Team 2013" 火柴 "Fjordvik Team 2013").

[
  {"name": "Oliver", "groups": ["Team 2013", "School 2014"]},
  {"name": "Emma", "groups": ["Team 2017"]}
]

没有 KIDS_CONFIG,服务器仍然可以工作,但无法按孩子过滤或按孩子出勤率显示。

认证

此服务器处理敏感的家庭数据,并支持可选的承载令牌身份验证。当 MCP_AUTH_TOKEN 已设置,所有请求(除 /health)必须包括 Authorization: Bearer 头球

  • /health 始终免税(Knative/K8s健康探头需要)
  • MCP_AUTH_TOKEN 为空或未设置,身份验证已禁用(向后兼容)
  • 使用恒定时间比较(hmac.compare_digest)防止定时攻击
# Run with auth enabled
MCP_AUTH_TOKEN=my-secret-token \
SPOND_USERNAME=you@example.com \
SPOND_PASSWORD=your-password \
python main.py

# Test with auth
curl -H "Authorization: Bearer my-secret-token" http://localhost:8080/sse

对于Kubernetes部署,将令牌存储为Secret并在服务清单中引用它:

env:
- name: MCP_AUTH_TOKEN
  valueFrom:
    secretKeyRef:
      name: mcp-auth-token
      key: token

与mcporter一起使用

麦克波特 可以作为远程MCP工具连接到此服务器:

# List all groups
mcporter call spond.list_groups

# Get this week's events for a specific kid
mcporter call spond.get_upcoming_events kid_name=Oliver days=7

# Check what needs a response
mcporter call spond.get_attendance kid_name=Oliver

# Accept a match
mcporter call spond.respond_to_event event_id=ABC123 kid_name=Oliver accept=true

# Search for upcoming matches
mcporter call spond.search_events query=kamp days=30

对于经过身份验证的服务器,在中配置mcporter的Authorization标头 ~/.mcporter/mcporter.json:

{
  "mcpServers": {
    "spond": {
      "url": "https://your-spond-mcp.example.com/sse",
      "transport": "sse",
      "headers": {
        "Authorization": "Bearer your-token-here"
      }
    }
  }
}

建筑

MCP Client (mcporter, Claude, etc.)
    │ HTTP/SSE (JSON-RPC)
    ▼
spond-mcp (:8080)
    │
    └── api.spond.com (Spond API)

发展

# Install dev dependencies
pip install -r requirements.txt -r requirements-dev.txt

# Run tests (87 tests, including auth middleware tests)
pytest -v

# Lint
ruff check .

Homelab部署

此服务器设计为在Knative上运行,缩放为零。看 诀窍服务.yaml.mise.toml 用于部署任务。

通过以下方式启用身份验证 MCP_AUTH_TOKEN K8s的秘密(mcp-auth-tokenmcp 命名空间)。

# Build and deploy (requires mise + Docker + kubectl)
mise run full-deploy

# Integration test against deployed service (auto-fetches auth token from K8s)
mise run test:mcp

数据源

  • 赞助API 通过 我是/Spond -Spond移动应用程序API的非官方Python包装器

许可证

麻省理工学院

目录标签

目录标签

PythonClaudeAI代理体育活动管理本地部署家庭日程AI助手集成Spond集成MCP协议

支持客户端

Claude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

token

工具数量(toolCount,工具数)

6

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiotoken部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP