mcpField
B
Bunpro MCP Server

Bunpro MCP Server

本地服务
github.com/Alexxanddr科研与教育01 周前更新

关于 Bunpro MCP Server

Bunpro MCP Server 是只读 MCP 服务,用于访问 Bunpro 账户的学习数据和学习内容。它提供个人资料、复习、SRS、词汇及搜索工具,使用 Bunpro 非官方前端 API。

主要功能

  1. 01查看个人资料和复习队列
  2. 02查询预测与学习统计
  3. 03检查 JLPT 进度和 SRS 详情
  4. 04获取词汇、笔记和牌组内容
  5. 05搜索语法和词汇

适用场景

  1. 01查看待复习项目
  2. 02回顾学习进度和预测
  3. 03查询语法或词汇
  4. 04获取笔记与学习内容

MCP 相关

本地 stdio MCP 服务向 MCP 客户端提供只读工具,并要求提供 Bunpro 前端 bearer token。它不提供修改账户、提交复习或删除数据的工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"alexxanddr-bunpro": {
"command": "npx",
"args": [
"-y",
"bunpro-mcp-server"
],
"env": {
"BUNPRO_API_TOKEN": "<BUNPRO_API_TOKEN>"
}
}
}
}
启动命令npx -y bunpro-mcp-server
需要配置的环境变量
BUNPRO_API_TOKEN密钥Bunpro frontend bearer token without the Bearer prefix.

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmbunpro-mcp-server0.3.0

工具

22

收录的工具列表 · 更新于 6 天前

此工具无需参数。

详细介绍

Bunpro MCP

一个只读的 Model Context Protocol 服务,可让 MCP 客户端使用你的 Bunpro 个人资料、复习队列、预测、SRS 进度、词汇、学习内容和搜索功能。

警告

本项目使用 Bunpro 非官方的逆向工程前端 API。该 API 可能随时变更,恕不另行通知。本项目与 Bunpro 无关,也未获得 Bunpro 认可。

你可以做什么

  • 查询个人资料、待复习数量、复习队列或当前测验题目。
  • 查看 JLPT 进度、SRS 等级、预测、活动记录和上次复习的准确率。
  • 搜索 Bunpro 语法和词汇,并获取精简结果。
  • 获取词汇详情和笔记、牌组学习内容或主题回复。

此服务不提供任何更改账户、提交复习或删除的工具。

要求

  • 一个 Bunpro 账户和当前有效的前端 bearer token。
  • 从源代码运行或通过 npx 运行时,需要 Node.js 22 或更高版本。
  • 支持本地 stdio 服务的 MCP 客户端。

获取 Bunpro token

  1. 在浏览器中登录 Bunpro。
  2. 打开浏览器开发者工具并选择 Network。
  3. 选择一个发往 https://api.bunpro.jp/api/frontend/... 的请求。
  4. 复制 Authorization 请求标头的值,并去掉 Bearer 前缀。

请像对待密码一样保管此 token。不要将其提交到代码库、粘贴到问题帖中,也不要在截图中暴露。

配置 MCP 客户端

直接从 MCP 客户端安装并启动已发布的软件包:

{
  "mcpServers": {
    "bunpro": {
      "command": "npx",
      "args": ["-y", "bunpro-mcp-server"],
      "env": { "BUNPRO_API_TOKEN": "your-token" }
    }
  }
}

若要进行本地开发,请构建代码库,并使用绝对路径配置客户端:

{
  "mcpServers": {
    "bunpro": {
      "command": "node",
      "args": ["/absolute/path/to/bunpro-mcp-server/dist/index.js"],
      "env": { "BUNPRO_API_TOKEN": "your-token" }
    }
  }
}

更改配置或重新构建服务后,请重启 MCP 客户端。

在本地运行

npm ci
npm run build
BUNPRO_API_TOKEN='your-token' node dist/index.js

最后一条命令会启动一个 MCP stdio 进程,并等待协议消息;它没有交互式提示符。建议使用 MCP 客户端的环境配置,以免 token 进入 shell 历史记录。

请求示例

  • “显示我的 Bunpro 个人资料。”
  • “有多少项待复习?”
  • “显示我的每小时复习预测。”
  • “搜索 Bunpro 中的 日本語 词汇。”
  • “我上次复习的准确率是多少?”

可用工具

工具用途
get_user获取当前用户个人资料。
get_user_furigana获取振假名设置。
get_due获取当前到期项目。
get_queue获取当前复习队列。
get_quiz_questions获取当前只读测验队列。
get_base_stats获取基础学习统计数据。
get_jlpt_progress获取综合 JLPT 进度。
get_daily_forecast获取每日复习预测。
get_hourly_forecast获取每小时复习预测。
get_srs_overview获取 SRS 等级概览。
get_review_activity获取每日或每小时复习活动。
get_last_session获取上次复习的准确率。
get_weak_items根据学习次数和准确率对薄弱的语法和词汇进行排序。
get_vocab根据 slug 或 ID 获取词汇。
get_vocab_notes获取词汇笔记。
get_vocab_neighbors获取牌组中相邻的词汇。
get_learning_content获取牌组的学习内容。
get_topic_replies获取 Bunpro 讨论主题的回复。
get_srs_level_details获取分页的 SRS 等级详情。
get_self_study_srs_details获取分页的自学 SRS 详情。
get_ghost_srs_details获取幽灵复习 SRS 详情。
search搜索语法和词汇,并返回精简结果。

具体的输入、输出、默认值和错误信息请参阅 MCP contracts。

配置

变量必需描述
BUNPRO_API_TOKEN是不带 Bearer 前缀的前端 bearer token。
BUNPRO_API_BASE_URL否主要用于测试的 API 覆盖地址。token 会发送到该地址;请仅使用可信 URL。

开发

npm ci
npm run check

经过身份验证的在线检查需单独运行:

cp .env.example .env
# Edit .env locally, then:
npm run test:live

在线测试套件为只读,且 .env 已被忽略。请参阅测试和贡献指南。

故障排除

  • BUNPRO_API_TOKEN is required: 在 MCP 客户端配置中提供该令牌,然后重启客户端。
  • Bunpro API 401 或 403: 获取新令牌,并省略 Bearer 前缀。
  • 重新构建后工具列表没有变化: 重启 MCP 客户端。
  • Bunpro 返回 404 或 5xx: 非官方端点可能已发生变化;运行实时测试并提交经过脱敏的问题报告。
  • 在终端中启动后没有输出: 这是预期行为;标准输入/输出正在等待 MCP 主机连接。

架构和限制

该服务是一个使用官方 TypeScript MCP SDK 的本地标准输入/输出包。大多数输出直接传递 Bunpro 的 JSON,因此上游数据结构可能发生变化。目前它仅提供工具,不提供资源、提示词、托管的 HTTP 端点、浏览器登录或 OAuth 流程。

请阅读架构、技术安全和社区 API 参考。

发布和分发

npm 包以 bunpro-mcp-server 发布,可通过 npx -y bunpro-mcp-server 启动。发布元数据也会通过 server.json 为官方 MCP Registry准备。

发布遵循语义化版本规范,并通过 GitHub Releases 发布。发布标签必须与 v<package version> 一致;随后,GitHub Actions 会运行测试,通过无需令牌的 npm Trusted Publishing 发布,并在官方 MCP Registry 中注册相同版本。请参阅发布说明。

未来的托管式可流式传输 HTTP 服务或许能降低安装难度,但首先需要安全地实现每位用户的身份验证和令牌存储。本地标准输入/输出模式可将当前的 bearer 令牌保存在用户的设备上。

安全、贡献和许可证

报告漏洞前,请阅读 SECURITY.md。贡献请遵循 CONTRIBUTING.md。报告中切勿包含凭据或 Bunpro 个人响应内容。

本项目沿用现有的 MIT License。下游用户也必须遵守 Bunpro 适用的条款和政策。

评论

支持 Markdown

第一次接触 MCP?

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

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