mcpField
B
BC Curriculum

BC Curriculum

远程服务
github.com/pdg6科研与教育031 周前更新
代码仓库

关于 BC Curriculum

BC Curriculum 是面向 BC 教师和课程设计者的 MCP 服务,可查询 K–12 官方课程数据,涵盖学科内容、年级进阶及跨学科联系。它以结构化课程数据和全文搜索为特点,并包含核心能力与原住民学习原则。

主要功能

  1. 01覆盖 K–12 的 9 个英语学科
  2. 02查询 Big Ideas、能力与内容标准
  3. 03查看年级进阶及跨学科联系
  4. 04检索核心能力与原住民学习原则
  5. 05搜索评估资源、教学样例及课程变更

适用场景

  1. 01查找某门课程的 Big Ideas 和内容标准
  2. 02比较不同年级的能力发展
  3. 03发现同年级不同学科的课程联系
  4. 04跟踪课程数据更新与课程历史

MCP 相关

提供 12 个工具,让 MCP 客户端搜索并读取 BC K–12 课程数据。支持远程 HTTP 连接,也可在本地以 stdio 模式运行。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://bc-curriculum-mcp.fly.dev/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

安装包
npmbc-curriculum-mcp-server1.1.1

工具

8
参数类型必填说明
gradeinteger否年级(0=幼儿园,1-12)
limitinteger否返回结果的最大数量(默认值为 10)
querystring是自然语言搜索查询(例如,'empathetic design thinking')
subjectenum否BC 课程学科 slug(例如,'adst'、'science')adst | arts-education | career-education | english-language-arts | languages | mathematics | physical-health-education | science | social-studies
content_typeenum否用于筛选的课程内容类型big_idea | competency | content_item | elaboration | assessment | instructional_sample | all

详细介绍

BC 课程 MCP 服务

一个 MCP(Model Context Protocol)服务,为 BC 教师提供对 BC 教育部 K–12 课程的结构化访问。只需一行配置即可连接——无需安装、无需账户、无需技术设置。

作者: Paul de Groot — Vancouver, BC

功能介绍

此服务抓取 curriculum.gov.bc.ca,并通过 12 个 MCP 工具提供完整 BC K–12 课程的查询功能。教师和课程设计者可以用自然语言询问 Big Ideas、课程能力、内容标准、年级进阶、跨学科联系等信息——所有回答均基于实际发布的课程数据。

数据覆盖范围
  • K–12 年级(Kindergarten 至 Grade 12)
  • 9 个英语课程体系学科: ADST、Arts Education、Career Education、English Language Arts、Languages、Mathematics、Physical & Health Education、Science、Social Studies
  • Big Ideas、课程能力和内容(三栏 KDU 结构),包含详细说明
  • 核心能力(Communication、Thinking、Personal & Social)
  • First Peoples Principles of Learning(FPPL)
  • 评估资源和教学示例
  • 对所有课程内容进行全文搜索

快速开始

选项 1:远程服务(无需安装)

将此内容添加到 MCP 配置中:

{
  "mcpServers": {
    "bc-curriculum": {
      "type": "http",
      "url": "https://bc-curriculum-mcp.fly.dev/mcp"
    }
  }
}

也可以通过 Claude Code CLI:

claude mcp add bc-curriculum --transport http --url https://bc-curriculum-mcp.fly.dev/mcp
选项 2:通过 npx 在本地运行
npx bc-curriculum-mcp-server

这会以 stdio 模式运行服务——兼容任何 MCP 客户端。你需要本地的 bc-curriculum.sqlite 数据库(克隆仓库、安装 Playwright 并运行抓取程序——请参阅下文的开发者指南)。

选项 3:通过 npm 全局安装
npm install -g bc-curriculum-mcp-server
bc-curriculum-mcp

连接后,可以提出如下问题:

  • “ADST 10 年级的 Big Ideas 是什么?”
  • “展示科学能力如何从 3 年级进阶到 7 年级。”
  • “查找 9 年级数学与 ADST 之间的课程联系。”
  • “First Peoples Principles of Learning 是什么?”
  • “Kindergarten 数学的课程能力有哪些?”

可用工具

工具功能
bc_search_curriculum对所有课程数据进行全文搜索
bc_get_course_curriculum获取某门课程的 Big Ideas、能力和内容
bc_list_courses列出所有可用课程(可按学科/年级筛选)
bc_get_grade_progression追踪课程内容在不同年级间的进阶情况
bc_get_competency_connections查找不同学科共有的能力
bc_get_core_competencies获取 Communication、Thinking、Personal/Social 能力
bc_get_fppl获取 First Peoples Principles of Learning
bc_get_assessment_resources获取评估实践和指导
bc_get_crawl_status检查数据的新鲜度和完整性
bc_search_cross_curricular查找某个年级中两个或更多学科共有的课程联系
bc_get_curriculum_changes显示自指定日期以来课程的变化
bc_get_course_history查看某门课程的抓取历史和变更时间线

架构

┌──────────────────────┐       ┌─────────────────────────┐
│  Your Machine        │       │  Fly.io (free tier)     │
│                      │       │                         │
│  Playwright crawler  │──────▶│  Express + SQLite       │
│  builds SQLite DB    │ SFTP  │  read-only MCP server   │
│                      │       │  256MB RAM              │
└──────────────────────┘       └─────────────────────────┘
                                        │
                                        ▼
                               Claude Desktop / Cowork / VS Codee / Antigravity
                               connects via MCP over HTTPS

抓取程序在本地使用 Playwright 和无头 Chromium 渲染大量依赖 JavaScript 的 curriculum.gov.bc.ca 页面。它会生成 SQLite 数据库,并上传到 Fly.io。部署后的服务轻量且只读——没有浏览器,也没有抓取程序,只通过 MCP 提供预先生成的数据。

开发者指南

先决条件
  • Node.js 18+
  • npm
设置
git clone https://github.com/pdg6/bc-curriculum-mcp-server.git
cd bc-curriculum-mcp-server
npm install
npx playwright install chromium
npm run build
抓取
# Quick test — just ADST
npm run crawl -- --subject adst

# Full K–12 crawl (~60-90 minutes)
npm run crawl:all

# Re-crawl everything (overwrites existing data)
npm run crawl:all -- --force
本地运行
# stdio transport (for local MCP clients)
npm start

# HTTP transport (for remote connections)
TRANSPORT=http npm start

工作原理

每门课程的 BC 课程体系均采用三栏结构:

  1. 核心理念 — 高层次的概念性理解
  2. 课程能力 — 学生能够做什么(按领域分组)
  3. 课程内容 — 学生应该知道什么(KDU 条目)

每个要素都可以包含详细说明,以可展开的形式阐明范围并提供示例。此服务会收录所有 9 个学科、K–12 年级每门课程的这三栏内容及详细说明。

核心能力(沟通、思维、个人与社会)和原住民学习原则是适用于所有学科的跨领域框架,并单独存储。

数据来源

所有课程数据均来自 curriculum.gov.bc.ca,即 BC 教育部的官方网站。爬虫会遵守网站规则,在请求之间间隔 1.5 秒。

许可证

MIT — 参见 LICENSE。

课程内容由 BC 教育部发布。本项目为这些公开数据提供结构化访问方式。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。