{"_id":"@dhcckb/mcp-server-author-style","_rev":"8-4552a1926661306640f99204895da992","name":"@dhcckb/mcp-server-author-style","dist-tags":{"latest":"1.3.3"},"versions":{"1.0.0":{"name":"@dhcckb/mcp-server-author-style","version":"1.0.0","keywords":["mcp","model-context-protocol","chinese-literature","stylometry","digital-humanities"],"license":"MIT","_id":"@dhcckb/mcp-server-author-style@1.0.0","maintainers":[{"name":"thudh","email":"tangchen@mail.tsinghua.edu.cn"}],"homepage":"https://github.com/dhcckb/mcp-server-author-style#readme","bugs":{"url":"https://github.com/dhcckb/mcp-server-author-style/issues"},"bin":{"mcp-server-author-style":"dist/index.js"},"mcp":{"tools":[{"name":"analyze_author_style","description":"主工具：接收中国古代作家姓名，从全唐诗、全宋诗、殆知阁、ctext.org 四个公开数据源检索现存作品文本，按创作年代自动分期（早/中/晚），计算虚词频率、平均句长、对偶句占比、词汇丰富度（TTR_word + TTR_char）、用典密度五项量化文体特征指标，输出一份结构化 Markdown 文风演变分析报告。支持作者别名映射、单源超时/不可用时静默跳过、单源作品数超过 500 篇时随机采样。","inputSchema":{"type":"object","required":["authorName"],"properties":{"aliases":{"type":"array","items":{"type":"string"},"description":"用户提供的额外别名列表，与内置别名词典合并使用"},"sources":{"type":"array","items":{"enum":["quantangshi","quansongshi","daizhige","ctext"],"type":"string"},"description":"指定启用的数据源，默认全部四个"},"authorName":{"type":"string","description":"中国古代作家姓名（必填），如 苏轼、李白、杜甫"},"periodRanges":{"type":"object","properties":{"mid":{"type":"string","description":"中期年份范围，如 1071-1090"},"late":{"type":"string","description":"晚期年份范围，如 1091-1110"},"early":{"type":"string","description":"早期年份范围，如 1050-1070"}},"description":"手动指定早/中/晚三期年份范围；不填则自动分期"},"maxWorksPerSource":{"type":"number","default":500,"description":"单源采样上限，默认 500"}}}},{"name":"lookup_alias","description":"辅助工具：查询作者已知别名映射，返回内置词典中匹配的别名列表。","inputSchema":{"type":"object","required":["authorName"],"properties":{"authorName":{"type":"string","description":"要查询的作者姓名"}}}},{"name":"list_sources","description":"辅助工具：列出当前可用的数据源及其状态（可达/不可达），用于调试和前置检查。","inputSchema":{"type":"object","properties":{}}}]},"dist":{"shasum":"a4af820834403c07e5f5d18ca1c585fcfa74bfe5","tarball":"https://registry.npmjs.org/@dhcckb/mcp-server-author-style/-/mcp-server-author-style-1.0.0.tgz","fileCount":34,"integrity":"sha512-X+MZx15mc8XosS7qXJKfhxFmLwr4bkv9Lgq9oCx0fotudiKeSNIrbjg3OE+wP5vkAoMvh4jQFKjXWR4HTC5nEg==","signatures":[{"sig":"MEYCIQC8BqZmipxr8zTDcLxItEA6p04Lq5jO2XNrUg/bR57h5QIhALNRNzkbFGEW4FfFuMdAFK7J1PZSku4D5SPC1YJO56ef","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":147021},"main":"dist/index.js","type":"module","_from":"file:/tmp/dhp-agent-npm-iFdiAI/package.tgz","types":"./dist/index.d.ts","engines":{"node":">=18"},"scripts":{"build":"tsc","start":"node dist/index.js"},"_npmUser":{"name":"thudh","email":"tangchen@mail.tsinghua.edu.cn"},"_resolved":"/tmp/dhp-agent-npm-iFdiAI/package.tgz","_integrity":"sha512-X+MZx15mc8XosS7qXJKfhxFmLwr4bkv9Lgq9oCx0fotudiKeSNIrbjg3OE+wP5vkAoMvh4jQFKjXWR4HTC5nEg==","repository":{"url":"git+https://github.com/dhcckb/mcp-server-author-style.git","type":"git"},"_npmVersion":"10.9.1","description":"中国古代作家文风演变分析 MCP Server — 从全唐诗、全宋诗、殆知阁、ctext.org 四个数据源检索作品，分期计算文体指标，输出 Markdown 报告","directories":{},"_nodeVersion":"22.22.2","dependencies":{"@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-server-author-style_1.0.0_1785335064570_0.15502263950992345","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@dhcckb/mcp-server-author-style","version":"1.1.0","keywords":["mcp","model-context-protocol","chinese-literature","stylometry","digital-humanities","poetry","tang-poetry","song-poetry","daizhige","traditional-chinese","simplified-chinese"],"license":"MIT","_id":"@dhcckb/mcp-server-author-style@1.1.0","maintainers":[{"name":"thudh","email":"tangchen@mail.tsinghua.edu.cn"}],"homepage":"https://github.com/dhcckb/mcp-server-author-style#readme","bugs":{"url":"https://github.com/dhcckb/mcp-server-author-style/issues"},"bin":{"mcp-server-author-style":"dist/index.js"},"mcp":{"tools":[{"name":"analyze_author_style","description":"主工具：接收中国古代作家姓名，从全唐诗、全宋诗、殆知阁、ctext.org 四个公开数据源检索现存作品文本，按创作年代自动分期（早/中/晚），计算虚词频率、平均句长、对偶句占比、词汇丰富度（TTR_word + TTR_char）、用典密度五项量化文体特征指标，输出一份结构化 Markdown 文风演变分析报告。支持作者别名映射、单源超时/不可用时静默跳过、单源作品数超过 500 篇时随机采样。","inputSchema":{"type":"object","required":["authorName"],"properties":{"aliases":{"type":"array","items":{"type":"string"},"description":"用户提供的额外别名列表，与内置别名词典合并使用"},"sources":{"type":"array","items":{"enum":["quantangshi","quansongshi","daizhige","ctext"],"type":"string"},"description":"指定启用的数据源，默认全部四个"},"authorName":{"type":"string","description":"中国古代作家姓名（必填），如 苏轼、李白、杜甫"},"periodRanges":{"type":"object","properties":{"mid":{"type":"string","description":"中期年份范围，如 1071-1090"},"late":{"type":"string","description":"晚期年份范围，如 1091-1110"},"early":{"type":"string","description":"早期年份范围，如 1050-1070"}},"description":"手动指定早/中/晚三期年份范围；不填则自动分期"},"maxWorksPerSource":{"type":"number","default":500,"description":"单源采样上限，默认 500"}}}},{"name":"lookup_alias","description":"辅助工具：查询作者已知别名映射，返回内置词典中匹配的别名列表。","inputSchema":{"type":"object","required":["authorName"],"properties":{"authorName":{"type":"string","description":"要查询的作者姓名"}}}},{"name":"list_sources","description":"辅助工具：列出当前可用的数据源及其状态（可达/不可达），用于调试和前置检查。","inputSchema":{"type":"object","properties":{}}},{"name":"search_poems","description":"跨源检索诗歌。在全唐诗、全宋诗、殆知阁三个数据源中按关键词（作者名、诗题、诗句内容）搜索，返回合并去重后的结果列表。支持指定源过滤（source: tang|song|daizhige），默认三个源并发查询。服务端对所有结果统一执行繁转简（t2s）后输出，同时保留 rawText 原文字段。","inputSchema":{"type":"object","required":["keyword"],"properties":{"keyword":{"type":"string","description":"搜索关键词（作者/题名/诗句片段）"},"sources":{"type":"array","items":{"enum":["tang","song","daizhige"],"type":"string"},"description":"指定数据源，默认全部三个"},"maxResults":{"type":"integer","default":20,"description":"最大返回条数"}}}},{"name":"get_poem","description":"按 ID 获取单首诗歌全文。ID 格式为 {source}:{poemId}，例如 tang:12345。返回内容经繁转简统一处理，附带作者、朝代、来源元信息。","inputSchema":{"type":"object","required":["id"],"properties":{"id":{"type":"string","description":"诗歌 ID，格式 source:poemId"},"outputFormat":{"enum":["simplified","traditional","both"],"type":"string","default":"simplified","description":"输出字形偏好：simplified(默认简体)、traditional(保留原文繁体)、both(同时返回两版)"}}}},{"name":"list_authors","description":"列出某数据源下的作者列表，支持分页。返回作者姓名、朝代、作品数量。姓名统一繁转简。","inputSchema":{"type":"object","required":["source"],"properties":{"page":{"type":"integer","default":1},"source":{"enum":["tang","song","daizhige"],"type":"string","description":"数据源"},"pageSize":{"type":"integer","default":50}}}},{"name":"get_author_works","description":"获取指定作者的全部作品分页列表。先以简体名匹配作者，再返回该作者作品（统一繁转简）。","inputSchema":{"type":"object","required":["author","source"],"properties":{"page":{"type":"integer","default":1},"author":{"type":"string","description":"作者姓名（支持繁/简输入，内部自动分词匹配）"},"source":{"enum":["tang","song","daizhige"],"type":"string","description":"限定数据源"},"pageSize":{"type":"integer","default":20}}}},{"name":"health_check","description":"检查三个数据源的连通性与数据可用状态。返回各源的连通状态（ok/unreachable/degraded）、数据条数、最后同步时间。用于运维监控。","inputSchema":{"type":"object","properties":{}}}]},"dist":{"shasum":"d3f4cf5d8e160e65009ee3e3c9635e5d9dddd239","tarball":"https://registry.npmjs.org/@dhcckb/mcp-server-author-style/-/mcp-server-author-style-1.1.0.tgz","fileCount":50,"integrity":"sha512-WGnDmGkFdr4lqfU5ol8FSZ7p3ypdqfI9wu3fAiF/+/CU0BFKRtzkHEyrhQQ8cuNl5ePiK5RHJ86VTfYv8VIsOQ==","signatures":[{"sig":"MEQCICSkBYfC1PRi73HZEjCH4i9qV4tPtPECBKl4KqwOYNx/AiAHAaAiYNNfiW5hUK/ipYrudBjx2fCxsbFy5ecA7jW6Kg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":313310},"main":"dist/index.js","type":"module","_from":"file:/tmp/dhp-agent-npm-dBLCAC/package.tgz","types":"./dist/index.d.ts","engines":{"node":">=18"},"scripts":{"build":"tsc","start":"node dist/index.js"},"_npmUser":{"name":"thudh","email":"tangchen@mail.tsinghua.edu.cn"},"_resolved":"/tmp/dhp-agent-npm-dBLCAC/package.tgz","_integrity":"sha512-WGnDmGkFdr4lqfU5ol8FSZ7p3ypdqfI9wu3fAiF/+/CU0BFKRtzkHEyrhQQ8cuNl5ePiK5RHJ86VTfYv8VIsOQ==","repository":{"url":"git+https://github.com/dhcckb/mcp-server-author-style.git","type":"git"},"_npmVersion":"10.9.1","description":"数字人文 MCP Server — 打通全唐诗/全宋诗/殆知阁三个数据源，提供跨源诗歌检索、作者作品浏览、文风演变分析，服务端统一繁转简输出","directories":{},"_nodeVersion":"22.22.2","dependencies":{"opencc-js":"^1.4.1","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-server-author-style_1.1.0_1785424679521_0.37657196159437234","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"@dhcckb/mcp-server-author-style","version":"1.1.1","keywords":["mcp","model-context-protocol","chinese-literature","stylometry","digital-humanities","poetry","tang-poetry","song-poetry","daizhige","traditional-chinese","simplified-chinese"],"license":"MIT","_id":"@dhcckb/mcp-server-author-style@1.1.1","maintainers":[{"name":"thudh","email":"tangchen@mail.tsinghua.edu.cn"}],"homepage":"https://github.com/dhcckb/mcp-server-author-style#readme","bugs":{"url":"https://github.com/dhcckb/mcp-server-author-style/issues"},"bin":{"mcp-server-author-style":"dist/index.js"},"mcp":{"tools":[{"name":"analyze_author_style","description":"主工具：接收中国古代作家姓名，从全唐诗、全宋诗、殆知阁、ctext.org 四个公开数据源检索现存作品文本，按创作年代自动分期（早/中/晚），计算虚词频率、平均句长、对偶句占比、词汇丰富度（TTR_word + TTR_char）、用典密度五项量化文体特征指标，输出一份结构化 Markdown 文风演变分析报告。支持作者别名映射、单源超时/不可用时静默跳过、单源作品数超过 500 篇时随机采样。","inputSchema":{"type":"object","required":["authorName"],"properties":{"aliases":{"type":"array","items":{"type":"string"},"description":"用户提供的额外别名列表，与内置别名词典合并使用"},"sources":{"type":"array","items":{"enum":["quantangshi","quansongshi","daizhige","ctext"],"type":"string"},"description":"指定启用的数据源，默认全部四个"},"authorName":{"type":"string","description":"中国古代作家姓名（必填），如 苏轼、李白、杜甫"},"periodRanges":{"type":"object","properties":{"mid":{"type":"string","description":"中期年份范围，如 1071-1090"},"late":{"type":"string","description":"晚期年份范围，如 1091-1110"},"early":{"type":"string","description":"早期年份范围，如 1050-1070"}},"description":"手动指定早/中/晚三期年份范围；不填则自动分期"},"maxWorksPerSource":{"type":"number","default":500,"description":"单源采样上限，默认 500"}}}},{"name":"lookup_alias","description":"辅助工具：查询作者已知别名映射，返回内置词典中匹配的别名列表。","inputSchema":{"type":"object","required":["authorName"],"properties":{"authorName":{"type":"string","description":"要查询的作者姓名"}}}},{"name":"list_sources","description":"辅助工具：列出当前可用的数据源及其状态（可达/不可达），用于调试和前置检查。","inputSchema":{"type":"object","properties":{}}},{"name":"search_poems","description":"跨源检索诗歌。在全唐诗、全宋诗、殆知阁三个数据源中按关键词（作者名、诗题、诗句内容）搜索，返回合并去重后的结果列表。支持指定源过滤（source: tang|song|daizhige），默认三个源并发查询。服务端对所有结果统一执行繁转简（t2s）后输出，同时保留 rawText 原文字段。","inputSchema":{"type":"object","required":["keyword"],"properties":{"keyword":{"type":"string","description":"搜索关键词（作者/题名/诗句片段）"},"sources":{"type":"array","items":{"enum":["tang","song","daizhige"],"type":"string"},"description":"指定数据源，默认全部三个"},"maxResults":{"type":"integer","default":20,"description":"最大返回条数"}}}},{"name":"get_poem","description":"按 ID 获取单首诗歌全文。ID 格式为 {source}:{poemId}，例如 tang:10001（全唐诗范围为 10001-10068）、song:20001（全宋诗范围为 20001-20065）、daizhige:30001（殆知阁范围为 30001-30054）。返回内容经繁转简统一处理，附带作者、朝代、来源元信息。outputFormat 选项：simplified（默认简体）、traditional（保留原文繁体）、both（同时返回两版，包含 traditional 字段）。","inputSchema":{"type":"object","required":["id"],"properties":{"id":{"type":"string","description":"诗歌 ID，格式 source:poemId"},"outputFormat":{"enum":["simplified","traditional","both"],"type":"string","default":"simplified","description":"输出字形偏好：simplified(默认简体)、traditional(保留原文繁体)、both(同时返回两版)"}}}},{"name":"list_authors","description":"列出某数据源下的作者列表，支持分页。返回作者姓名、朝代、作品数量。姓名统一繁转简。","inputSchema":{"type":"object","required":["source"],"properties":{"page":{"type":"integer","default":1},"source":{"enum":["tang","song","daizhige"],"type":"string","description":"数据源"},"pageSize":{"type":"integer","default":50}}}},{"name":"get_author_works","description":"获取指定作者的全部作品分页列表。先以简体名匹配作者，再返回该作者作品（统一繁转简）。","inputSchema":{"type":"object","required":["author","source"],"properties":{"page":{"type":"integer","default":1},"author":{"type":"string","description":"作者姓名（支持繁/简输入，内部自动分词匹配）"},"source":{"enum":["tang","song","daizhige"],"type":"string","description":"限定数据源"},"pageSize":{"type":"integer","default":20}}}},{"name":"health_check","description":"检查三个数据源的连通性与数据可用状态。返回各源的连通状态（ok/unreachable/degraded）、数据条数、最后同步时间。用于运维监控。","inputSchema":{"type":"object","properties":{}}}]},"dist":{"shasum":"bb19b781c00b7cb1a1b58dd69b3c2fe7b29df14a","tarball":"https://registry.npmjs.org/@dhcckb/mcp-server-author-style/-/mcp-server-author-style-1.1.1.tgz","fileCount":50,"integrity":"sha512-bdnguiZckLMDfAtJBtL1QuigUTRJ2oia3mtFLqldVR7Dk7IZQNZ3usAqUV/fagT2IHQ13Bqwc+dBybbreqIe/w==","signatures":[{"sig":"MEUCICa8lWYDeQy3U2F6o8szjqQNH5uf4WX5MPPWN64bgzgUAiEAuVFPvMfDXIiD4pgS07MOPrLB73TbiKdSYkHW8H57LeE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":315941},"main":"dist/index.js","type":"module","_from":"file:/tmp/dhp-agent-npm-cpjdPD/package.tgz","types":"./dist/index.d.ts","engines":{"node":">=18"},"scripts":{"build":"tsc","start":"node dist/index.js"},"_npmUser":{"name":"thudh","email":"tangchen@mail.tsinghua.edu.cn"},"_resolved":"/tmp/dhp-agent-npm-cpjdPD/package.tgz","_integrity":"sha512-bdnguiZckLMDfAtJBtL1QuigUTRJ2oia3mtFLqldVR7Dk7IZQNZ3usAqUV/fagT2IHQ13Bqwc+dBybbreqIe/w==","repository":{"url":"git+https://github.com/dhcckb/mcp-server-author-style.git","type":"git"},"_npmVersion":"10.9.1","description":"数字人文 MCP Server — 打通全唐诗/全宋诗/殆知阁三个数据源，提供跨源诗歌检索、作者作品浏览、文风演变分析，服务端统一繁转简输出","directories":{},"_nodeVersion":"22.22.2","dependencies":{"opencc-js":"^1.4.1","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-server-author-style_1.1.1_1785639685698_0.7247243048088292","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@dhcckb/mcp-server-author-style","version":"1.2.0","keywords":["mcp","model-context-protocol","chinese-literature","stylometry","digital-humanities","poetry","tang-poetry","song-poetry","daizhige","traditional-chinese","simplified-chinese","author-comparison"],"license":"MIT","_id":"@dhcckb/mcp-server-author-style@1.2.0","maintainers":[{"name":"thudh","email":"tangchen@mail.tsinghua.edu.cn"}],"homepage":"https://github.com/dhcckb/mcp-server-author-style#readme","bugs":{"url":"https://github.com/dhcckb/mcp-server-author-style/issues"},"bin":{"mcp-server-author-style":"dist/index.js"},"mcp":{"tools":[{"name":"analyze_author_style","description":"单作者风格画像：接收中国古代作家姓名，从本地 tang/song/daizhige 三源检索全部作品文本，计算虚词频率、平均句长、对偶句占比、词汇丰富度（TTR_word + TTR_char）、用典密度五项量化指标，输出结构化 Markdown 风格画像报告。不再包含分期/periodRanges，不再连接外部在线数据源。支持别名映射。","inputSchema":{"type":"object","required":["authorName"],"properties":{"aliases":{"type":"array","items":{"type":"string"},"description":"用户提供的额外别名列表，与内置别名词典合并使用"},"sources":{"type":"array","items":{"enum":["tang","song","daizhige"],"type":"string"},"description":"指定启用的数据源，默认全部三个"},"authorName":{"type":"string","description":"中国古代作家姓名（必填），如 苏轼、李白、杜甫"},"maxWorksPerSource":{"type":"number","default":500,"description":"单源采样上限，默认 500"}}}},{"name":"compare_authors","description":"多作者横向对比：接受 2 位及以上中国古代作家姓名，从本地 tang/song/daizhige 三源检索各自全部作品文本，计算虚词频率、平均句长、对偶句占比、词汇丰富度（TTR_word + TTR_char）、用典密度五项量化指标，输出多作者横向对比 Markdown 报告 + 结构化 JSON（含归一化指标，可直接用于前端雷达图/柱状图渲染）。支持别名映射、指定本地源、指定对比指标子集。","inputSchema":{"type":"object","required":["authors"],"properties":{"aliases":{"type":"array","items":{"type":"string"},"description":"用户提供的额外别名列表"},"authors":{"type":"array","items":{"type":"string"},"minItems":2,"description":"中国古代作家姓名列表（必填，至少 2 人），如 [\"李白\", \"杜甫\"]"},"metrics":{"type":"array","items":{"enum":["functionWordRate","avgSentenceLength","parallelismRatio","ttrWord","ttrChar","allusionDensity"],"type":"string"},"description":"指定对比的指标子集，默认全部五项"},"sources":{"type":"array","items":{"enum":["tang","song","daizhige"],"type":"string"},"description":"指定启用的数据源，默认全部三个"},"outputFormat":{"enum":["markdown","json","both"],"type":"string","default":"both","description":"输出格式：markdown（报告）、json（结构化数据）、both（同时返回）"},"maxWorksPerSource":{"type":"number","default":500,"description":"单源采样上限，默认 500"}}}},{"name":"lookup_alias","description":"辅助工具：查询作者已知别名映射，返回内置词典中匹配的别名列表。","inputSchema":{"type":"object","required":["authorName"],"properties":{"authorName":{"type":"string","description":"要查询的作者姓名"}}}},{"name":"list_sources","description":"辅助工具：列出当前可用的数据源及其状态（可达/不可达），用于调试和前置检查。","inputSchema":{"type":"object","properties":{}}},{"name":"search_poems","description":"跨源检索诗歌。在 tang/song/daizhige 三个本地数据源中按关键词（作者名、诗题、诗句内容）搜索，返回合并去重后的结果列表。支持指定源过滤，默认三个源并发查询。服务端对所有结果统一执行繁转简（t2s）后输出，同时保留 rawText 原文字段。内部对搜索关键词执行 t2s 确保简繁输入一致性。","inputSchema":{"type":"object","required":["keyword"],"properties":{"keyword":{"type":"string","description":"搜索关键词（作者/题名/诗句片段）"},"sources":{"type":"array","items":{"enum":["tang","song","daizhige"],"type":"string"},"description":"指定数据源，默认全部三个"},"maxResults":{"type":"integer","default":20,"description":"最大返回条数"}}}},{"name":"get_poem","description":"按 ID 获取单首诗歌全文。ID 格式为 {source}:{poemId}，例如 tang:10001（全唐诗范围为 10001-10068）、song:20001（全宋诗范围为 20001-20065）、daizhige:30001（殆知阁范围为 30001-30054）。返回内容经繁转简统一处理，附带作者、朝代、来源元信息。outputFormat 选项：simplified（默认简体）、traditional（保留原文繁体）、both（同时返回两版，包含 traditional 字段）。","inputSchema":{"type":"object","required":["id"],"properties":{"id":{"type":"string","description":"诗歌 ID，格式 source:poemId"},"outputFormat":{"enum":["simplified","traditional","both"],"type":"string","default":"simplified","description":"输出字形偏好：simplified(默认简体)、traditional(保留原文繁体)、both(同时返回两版)"}}}},{"name":"list_authors","description":"列出某数据源下的作者列表，支持分页。返回作者姓名、朝代、作品数量。姓名统一繁转简（全链路 alwaysSimplified 处理，不依赖启发式检测）。","inputSchema":{"type":"object","required":["source"],"properties":{"page":{"type":"integer","default":1},"source":{"enum":["tang","song","daizhige"],"type":"string","description":"数据源"},"pageSize":{"type":"integer","default":50}}}},{"name":"get_author_works","description":"获取指定作者的全部作品分页列表。输入和存储双向 t2s 后精确匹配（简/繁输入均可命中），返回该作者作品（统一繁转简）。","inputSchema":{"type":"object","required":["author","source"],"properties":{"page":{"type":"integer","default":1},"author":{"type":"string","description":"作者姓名（支持繁/简输入，内部双向 t2s 后匹配）"},"source":{"enum":["tang","song","daizhige"],"type":"string","description":"限定数据源"},"pageSize":{"type":"integer","default":20}}}},{"name":"health_check","description":"检查三个数据源的连通性与数据可用状态。返回各源的连通状态（ok/unreachable/degraded）、数据条数、最后同步时间。用于运维监控。","inputSchema":{"type":"object","properties":{}}}]},"dist":{"shasum":"5ab91d7945e5f929632cd06bb3ad47795d846204","tarball":"https://registry.npmjs.org/@dhcckb/mcp-server-author-style/-/mcp-server-author-style-1.2.0.tgz","fileCount":50,"integrity":"sha512-idQGPVDoy0DV5Ecoz7WHnBjImPa8SgTYlCr11lbfHNqQvDDf7j5Szks5GwvmpkNQYllI5ao/D10eAnPMM6w/gg==","signatures":[{"sig":"MEQCIEXx7QTc2gjl0zVXRbciTGo3d48j/knm6qCca7Jqgdf2AiBpM/ZvQa0HXAyMmPbGIUVmYPNi5QMS8lnXHgTM/8iKWg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":335227},"main":"dist/index.js","type":"module","_from":"file:/tmp/dhp-agent-npm-joeOam/package.tgz","types":"./dist/index.d.ts","engines":{"node":">=18"},"scripts":{"build":"tsc","start":"node dist/index.js"},"_npmUser":{"name":"thudh","email":"tangchen@mail.tsinghua.edu.cn"},"_resolved":"/tmp/dhp-agent-npm-joeOam/package.tgz","_integrity":"sha512-idQGPVDoy0DV5Ecoz7WHnBjImPa8SgTYlCr11lbfHNqQvDDf7j5Szks5GwvmpkNQYllI5ao/D10eAnPMM6w/gg==","repository":{"url":"git+https://github.com/dhcckb/mcp-server-author-style.git","type":"git"},"_npmVersion":"10.9.1","description":"数字人文 MCP Server — 中国古代作家文风分析，基于本地 tang/song/daizhige 三源，支持单作者风格画像、多作者横向对比、跨源诗歌检索，全链路繁简统一","directories":{},"_nodeVersion":"22.22.2","dependencies":{"opencc-js":"^1.4.1","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-server-author-style_1.2.0_1785672281796_0.9173343853838749","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@dhcckb/mcp-server-author-style","version":"1.3.0","keywords":["mcp","model-context-protocol","chinese-literature","stylometry","digital-humanities","poetry","tang-poetry","song-poetry","daizhige","traditional-chinese","simplified-chinese","author-comparison","chinese-poetry","stylometric-analysis"],"license":"MIT","_id":"@dhcckb/mcp-server-author-style@1.3.0","maintainers":[{"name":"thudh","email":"tangchen@mail.tsinghua.edu.cn"}],"homepage":"https://github.com/dhcckb/mcp-server-author-style#readme","bugs":{"url":"https://github.com/dhcckb/mcp-server-author-style/issues"},"bin":{"mcp-server-author-style":"dist/index.js"},"mcp":{"tools":[{"name":"analyze_author_style","description":"单作者风格画像：接收中国古代作家姓名，从本地 tang/song/daizhige 三源检索全部作品文本，计算虚词频率、平均句长、对偶句占比、词汇丰富度（TTR_word + TTR_char）、用典密度五项量化指标，输出结构化 Markdown 风格画像报告。不再包含分期/periodRanges，不再连接外部在线数据源（quantangshi/quansongshi/ctext）。支持别名映射。","inputSchema":{"type":"object","required":["authorName"],"properties":{"aliases":{"type":"array","items":{"type":"string"},"description":"用户提供的额外别名列表，与内置别名词典合并使用"},"sources":{"type":"array","items":{"enum":["tang","song","daizhige"],"type":"string"},"description":"指定启用的数据源，默认全部三个"},"authorName":{"type":"string","description":"中国古代作家姓名（必填），如 苏轼、李白、杜甫"},"maxWorksPerSource":{"type":"number","default":500,"description":"单源采样上限，默认 500"}}}},{"name":"compare_authors","description":"多作者横向对比：接受 2 位及以上中国古代作家姓名，从本地 tang/song/daizhige 三源检索各自全部作品文本，计算虚词频率、平均句长、对偶句占比、词汇丰富度（TTR_word + TTR_char）、用典密度五项量化指标，输出多作者横向对比 Markdown 报告 + 结构化 JSON（含归一化指标，可直接用于前端雷达图/柱状图渲染）。支持别名映射、指定本地源、指定对比指标子集。","inputSchema":{"type":"object","required":["authors"],"properties":{"aliases":{"type":"array","items":{"type":"string"},"description":"用户提供的额外别名列表"},"authors":{"type":"array","items":{"type":"string"},"minItems":2,"description":"中国古代作家姓名列表（必填，至少 2 人），如 [\"李白\", \"杜甫\"]"},"metrics":{"type":"array","items":{"enum":["functionWordRate","avgSentenceLength","parallelismRatio","ttrWord","ttrChar","allusionDensity"],"type":"string"},"description":"指定对比的指标子集，默认全部五项"},"sources":{"type":"array","items":{"enum":["tang","song","daizhige"],"type":"string"},"description":"指定启用的数据源，默认全部三个"},"outputFormat":{"enum":["markdown","json","both"],"type":"string","default":"both","description":"输出格式：markdown（报告）、json（结构化数据）、both（同时返回）"},"maxWorksPerSource":{"type":"number","default":500,"description":"单源采样上限，默认 500"}}}},{"name":"lookup_alias","description":"辅助工具：查询作者已知别名映射，返回内置词典中匹配的别名列表。","inputSchema":{"type":"object","required":["authorName"],"properties":{"authorName":{"type":"string","description":"要查询的作者姓名"}}}},{"name":"list_sources","description":"辅助工具：列出当前可用的数据源及其状态（可达/不可达），用于调试和前置检查。","inputSchema":{"type":"object","properties":{}}},{"name":"search_poems","description":"跨源检索诗歌。在 tang/song/daizhige 三个本地数据源中按关键词（作者名、诗题、诗句内容）搜索，返回合并去重后的结果列表。支持指定源过滤，默认三个源并发查询。服务端对所有结果统一执行繁转简（t2s）后输出，同时保留 rawText 原文字段。内部对搜索关键词执行 t2s 确保简繁输入一致性。","inputSchema":{"type":"object","required":["keyword"],"properties":{"keyword":{"type":"string","description":"搜索关键词（作者/题名/诗句片段）"},"sources":{"type":"array","items":{"enum":["tang","song","daizhige"],"type":"string"},"description":"指定数据源，默认全部三个"},"maxResults":{"type":"integer","default":20,"description":"最大返回条数"}}}},{"name":"get_poem","description":"按 ID 获取单首诗歌全文。ID 格式为 {source}:{poemId}，例如 tang:10001（全唐诗范围为 10001-10068）、song:20001（全宋诗范围为 20001-20065）、daizhige:30001（殆知阁范围为 30001-30054）。返回内容经繁转简统一处理，附带作者、朝代、来源元信息。outputFormat 选项：simplified（默认简体）、traditional（保留原文繁体）、both（同时返回两版，包含 traditional 字段）。","inputSchema":{"type":"object","required":["id"],"properties":{"id":{"type":"string","description":"诗歌 ID，格式 source:poemId"},"outputFormat":{"enum":["simplified","traditional","both"],"type":"string","default":"simplified","description":"输出字形偏好：simplified(默认简体)、traditional(保留原文繁体)、both(同时返回两版)"}}}},{"name":"list_authors","description":"列出某数据源下的作者列表，支持分页。返回作者姓名、朝代、作品数量。姓名统一繁转简（全链路 alwaysSimplified 处理，不依赖启发式检测）。","inputSchema":{"type":"object","required":["source"],"properties":{"page":{"type":"integer","default":1},"source":{"enum":["tang","song","daizhige"],"type":"string","description":"数据源"},"pageSize":{"type":"integer","default":50}}}},{"name":"get_author_works","description":"获取指定作者的全部作品分页列表。先以简体名匹配作者（输入和存储双向 t2s 后精确匹配，简/繁输入均可命中），再返回该作者作品（统一繁转简）。","inputSchema":{"type":"object","required":["author","source"],"properties":{"page":{"type":"integer","default":1},"author":{"type":"string","description":"作者姓名（支持繁/简输入，内部双向 t2s 后匹配）"},"source":{"enum":["tang","song","daizhige"],"type":"string","description":"限定数据源"},"pageSize":{"type":"integer","default":20}}}},{"name":"health_check","description":"检查三个数据源的连通性与数据可用状态。返回各源的连通状态（ok/unreachable/degraded）、数据条数、最后同步时间。用于运维监控。","inputSchema":{"type":"object","properties":{}}}]},"dist":{"shasum":"da5a6be0d8f38ac1d80c70402410b6eeb9bddd05","tarball":"https://registry.npmjs.org/@dhcckb/mcp-server-author-style/-/mcp-server-author-style-1.3.0.tgz","fileCount":62,"integrity":"sha512-5RYf0mwIZB++31wnv9MmmFiQIP/NF1Dn5gz89RLGRoL/XSAL/K5YnhWeejMb3DAer6TlUd2mAW8MrsE0iRi+9A==","signatures":[{"sig":"MEUCIFHl4KvVHEEY9IMpRK2fP42duDokuv9xdN8tXBPJzunaAiEAqpL+EeWnvq4Xf9YcswVq+YOHm7/4qLcWdl+ZuJkGSVM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":375284},"main":"dist/index.js","type":"module","_from":"file:/tmp/dhp-agent-npm-MeomAH/package.tgz","types":"./dist/index.d.ts","engines":{"node":">=18"},"scripts":{"build":"tsc","start":"node dist/index.js"},"_npmUser":{"name":"thudh","email":"tangchen@mail.tsinghua.edu.cn"},"_resolved":"/tmp/dhp-agent-npm-MeomAH/package.tgz","_integrity":"sha512-5RYf0mwIZB++31wnv9MmmFiQIP/NF1Dn5gz89RLGRoL/XSAL/K5YnhWeejMb3DAer6TlUd2mAW8MrsE0iRi+9A==","repository":{"url":"git+https://github.com/dhcckb/mcp-server-author-style.git","type":"git"},"_npmVersion":"10.9.1","description":"数字人文 MCP Server — 中国古代作家文风分析，基于 chinese-poetry HTTP 动态拉取（5.5万唐诗 + 26万宋诗）+ 本地殆知阁三源，支持单作者风格画像、多作者横向对比、跨源诗歌检索，全链路繁简统一","directories":{},"_nodeVersion":"22.22.2","dependencies":{"opencc-js":"^1.4.1","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-server-author-style_1.3.0_1785677770097_0.25464696728464653","host":"s3://npm-registry-packages-npm-production"}},"1.3.1":{"name":"@dhcckb/mcp-server-author-style","version":"1.3.1","keywords":["mcp","model-context-protocol","chinese-literature","stylometry","digital-humanities","poetry","tang-poetry","song-ci","宋词","按需下载","索引驱动","daizhige","traditional-chinese","simplified-chinese","author-comparison","chinese-poetry","stylometric-analysis"],"license":"MIT","_id":"@dhcckb/mcp-server-author-style@1.3.1","maintainers":[{"name":"thudh","email":"tangchen@mail.tsinghua.edu.cn"}],"homepage":"https://github.com/dhcckb/mcp-server-author-style#readme","bugs":{"url":"https://github.com/dhcckb/mcp-server-author-style/issues"},"bin":{"mcp-server-author-style":"dist/index.js"},"mcp":{"tools":[{"name":"analyze_author_style","description":"单作者风格画像：接收中国古代作家姓名，从本地 tang/song/daizhige 三源检索全部作品文本，计算虚词频率、平均句长、对偶句占比、词汇丰富度（TTR_word + TTR_char）、用典密度五项量化指标，输出结构化 Markdown 风格画像报告。不再包含分期/periodRanges，不再连接外部在线数据源（quantangshi/quansongshi/ctext）。支持别名映射。","inputSchema":{"type":"object","required":["authorName"],"properties":{"aliases":{"type":"array","items":{"type":"string"},"description":"用户提供的额外别名列表，与内置别名词典合并使用"},"sources":{"type":"array","items":{"enum":["tang","song","daizhige"],"type":"string"},"description":"指定启用的数据源，默认全部三个"},"authorName":{"type":"string","description":"中国古代作家姓名（必填），如 苏轼、李白、杜甫"},"maxWorksPerSource":{"type":"number","default":500,"description":"单源采样上限，默认 500"}}}},{"name":"compare_authors","description":"多作者横向对比：接受 2 位及以上中国古代作家姓名，从本地 tang/song/daizhige 三源检索各自全部作品文本，计算虚词频率、平均句长、对偶句占比、词汇丰富度（TTR_word + TTR_char）、用典密度五项量化指标，输出多作者横向对比 Markdown 报告 + 结构化 JSON（含归一化指标，可直接用于前端雷达图/柱状图渲染）。支持别名映射、指定本地源、指定对比指标子集。","inputSchema":{"type":"object","required":["authors"],"properties":{"aliases":{"type":"array","items":{"type":"string"},"description":"用户提供的额外别名列表"},"authors":{"type":"array","items":{"type":"string"},"minItems":2,"description":"中国古代作家姓名列表（必填，至少 2 人），如 [\"李白\", \"杜甫\"]"},"metrics":{"type":"array","items":{"enum":["functionWordRate","avgSentenceLength","parallelismRatio","ttrWord","ttrChar","allusionDensity"],"type":"string"},"description":"指定对比的指标子集，默认全部五项"},"sources":{"type":"array","items":{"enum":["tang","song","daizhige"],"type":"string"},"description":"指定启用的数据源，默认全部三个"},"outputFormat":{"enum":["markdown","json","both"],"type":"string","default":"both","description":"输出格式：markdown（报告）、json（结构化数据）、both（同时返回）"},"maxWorksPerSource":{"type":"number","default":500,"description":"单源采样上限，默认 500"}}}},{"name":"lookup_alias","description":"辅助工具：查询作者已知别名映射，返回内置词典中匹配的别名列表。","inputSchema":{"type":"object","required":["authorName"],"properties":{"authorName":{"type":"string","description":"要查询的作者姓名"}}}},{"name":"list_sources","description":"辅助工具：列出当前可用的数据源及其状态（可达/不可达），用于调试和前置检查。","inputSchema":{"type":"object","properties":{}}},{"name":"search_poems","description":"跨源检索诗歌。在 tang/song/daizhige 三个本地数据源中按关键词（作者名、诗题、诗句内容）搜索，返回合并去重后的结果列表。支持指定源过滤，默认三个源并发查询。服务端对所有结果统一执行繁转简（t2s）后输出，同时保留 rawText 原文字段。内部对搜索关键词执行 t2s 确保简繁输入一致性。","inputSchema":{"type":"object","required":["keyword"],"properties":{"keyword":{"type":"string","description":"搜索关键词（作者/题名/诗句片段）"},"sources":{"type":"array","items":{"enum":["tang","song","daizhige"],"type":"string"},"description":"指定数据源，默认全部三个"},"maxResults":{"type":"integer","default":20,"description":"最大返回条数"}}}},{"name":"get_poem","description":"按 ID 获取单首诗歌全文。ID 格式为 {source}:{poemId}，例如 tang:10001（全唐诗范围为 10001-10068）、song:20001（全宋诗范围为 20001-20065）、daizhige:30001（殆知阁范围为 30001-30054）。返回内容经繁转简统一处理，附带作者、朝代、来源元信息。outputFormat 选项：simplified（默认简体）、traditional（保留原文繁体）、both（同时返回两版，包含 traditional 字段）。","inputSchema":{"type":"object","required":["id"],"properties":{"id":{"type":"string","description":"诗歌 ID，格式 source:poemId"},"outputFormat":{"enum":["simplified","traditional","both"],"type":"string","default":"simplified","description":"输出字形偏好：simplified(默认简体)、traditional(保留原文繁体)、both(同时返回两版)"}}}},{"name":"list_authors","description":"列出某数据源下的作者列表，支持分页。返回作者姓名、朝代、作品数量。姓名统一繁转简（全链路 alwaysSimplified 处理，不依赖启发式检测）。","inputSchema":{"type":"object","required":["source"],"properties":{"page":{"type":"integer","default":1},"source":{"enum":["tang","song","daizhige"],"type":"string","description":"数据源"},"pageSize":{"type":"integer","default":50}}}},{"name":"get_author_works","description":"获取指定作者的全部作品分页列表。先以简体名匹配作者（输入和存储双向 t2s 后精确匹配，简/繁输入均可命中），再返回该作者作品（统一繁转简）。","inputSchema":{"type":"object","required":["author","source"],"properties":{"page":{"type":"integer","default":1},"author":{"type":"string","description":"作者姓名（支持繁/简输入，内部双向 t2s 后匹配）"},"source":{"enum":["tang","song","daizhige"],"type":"string","description":"限定数据源"},"pageSize":{"type":"integer","default":20}}}},{"name":"health_check","description":"检查三个数据源的连通性与数据可用状态。返回各源的连通状态（ok/unreachable/degraded）、数据条数、最后同步时间。用于运维监控。","inputSchema":{"type":"object","properties":{}}}]},"dist":{"shasum":"01be61a8597847511a1b9522a05200d96a174c33","tarball":"https://registry.npmjs.org/@dhcckb/mcp-server-author-style/-/mcp-server-author-style-1.3.1.tgz","fileCount":70,"integrity":"sha512-E7xfownkUnN6Edwel2AhAUdpunuzDJTuQ8E6GExzh23I+PJeqgdnafjGV+YsVJbCSnGBcaH/SATKIvwW559bfQ==","signatures":[{"sig":"MEUCIA8VPco8Ll8HiRa85obf92jM6Aa3CsBZyckzn1+zdWekAiEA/GQXX5E43gkugDSGaId4PijdW6VXQemBdlHOgFONoMw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":416841},"main":"dist/index.js","type":"module","_from":"file:/tmp/dhp-agent-npm-PGpJMc/package.tgz","types":"./dist/index.d.ts","engines":{"node":">=18"},"scripts":{"build":"tsc","start":"node dist/index.js","build-index":"npx tsx scripts/build-song-index.ts"},"_npmUser":{"name":"thudh","email":"tangchen@mail.tsinghua.edu.cn"},"_resolved":"/tmp/dhp-agent-npm-PGpJMc/package.tgz","_integrity":"sha512-E7xfownkUnN6Edwel2AhAUdpunuzDJTuQ8E6GExzh23I+PJeqgdnafjGV+YsVJbCSnGBcaH/SATKIvwW559bfQ==","repository":{"url":"git+https://github.com/dhcckb/mcp-server-author-style.git","type":"git"},"_npmVersion":"10.9.1","description":"数字人文 MCP Server — 中国古代作家文风分析，v1.3.1 修正宋词路径（全宋诗→宋词）+ 索引驱动按需下载，首响应秒级","directories":{},"_nodeVersion":"22.22.2","dependencies":{"opencc-js":"^1.4.1","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-server-author-style_1.3.1_1785685216626_0.19615919377907254","host":"s3://npm-registry-packages-npm-production"}},"1.3.2":{"name":"@dhcckb/mcp-server-author-style","version":"1.3.2","keywords":["mcp","model-context-protocol","chinese-literature","stylometry","digital-humanities","poetry","tang-poetry","song-ci","宋词","按需下载","索引驱动","daizhige","traditional-chinese","simplified-chinese","author-comparison","chinese-poetry","stylometric-analysis"],"license":"MIT","_id":"@dhcckb/mcp-server-author-style@1.3.2","maintainers":[{"name":"thudh","email":"tangchen@mail.tsinghua.edu.cn"}],"homepage":"https://github.com/dhcckb/mcp-server-author-style#readme","bugs":{"url":"https://github.com/dhcckb/mcp-server-author-style/issues"},"bin":{"mcp-server-author-style":"dist/index.js"},"mcp":{"tools":[{"name":"analyze_author_style","description":"单作者风格画像：接收中国古代作家姓名，从本地 tang/song/daizhige 三源检索全部作品文本，计算虚词频率、平均句长、对偶句占比、词汇丰富度（TTR_word + TTR_char）、用典密度五项量化指标，输出结构化 Markdown 风格画像报告。不再包含分期/periodRanges，不再连接外部在线数据源（quantangshi/quansongshi/ctext）。支持别名映射。","inputSchema":{"type":"object","required":["authorName"],"properties":{"aliases":{"type":"array","items":{"type":"string"},"description":"用户提供的额外别名列表，与内置别名词典合并使用"},"sources":{"type":"array","items":{"enum":["tang","song","daizhige"],"type":"string"},"description":"指定启用的数据源，默认全部三个"},"authorName":{"type":"string","description":"中国古代作家姓名（必填），如 苏轼、李白、杜甫"},"maxWorksPerSource":{"type":"number","default":500,"description":"单源采样上限，默认 500"}}}},{"name":"compare_authors","description":"多作者横向对比：接受 2 位及以上中国古代作家姓名，从本地 tang/song/daizhige 三源检索各自全部作品文本，计算虚词频率、平均句长、对偶句占比、词汇丰富度（TTR_word + TTR_char）、用典密度五项量化指标，输出多作者横向对比 Markdown 报告 + 结构化 JSON（含归一化指标，可直接用于前端雷达图/柱状图渲染）。支持别名映射、指定本地源、指定对比指标子集。","inputSchema":{"type":"object","required":["authors"],"properties":{"aliases":{"type":"array","items":{"type":"string"},"description":"用户提供的额外别名列表"},"authors":{"type":"array","items":{"type":"string"},"minItems":2,"description":"中国古代作家姓名列表（必填，至少 2 人），如 [\"李白\", \"杜甫\"]"},"metrics":{"type":"array","items":{"enum":["functionWordRate","avgSentenceLength","parallelismRatio","ttrWord","ttrChar","allusionDensity"],"type":"string"},"description":"指定对比的指标子集，默认全部五项"},"sources":{"type":"array","items":{"enum":["tang","song","daizhige"],"type":"string"},"description":"指定启用的数据源，默认全部三个"},"outputFormat":{"enum":["markdown","json","both"],"type":"string","default":"both","description":"输出格式：markdown（报告）、json（结构化数据）、both（同时返回）"},"maxWorksPerSource":{"type":"number","default":500,"description":"单源采样上限，默认 500"}}}},{"name":"lookup_alias","description":"辅助工具：查询作者已知别名映射，返回内置词典中匹配的别名列表。","inputSchema":{"type":"object","required":["authorName"],"properties":{"authorName":{"type":"string","description":"要查询的作者姓名"}}}},{"name":"list_sources","description":"辅助工具：列出当前可用的数据源及其状态（可达/不可达），用于调试和前置检查。","inputSchema":{"type":"object","properties":{}}},{"name":"search_poems","description":"跨源检索诗歌。在 tang/song/daizhige 三个本地数据源中按关键词（作者名、诗题、诗句内容）搜索，返回合并去重后的结果列表。支持指定源过滤，默认三个源并发查询。服务端对所有结果统一执行繁转简（t2s）后输出，同时保留 rawText 原文字段。内部对搜索关键词执行 t2s 确保简繁输入一致性。tang（v1.3.2）和 song 均优先作者索引匹配，未命中时 console.warn 后回退全量下载。","inputSchema":{"type":"object","required":["keyword"],"properties":{"keyword":{"type":"string","description":"搜索关键词（作者/题名/诗句片段）"},"sources":{"type":"array","items":{"enum":["tang","song","daizhige"],"type":"string"},"description":"指定数据源，默认全部三个"},"maxResults":{"type":"integer","default":20,"description":"最大返回条数"}}}},{"name":"get_poem","description":"按 ID 获取单首诗歌全文。ID 格式为 {source}:{poemId}，例如 tang:10001（全唐诗范围为 10001-10068）、song:20001（宋词范围为 20001-20065）、daizhige:30001（殆知阁范围为 30001-30054）。返回内容经繁转简统一处理，附带作者、朝代、来源元信息。outputFormat 选项：simplified（默认简体）、traditional（保留原文繁体）、both（同时返回两版，包含 traditional 字段）。tang（v1.3.2）走按需分片下载，不触发全量批量下载。","inputSchema":{"type":"object","required":["id"],"properties":{"id":{"type":"string","description":"诗歌 ID，格式 source:poemId"},"outputFormat":{"enum":["simplified","traditional","both"],"type":"string","default":"simplified","description":"输出字形偏好：simplified(默认简体)、traditional(保留原文繁体)、both(同时返回两版)"}}}},{"name":"list_authors","description":"列出某数据源下的作者列表，支持分页。返回作者姓名、朝代、作品数量。姓名统一繁转简（全链路 alwaysSimplified 处理，不依赖启发式检测）。tang（v1.3.2）和 song 均从本地预置索引返回作者信息（不触发远程数据下载），daizhige 走本地 JSON。","inputSchema":{"type":"object","required":["source"],"properties":{"page":{"type":"integer","default":1},"source":{"enum":["tang","song","daizhige"],"type":"string","description":"数据源"},"pageSize":{"type":"integer","default":50}}}},{"name":"get_author_works","description":"获取指定作者的全部作品分页列表。先以简体名匹配作者（输入和存储双向 t2s 后精确匹配，简/繁输入均可命中），再返回该作者作品（统一繁转简）。tang（v1.3.2）和 song（v1.3.1）均索引驱动按需下载对应分片后过滤（仅下载 1-5 个分片），daizhige 走本地 JSON。","inputSchema":{"type":"object","required":["author","source"],"properties":{"page":{"type":"integer","default":1},"author":{"type":"string","description":"作者姓名（支持繁/简输入，内部双向 t2s 后匹配）"},"source":{"enum":["tang","song","daizhige"],"type":"string","description":"限定数据源"},"pageSize":{"type":"integer","default":20}}}},{"name":"health_check","description":"检查三个数据源的连通性与数据可用状态。检测 chinese-poetry GitHub raw CDN 的连通性（tang 全唐诗和 song 宋词），报告各源的 HTTP 状态和作品总数（tang 和 song 均从预置索引获取作者数）。返回各源的连通状态（ok/unreachable/degraded）、数据条数、最后同步时间。用于运维监控。","inputSchema":{"type":"object","properties":{}}}]},"dist":{"shasum":"4e217c948b3d0824e49bb03efc226c1d193d4742","tarball":"https://registry.npmjs.org/@dhcckb/mcp-server-author-style/-/mcp-server-author-style-1.3.2.tgz","fileCount":78,"integrity":"sha512-e+cmm+W/3xOjDCtux68k1PRGY+uKr4xzTJEtOCLynx7VR7LdCOB0VvddGeNVKyQmuQr+gIvA6+VeDYGdYlUY0Q==","signatures":[{"sig":"MEQCIGu6459ctrbV4xGkjTprYjbsVSf8/EudU4YL9dyNwk0KAiB7i03pkGtucB6K0CSvcuS5AXMIIDpF808s5ofgoK6lew==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":454687},"main":"dist/index.js","type":"module","_from":"file:/tmp/dhp-agent-npm-mchGNL/package.tgz","types":"./dist/index.d.ts","engines":{"node":">=18"},"scripts":{"build":"tsc","start":"node dist/index.js","build-index":"npx tsx scripts/build-all-indexes.ts"},"_npmUser":{"name":"thudh","email":"tangchen@mail.tsinghua.edu.cn"},"_resolved":"/tmp/dhp-agent-npm-mchGNL/package.tgz","_integrity":"sha512-e+cmm+W/3xOjDCtux68k1PRGY+uKr4xzTJEtOCLynx7VR7LdCOB0VvddGeNVKyQmuQr+gIvA6+VeDYGdYlUY0Q==","repository":{"url":"git+https://github.com/dhcckb/mcp-server-author-style.git","type":"git"},"_npmVersion":"10.9.1","description":"数字人文 MCP Server — 中国古代作家文风分析，v1.3.2 Tang 源索引驱动按需下载 + Song 索引实装，双源秒级响应","directories":{},"_nodeVersion":"22.22.2","dependencies":{"opencc-js":"^1.4.1","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.0","@types/node":"^20.0.0"},"_npmOperationalInternal":{"tmp":"tmp/mcp-server-author-style_1.3.2_1785686938596_0.2451465149193699","host":"s3://npm-registry-packages-npm-production"}},"1.3.3":{"name":"@dhcckb/mcp-server-author-style","version":"1.3.3","description":"数字人文 MCP Server — 中国古代作家文风分析，v1.3.3 修复致命 Bug：索引空占位/tang&song旧格式ID/get_poem+search_poems三源正常","main":"dist/index.js","bin":{"mcp-server-author-style":"dist/index.js"},"type":"module","scripts":{"build":"npm run build-index && tsc","start":"node dist/index.js","build-index":"npx tsx scripts/build-all-indexes.ts"},"keywords":["mcp","model-context-protocol","chinese-literature","stylometry","digital-humanities","poetry","tang-poetry","song-ci","宋词","按需下载","索引驱动","daizhige","traditional-chinese","simplified-chinese","author-comparison","chinese-poetry","stylometric-analysis"],"repository":{"type":"git","url":"git+https://github.com/dhcckb/mcp-server-author-style.git"},"license":"MIT","engines":{"node":">=18"},"dependencies":{"@modelcontextprotocol/sdk":"^1.0.0","opencc-js":"^1.4.1"},"devDependencies":{"@types/node":"^20.0.0","typescript":"^5.3.0"},"mcp":{"tools":[{"name":"analyze_author_style","description":"单作者风格画像：接收中国古代作家姓名，从本地 tang/song/daizhige 三源检索全部作品文本，计算虚词频率、平均句长、对偶句占比、词汇丰富度（TTR_word + TTR_char）、用典密度五项量化指标，输出结构化 Markdown 风格画像报告。不再包含分期/periodRanges，不再连接外部在线数据源（quantangshi/quansongshi/ctext）。支持别名映射。","inputSchema":{"type":"object","properties":{"authorName":{"type":"string","description":"中国古代作家姓名（必填），如 苏轼、李白、杜甫"},"aliases":{"type":"array","items":{"type":"string"},"description":"用户提供的额外别名列表，与内置别名词典合并使用"},"sources":{"type":"array","items":{"type":"string","enum":["tang","song","daizhige"]},"description":"指定启用的数据源，默认全部三个"},"maxWorksPerSource":{"type":"number","description":"单源采样上限，默认 500","default":500}},"required":["authorName"]}},{"name":"compare_authors","description":"多作者横向对比：接受 2 位及以上中国古代作家姓名，从本地 tang/song/daizhige 三源检索各自全部作品文本，计算虚词频率、平均句长、对偶句占比、词汇丰富度（TTR_word + TTR_char）、用典密度五项量化指标，输出多作者横向对比 Markdown 报告 + 结构化 JSON（含归一化指标，可直接用于前端雷达图/柱状图渲染）。支持别名映射、指定本地源、指定对比指标子集。","inputSchema":{"type":"object","properties":{"authors":{"type":"array","items":{"type":"string"},"minItems":2,"description":"中国古代作家姓名列表（必填，至少 2 人），如 [\"李白\", \"杜甫\"]"},"aliases":{"type":"array","items":{"type":"string"},"description":"用户提供的额外别名列表"},"sources":{"type":"array","items":{"type":"string","enum":["tang","song","daizhige"]},"description":"指定启用的数据源，默认全部三个"},"metrics":{"type":"array","items":{"type":"string","enum":["functionWordRate","avgSentenceLength","parallelismRatio","ttrWord","ttrChar","allusionDensity"]},"description":"指定对比的指标子集，默认全部五项"},"outputFormat":{"type":"string","enum":["markdown","json","both"],"default":"both","description":"输出格式：markdown（报告）、json（结构化数据）、both（同时返回）"},"maxWorksPerSource":{"type":"number","description":"单源采样上限，默认 500","default":500}},"required":["authors"]}},{"name":"lookup_alias","description":"辅助工具：查询作者已知别名映射，返回内置词典中匹配的别名列表。","inputSchema":{"type":"object","properties":{"authorName":{"type":"string","description":"要查询的作者姓名"}},"required":["authorName"]}},{"name":"list_sources","description":"辅助工具：列出当前可用的数据源及其状态（可达/不可达），用于调试和前置检查。","inputSchema":{"type":"object","properties":{}}},{"name":"search_poems","description":"跨源检索诗歌。在 tang/song/daizhige 三个本地数据源中按关键词（作者名、诗题、诗句内容）搜索，返回合并去重后的结果列表。支持指定源过滤，默认三个源并发查询。服务端对所有结果统一执行繁转简（t2s）后输出，同时保留 rawText 原文字段。内部对搜索关键词执行 t2s 确保简繁输入一致性。tang（v1.3.2）和 song 均优先作者索引匹配，未命中时 console.warn 后回退全量下载。","inputSchema":{"type":"object","properties":{"keyword":{"type":"string","description":"搜索关键词（作者/题名/诗句片段）"},"sources":{"type":"array","items":{"type":"string","enum":["tang","song","daizhige"]},"description":"指定数据源，默认全部三个"},"maxResults":{"type":"integer","default":20,"description":"最大返回条数"}},"required":["keyword"]}},{"name":"get_poem","description":"按 ID 获取单首诗歌全文。ID 格式为 {source}:{poemId}，例如 tang:10001（全唐诗范围为 10001-10068）、song:20001（宋词范围为 20001-20065）、daizhige:30001（殆知阁范围为 30001-30054）。返回内容经繁转简统一处理，附带作者、朝代、来源元信息。outputFormat 选项：simplified（默认简体）、traditional（保留原文繁体）、both（同时返回两版，包含 traditional 字段）。tang（v1.3.2）走按需分片下载，不触发全量批量下载。","inputSchema":{"type":"object","properties":{"id":{"type":"string","description":"诗歌 ID，格式 source:poemId"},"outputFormat":{"type":"string","enum":["simplified","traditional","both"],"default":"simplified","description":"输出字形偏好：simplified(默认简体)、traditional(保留原文繁体)、both(同时返回两版)"}},"required":["id"]}},{"name":"list_authors","description":"列出某数据源下的作者列表，支持分页。返回作者姓名、朝代、作品数量。姓名统一繁转简（全链路 alwaysSimplified 处理，不依赖启发式检测）。tang（v1.3.2）和 song 均从本地预置索引返回作者信息（不触发远程数据下载），daizhige 走本地 JSON。","inputSchema":{"type":"object","properties":{"source":{"type":"string","enum":["tang","song","daizhige"],"description":"数据源"},"page":{"type":"integer","default":1},"pageSize":{"type":"integer","default":50}},"required":["source"]}},{"name":"get_author_works","description":"获取指定作者的全部作品分页列表。先以简体名匹配作者（输入和存储双向 t2s 后精确匹配，简/繁输入均可命中），再返回该作者作品（统一繁转简）。tang（v1.3.2）和 song（v1.3.1）均索引驱动按需下载对应分片后过滤（仅下载 1-5 个分片），daizhige 走本地 JSON。","inputSchema":{"type":"object","properties":{"author":{"type":"string","description":"作者姓名（支持繁/简输入，内部双向 t2s 后匹配）"},"source":{"type":"string","enum":["tang","song","daizhige"],"description":"限定数据源"},"page":{"type":"integer","default":1},"pageSize":{"type":"integer","default":20}},"required":["author","source"]}},{"name":"health_check","description":"检查三个数据源的连通性与数据可用状态。检测 chinese-poetry GitHub raw CDN 的连通性（tang 全唐诗和 song 宋词），报告各源的 HTTP 状态和作品总数（tang 和 song 均从预置索引获取作者数）。返回各源的连通状态（ok/unreachable/degraded）、数据条数、最后同步时间。用于运维监控。","inputSchema":{"type":"object","properties":{}}}]},"_id":"@dhcckb/mcp-server-author-style@1.3.3","types":"./dist/index.d.ts","bugs":{"url":"https://github.com/dhcckb/mcp-server-author-style/issues"},"homepage":"https://github.com/dhcckb/mcp-server-author-style#readme","_integrity":"sha512-k54kBnDicPTdpW4Mm8lhNMUgOvipsfFl4q467WjRy+nDNhUKpbRLoCv1daR/dUJlJ0tB38yISdFbz0tIQIbI9A==","_resolved":"/tmp/dhp-agent-npm-bIBhkh/package.tgz","_from":"file:/tmp/dhp-agent-npm-bIBhkh/package.tgz","_nodeVersion":"22.22.2","_npmVersion":"10.9.1","dist":{"integrity":"sha512-k54kBnDicPTdpW4Mm8lhNMUgOvipsfFl4q467WjRy+nDNhUKpbRLoCv1daR/dUJlJ0tB38yISdFbz0tIQIbI9A==","shasum":"2b2fc4ef505dbd37a1b8d802e19b72b9709341a3","tarball":"https://registry.npmjs.org/@dhcckb/mcp-server-author-style/-/mcp-server-author-style-1.3.3.tgz","fileCount":78,"unpackedSize":1805295,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDGAmPmxU2zq72wqm/VDB2Ei/JdBto0Qr7FPwDOq6XZWwIgUxWoG35YEZWVBIGSJwKIIyGQN4gyYZ50lX79FTT8GGc="}]},"_npmUser":{"name":"thudh","email":"tangchen@mail.tsinghua.edu.cn"},"directories":{},"maintainers":[{"name":"thudh","email":"tangchen@mail.tsinghua.edu.cn"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/mcp-server-author-style_1.3.3_1785726904213_0.3289927060360982"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-29T14:24:24.405Z","modified":"2026-08-03T03:15:04.578Z","1.0.0":"2026-07-29T14:24:24.717Z","1.1.0":"2026-07-30T15:17:59.668Z","1.1.1":"2026-08-02T03:01:25.848Z","1.2.0":"2026-08-02T12:04:41.941Z","1.3.0":"2026-08-02T13:36:10.242Z","1.3.1":"2026-08-02T15:40:16.769Z","1.3.2":"2026-08-02T16:08:58.814Z","1.3.3":"2026-08-03T03:15:04.392Z"},"bugs":{"url":"https://github.com/dhcckb/mcp-server-author-style/issues"},"license":"MIT","homepage":"https://github.com/dhcckb/mcp-server-author-style#readme","keywords":["mcp","model-context-protocol","chinese-literature","stylometry","digital-humanities","poetry","tang-poetry","song-ci","宋词","按需下载","索引驱动","daizhige","traditional-chinese","simplified-chinese","author-comparison","chinese-poetry","stylometric-analysis"],"repository":{"type":"git","url":"git+https://github.com/dhcckb/mcp-server-author-style.git"},"description":"数字人文 MCP Server — 中国古代作家文风分析，v1.3.3 修复致命 Bug：索引空占位/tang&song旧格式ID/get_poem+search_poems三源正常","maintainers":[{"name":"thudh","email":"tangchen@mail.tsinghua.edu.cn"}],"readme":"# 中国古代作家文风演变分析 MCP Server\n\n从全唐诗、全宋诗、殆知阁、ctext.org 四个公开数据源检索中国古代作家现存作品文本，按创作年代自动分期（早/中/晚），计算五项量化文体特征指标，输出结构化 Markdown 文风演变分析报告。\n\n## 功能\n\n- **多源检索**：从全唐诗、全宋诗、殆知阁、ctext.org 四个数据源并行检索作品\n- **自动分期**：基于作者生卒年三等分原则划分早/中/晚三期\n- **量化指标**：虚词频率、平均句长、对偶句占比、词汇丰富度（TTR_word + TTR_char）、用典密度\n- **别名映射**：内置 80+ 作者别名，支持用户扩展\n- **容错处理**：单源超时/不可用时静默跳过，单源 > 500 篇自动采样\n- **报告输出**：结构化 Markdown 报告，含指标对比表与演变趋势分析\n\n## 安装\n\n```bash\nnpm install -g @dhcckb/mcp-server-author-style\n```\n\n## 使用\n\n### 作为 MCP Server 运行\n\n```bash\nnpx -y @dhcckb/mcp-server-author-style\n```\n\n### MCP 工具\n\n| 工具名 | 说明 |\n|--------|------|\n| `analyze_author_style` | 主分析工具：检索作品、分期、计算指标、生成报告 |\n| `lookup_alias` | 查询作者别名映射 |\n| `list_sources` | 列出数据源可达状态 |\n\n### 示例\n\n```json\n{\n  \"tool\": \"analyze_author_style\",\n  \"arguments\": {\n    \"authorName\": \"苏轼\",\n    \"aliases\": [\"东坡居士\"],\n    \"sources\": [\"quansongshi\", \"ctext\"]\n  }\n}\n```\n\n## 数据源\n\n| 数据源 | 说明 |\n|--------|------|\n| 全唐诗 | 唐代诗歌总集 |\n| 全宋诗 | 宋代诗歌总集 |\n| 殆知阁 | 古代文献数据库 |\n| ctext.org | Chinese Text Project API |\n\n## 系统要求\n\n- Node.js ≥ 18\n- 网络连接（用于访问 ctext.org API 和 chinese-poetry 数据集）\n\n## 许可证\n\nMIT\n","readmeFilename":"README.md"}