MyGo 云音乐
Go와 MyGo로 만든 서드파티 네이버 클라우드 뮤직 데스크톱 클라이언트
잠자리 전 이야기 MCP로, 원하는 음성 비서와 연동해 아기에게 이야기를 들려줍니다
这是一个睡前故事MCP,你可以用它接入到任意语音助手,给宝宝讲故事听
미디어TypeScript · JavaScriptGitHub @shenjingnan직접 설치운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
Bedbook 是一个基于 MCP (Model Context Protocol) 协议的儿童故事服务。它提供故事列表和搜索功能,可以集成到支持 MCP 的 AI 应用中,帮助用户查找和阅读适合不同年龄段的儿童故事。 • 故事列表: 列出所有可用故事,展示标题、年龄段、关键词等元信息 • 智能搜索: 支持按年龄段、名称、关键词、分类、内容模糊搜索,返回最佳匹配结果 • 阅读统计: 记录每个故事的阅读次数,帮助了解热门故事 • MCP 协议: 标准化的 MCP 工具接口,可无缝集成到 Claude、Cursor 等 AI 应用 • 灵活部署: 支持 stdio 和 HTTP 两种传输方式 Bedbook 是一个 MCP 服务,你可以通过支持 MCP 的 AI 应用来使用它。以下是常见的配置方式: • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json • Windows: %APPDATA%\Claude\claude_desktop_config.json 在项目根目录创建或编辑 .cursor/mcp.json 文件: 配置完成后,你可以直接与 AI 对话来使用 Bedbook:README 전문 보기 ↗
Bedbook 是一个基于 MCP (Model Context Protocol) 协议的儿童故事服务。它提供故事列表和搜索功能,可以集成到支持 MCP 的 AI 应用中,帮助用户查找和阅读适合不同年龄段的儿童故事。
Bedbook 是一个 MCP 服务,你可以通过支持 MCP 的 AI 应用来使用它。以下是常见的配置方式:
编辑配置文件:
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%\Claude\claude_desktop_config.json添加以下配置:
{
"mcpServers": {
"bedbook": {
"command": "npx",
"args": ["-y", "bedbook"]
}
}
}
在项目根目录创建或编辑 .cursor/mcp.json 文件:
{
"mcpServers": {
"bedbook": {
"command": "npx",
"args": ["-y", "bedbook"]
}
}
}
配置完成后,你可以直接与 AI 对话来使用 Bedbook:
提示: 如果你使用的 AI 工具搭载的是较小的模型,它可能会对故事进行精简总结而非完整讲述。这并非 MCP 服务或故事本身的问题,可以通过提示词来引导模型完整输出故事内容。
如果遇到故事被精简的情况,可以尝试在对话中使用以下引导提示词:
请完整地讲述这个故事,不要进行总结或精简。我希望能听到故事的每一个细节,包括所有对话和情节。请保持故事原有的语言风格和完整长度。
或者更直接的提示:
请逐字逐句地讲这个故事,不要遗漏任何内容。
这样可以确保模型输出完整的故事内容,让孩子能够享受完整的故事体验。
如果你想使用自己的故事文件,可以通过环境变量指定故事目录:
{
"mcpServers": {
"bedbook": {
"command": "npx",
"args": ["-y", "bedbook"],
"env": {
"BEDBOOK_STORIES_DIR": "/path/to/your/stories"
}
}
}
}
Bedbook 提供了一个 Claude Plugin,让你可以直接在 Claude Code 中使用 /add-story 命令快速生成儿童故事。
首先添加 bedbook-plugins marketplace:
/plugin marketplace add shenjingnan/bedbook
如果你无法访问 github 可以尝试使用 gitee
/plugin marketplace add https://gitee.com/shenjingnan/bedbook.git
然后安装 bedbook plugin:
/plugin install bedbook@bedbook-plugins
安装完成后,你可以使用 /bedbook:add-story 技能生成故事:
如果安装成功,但是没有发现
/bedbook:add-story技能,可以尝试重启 Claude Code
/bedbook:add-story 小兔子找太阳
/bedbook:add-story 守株待兔 --age 5-7岁
/bedbook:add-story 一只勇敢的小猫去森林冒险 --keywords 勇敢,冒险,成长
--age <年龄段>: 指定目标年龄段(如 3-5岁)--keywords <关键词>: 指定关键词(逗号分隔)你也可以通过命令行直接调用 plugin 生成故事:
claude -p --permission-mode acceptEdits "/bedbook:add-story 闻鸡起舞"
同样支持可选参数:
claude -p --permission-mode acceptEdits "/bedbook:add-story 守株待兔 --age 5-7岁"
claude -p --permission-mode acceptEdits "/bedbook:add-story 一只勇敢的小猫去森林冒险 --keywords 勇敢,冒险,成长"
这种方式适合在脚本中使用或快速生成故事。
该 plugin 提供以下功能:
pnpm install
# stdio 传输模式(默认)
pnpm dev
# HTTP 传输模式
pnpm dev:http
# 构建项目
pnpm build
# stdio 传输模式
pnpm start
# HTTP 传输模式
pnpm start:http
# 测试
pnpm test # 运行测试
pnpm test:watch # 监听模式运行测试
pnpm test:coverage # 运行测试覆盖率
# 代码质量
pnpm lint # 代码检查
pnpm lint:fix # 自动修复代码问题
pnpm format # 格式化代码
pnpm typecheck # 类型检查
pnpm spellcheck # 拼写检查
| 变量名 | 说明 | 默认值 |
|---|---|---|
MCP_TRANSPORT | 传输方式 (stdio/http) | stdio |
MCP_PORT | HTTP 模式端口 | 3000 |
MCP_HOST | HTTP 模式主机 | 0.0.0.0 |
BEDBOOK_STORIES_DIR | 自定义故事目录 | ./stories |
列出所有故事(不含完整内容)。
参数: 无
返回示例:
{
"success": true,
"count": 10,
"stories": [
{
"filename": "小老虎怕下雨.md",
"title": "小老虎怕下雨",
"age": "3-7岁",
"keywords": ["勇敢", "友谊"],
"author": "未知",
"category": "儿童故事",
"language": "zh",
"readCount": 5
}
]
}
根据条件搜索故事,返回最佳匹配(含完整内容)。
参数:
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
age | string | 否 | 年龄段筛选,如 3-7岁 |
title | string | 否 | 故事名称模糊匹配 |
keyword | string | 否 | 关键词搜索 |
返回示例:
{
"bestMatch": {
"filename": "小老虎怕下雨.md",
"title": "小老虎怕下雨",
"age": "3-7岁",
"keywords": ["勇敢", "友谊"],
"author": "未知",
"category": "儿童故事",
"language": "zh",
"readCount": 5,
"content": "森林里住着一只小老虎..."
},
"otherMatches": [
{
"filename": "勇敢的小兔子.md",
"title": "勇敢的小兔子",
"age": "3-6岁",
"keywords": ["勇敢", "冒险"],
"author": "未知",
"category": "儿童故事",
"language": "zh",
"readCount": 3
}
]
}
故事文件存放在 stories/ 目录,采用 Markdown 格式,包含 YAML Front Matter:
---
title: 故事标题
age: 3-7岁
keywords:
- 关键词1
- 关键词2
author: 作者名
category: 分类
language: zh
---
故事正文内容...
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
title | string | 是 | 故事标题 |
age | string | 是 | 适合年龄段,如 3-7岁 |
keywords | string[] | 是 | 关键词标签列表 |
author | string | 是 | 作者名(可为"未知") |
category | string | 是 | 故事分类 |
language | string | 是 | 故事语言,ISO 639-1 代码,如 zh、en |
bedbook/
├── src/
│ ├── index.ts # 入口文件,MCP 服务器配置
│ ├── types.ts # TypeScript 类型定义
│ ├── utils.ts # 工具函数(文件解析、相似度计算)
│ ├── story.ts # 故事服务(MCP 工具)
│ ├── readCount.ts # 阅读次数统计
│ ├── *.test.ts # 测试文件
│ └── global.d.ts # 全局类型声明
├── stories/ # 故事文件目录
│ ├── .read-counts.json # 阅读次数数据
│ ├── fairy-tale/ # 童话故事
│ ├── growth/ # 成长故事
│ ├── history/ # 历史故事
│ ├── idiom/ # 成语故事
│ ├── myth/ # 神话故事
│ ├── original/ # 原创故事
│ └── science/ # 科学故事
├── dist/ # 编译输出目录
├── package.json
└── tsconfig.json
any 类型types.ts 中定义所有接口和类型@Tool 和 @Param 装饰器定义 MCP 工具story.ts)StoryService)getStories)I 前缀 (如 Story)本项目基于 MIT 许可证开源。
欢迎提交 Issue 和 Pull Request!
Bedbook - 为孩子们带来美好的睡前故事时光