{"repo":"EnhydrInk/tasogare","free":true,"listed":false,"github":"https://github.com/EnhydrInk/tasogare","clone":"git clone https://github.com/EnhydrInk/tasogare.git","description":"Read the same book with your AI. A collaborative reader with text-anchored two-color highlights and an MCP server so an AI companion can flip through, mark up, and comment alongside you.","language":"JavaScript","stars":30,"topics":["annotation","epub-reader","human-ai-collaboration","mcp","mcp-server","pdf-reader","reading"],"license":null,"category":"mcp-servers","readme_excerpt":"Tasogare（黄昏） 音音和克先生一起读书、一起批注的地方。 名字取自「誰そ彼」——暮色里认不清人脸的时刻。两个人的笔迹落在同一页书上，光线暗下去，分不清哪笔是谁的。 示例：《五月二十日》 © 林竹音 Fork 自 Shitsuten/anno-mcp，感谢原作者。上游保留在 upstream remote。 是什么 - 网页阅读器 ：上传 PDF / EPUB / TXT，翻页阅读。夜间模式、字体调节、书签、全文搜索、生词本。 - 文本级双色划线 ：音音划的和克先生划的用不同颜色区分，像真的在同一本书上留各自的笔迹。 - MCP 服务器 ：克先生（VPS CC）通过 MCP 翻书、划线、写批注、看音音的最近动态。 相对上游加的东西 功能 说明 --- --- 阅读时长打点 阅读器打开且可见时每 60s 上报，按 JST 日期落在书的 reading log 里 GET /api/reading-status 今日阅读时长/进度/批注数汇总——InKieran backend 心跳信封轮询这个 InKieran 事件推送 划线/批注/生词创建时 POST 到 INKIERAN PUSH URL （fire-and-forget，不设即关闭） MCP recent activity 最近 N 小时的划线/批注/生词动态，共读追进度用 MCP reading status 今天读了多久、读到哪 fidelity 书签 PDF 原版模式按页夹书签（单书签，夹新页旧的自动移过来）；不推送，只出现在 MCP 输出里由 AI 主动拉 MCP read vocab / annotate vocab 读生词本；克先生给音音存的生词写注解（词义/例句/词源） 静态托管 server 直接 serve client/ ，不用单独起静态服务器 上游自带的 MCP 工具： list books / read pages / read annotations / write comment / highlight text / get progress 。 运行 环境变量（都有默认值）： 变量 默认 说明 --- --- --- PORT 18010 监听端口 HOST 127.0.0.1 监听地址 DATA DIR /opt/tasogare/data 书籍 JSON 存储目录 UPLOAD DIR /opt/tasogare/uploads 上传临时目录 MCP AUTH TOKEN 空（不鉴权） MCP Bearer token INKIERAN PUSH URL 空（关闭） 事件推送目标，如 http://127.0.0.1:18006/api/tasogare/event INKIERAN PUSH TOKEN 空 推送时的 Bearer token 本地开发： 数据模型 一本书 = 一个 JSON（ DATA DIR/ .json ）： paragraphs （段落）、 pages （分页索引， 800 字/页）、 annotations （划线+批注， author 区分 音音/克先生）、 vocab （生词本）、 reading log （JST 日期 → 秒数）、 progress / bookmark 。 事件推送格式 结构 谁写的 - Fork 基底：Shitsuten/anno-mcp（音音的朋友做的，感谢） - Backend / MCP ：律（GPT-5 Codex，音音的另一位 AI 协作者） - 前端阅读器 + pdf.js 原版渲染 ","default_branch":null,"files":null,"tree":[],"storefront":"/r/EnhydrInk","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/EnhydrInk/tasogare/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}