使用说明
CivNode MCP服务器
MCP服务器 CivNode 的 --人工智能驱动的创意写作平台,每个人都可以随机显示一页(纪念碑)。没有算法,没有喜欢,没有追随者。
263工具 用于写作、世界构建(人物、地点、生物、情节、家谱)、实体探索、书籍、收藏、展示、研究、市场、图书馆、论坛、比赛、协作、文章评论、公民室、文件管理和平台管理。
快速开始
npx @civnode/mcp
无需安装。服务器通过运行 npx 并使用stdio进行通信 模型上下文协议.
配置
克劳德桌面版
添加 ~/.config/claude/claude_desktop_config.json:
{
"mcpServers": {
"civnode": {
"command": "npx",
"args": ["-y", "@civnode/mcp"],
"env": {
"CIVNODE_SESSION_TOKEN": "your-session-token"
}
}
}
}
克劳德代码
添加 .claude/settings.json 或 ~/.claude/settings.json:
{
"mcpServers": {
"civnode": {
"command": "npx",
"args": ["-y", "@civnode/mcp"],
"env": {
"CIVNODE_SESSION_TOKEN": "your-session-token"
}
}
}
}
环境变量
| 变量 | 必填 | 描述 |
|---|---|---|
CIVNODE_SESSION_TOKEN |
对于经过身份验证的工具 | 您的CivNode会话令牌 |
CIVNODE_API_URL |
没有 | API基本URL(默认值: https://civnode.com) |
认证
工具分为三类:
- 公共 --不需要令牌。浏览纪念碑,阅读作品,搜索用户。
- 已验证 --需要
CIVNODE_SESSION_TOKEN.发布、发送消息、管理您的目录。 - 管理员 --需要具有管理员角色的令牌。系统管理、审核、机器人模拟。这些工具仅在配置令牌时出现。
要获取会话令牌,请登录CivNode并转到“设置”→ API令牌。
工具参考
纪念碑
每个用户都有一个纪念碑——他们在平台上的单个页面,随机显示给访问者。
| 工具 | 验证 | 描述 |
|---|---|---|
get_random_monument |
否 | 随机获得一个纪念碑。可选择按情绪标签过滤。 |
get_monument |
否 | 按UUID读取特定纪念碑。 |
get_monument_by_alias |
否 | 通过别名读取用户的纪念碑。 |
publish_monument |
是 | 发布或更新您的纪念碑。接受标题、正文(Markdown)、来源、身份模式。 |
resonate |
是的 | 在纪念碑或作品上留下安静的欣赏(CivNode的点赞替代品)。 |
user_update_working_on |
是 | 设置或清除个人资料上显示的“当前正在处理”状态(最多100个字符,可选工作链接)。 |
信件
发送给纪念碑作者的匿名信件,以及用户之间的直接私人信件。
| 工具 | 验证 | 描述 |
|---|---|---|
send_letter |
是 | 给纪念碑作者发送一封匿名信(最多500字)。 |
get_public_letters |
否 | 获取用户纪念碑上公开显示的字母。 |
personal_letter_inbox |
是 | 收到你的私人信件收件箱。 |
personal_letter_sent |
是 | 收到您发送的私人信件。 |
send_personal_letter |
是 | 向其他用户发送一封直接的、非匿名的信件。 |
read_personal_letter |
是 | 阅读一封特定的私人信件(标记为已读)。 |
写作
创作、出版和管理创意写作——诗歌、短篇小说、散文、中篇小说等。
| 工具 | 验证 | 描述 |
|---|---|---|
browse_writing |
否 | 浏览已发布的作品。按文学形式或情绪过滤。 |
get_work |
否 | 按UUID读取特定作品。 |
search_writing |
否 | 在已发表的作品中进行全文搜索。 |
publish_work |
是 | 发布带有标题、内容(Markdown)、表单、语气标签和可见性的新作品。 |
list_my_works |
是 | 列出你自己的作品(草稿和已发表)。 |
update_work |
是 | 更新作品的内容、标题、情绪标签或可见性。 |
delete_work |
是 | 永久删除作品。 |
export_work |
是 | 导出作品内容。 |
get_series |
否 | 获取一个按阅读顺序排列所有作品的写作系列。 |
create_series |
是 | 创建新的写作系列。 |
list_my_series |
是 | 列出你的写作系列。 |
add_work_to_series |
是 | 将作品添加到系列中。 |
角色
通过人工智能生成、肖像和市场发布进行全面的角色管理。
| 工具 | 验证 | 描述 |
|---|---|---|
list_characters |
是 | 列出您的角色。 |
get_character |
是 | 获取角色的完整个人资料。 |
create_character |
是 | 创建一个字符(只需要名称,稍后填写其余部分或使用AI)。 |
update_character |
是 | 更新字符字段(只传递要更改的字段)。 |
delete_character |
是 | 永久删除字符。 |
ai_generate_character |
是 | 使用AI生成一个完整的角色。接受角色、流派、设置提示。 |
character_portrait_generate |
是 | 生成AI肖像。需要图像提供程序。 |
character_suggestions |
是 | 获取特定领域的人工智能建议(外观、个性、背景故事等)。 |
character_publish |
是 | 发布到市场。 |
character_unpublish |
是 | 从市场上删除。 |
character_relationships |
是 | 获取角色的所有关系。 |
entity_explorer_chat_character |
是 | 通过实体资源管理器访问角色。聊天角色,以你的故事数据为基础。需要BYOK AI提供商。 |
位置
世界建筑地点,包括区域、蓝图和人工智能发电。
| 工具 | 验证 | 描述 |
|---|---|---|
list_locations |
是 | 列出您的位置。 |
get_location |
是 | 获取完整的位置详细信息。 |
create_location |
是 | 创建位置(需要名称)。领域:描述、氛围、感官细节、居民、秘密等。 |
update_location |
是 | 更新位置字段。 |
delete_location |
是 | 永久删除位置。 |
location_ai_fill |
是 | AI根据名称和现有字段填写缺失的详细信息。 |
location_ai_image |
是 | 生成AI图像。需要图像提供程序。 |
location_publish |
是 | 发布到市场。 |
location_unpublish |
是 | 从市场上删除。 |
get_location_blueprint |
是 | 获取视觉蓝图/地图。 |
entity_explorer_chat_location |
是 | 通过实体资源管理器浏览位置。分析变化的连锁反应。需要BYOK AI提供商。 |
生物
拥有全面人工智能支持的生物和幻想生物。
| 工具 | 验证 | 描述 |
|---|---|---|
list_creatures |
是 | 列出你的生物。 |
get_creature |
是 | 获取完整的生物资料。 |
create_creature |
是 | 创建一个生物(需要名称和物种类型)。 |
update_creature |
是 | 更新生物字段。 |
delete_creature |
是 | 永久删除一个生物。 |
ai_generate_creature |
是 | 使用AI生成一个生物。接受species_type、habitat_type、era。 |
creature_ai_image |
是 | 生成AI图像。 |
creature_portrait_generate |
是 | 生成AI肖像。 |
creature_publish |
是 | 发布到市场。 |
creature_unpublish |
是 | 从市场上删除。 |
creature_suggestions |
是 | 获取某个领域的人工智能建议。 |
entity_explorer_chat_creature |
是 | 通过实体浏览器采访一个生物。聊天角色,以你的故事数据为基础。需要BYOK AI提供商。 |
情节
结构化的情节大纲,包括动作、场景、节拍和人工智能生成。
| 工具 | 验证 | 描述 |
|---|---|---|
list_plots |
是 | 列出你的情节。 |
get_plot |
是 | 获得完整的情节,包括动作、场景和节拍。 |
create_plot |
是 | 创建绘图(需要标题)。领域:流派、基调、中心冲突等。 |
update_plot |
是 | 更新绘图字段。 |
delete_plot |
是 | 永久删除绘图。 |
plot_add_act |
是 | 添加一个行为(标题、摘要、目的、注释)。 |
plot_ai_acts |
是 | 使用AI生成行为 |
plot_add_scene |
是 | 为表演添加场景。 |
update_plot_scene |
是 | 更新场景的文本字段(标题、摘要、目的、样式提示、pov_character、注释)、位置绑定(region_id、area_id、spot_id--pass null 清除),或通过传递在同一情节中的行为之间移动它 act_id (可选配 sort_order 将其纳入新法案)。 |
plot_ai_scenes |
是 | 使用AI为某个动作生成场景 |
plot_ai_image |
是 | 为绘图生成AI图像。 |
plot_publish |
是 | 发布到市场。 |
plot_unpublish |
是 | 从市场上删除。 |
entity_explorer_chat_plot |
是 | 通过实体资源管理器浏览绘图。分析分支可能性和张力点。需要BYOK AI提供商。 |
绘图设计师(书本级)
专用绘图设计器屏幕的工具 /books/{bookId}/plot.
| 工具 | 验证 | 描述 |
|---|---|---|
list_plot_templates |
否 | 列出可用的情节结构模板(三幕、英雄之旅等)。 |
get_plot_template |
是 | 获取一个包含完整节拍细节的单一绘图模板(动作→ 节拍→ 名称+提示)。 |
get_book_plot |
是 | 将情节链接到一本包含所有动作、场景和节拍的书上。 |
create_book_plot_from_template |
是 | 从模板创建绘图并链接到书籍。 |
get_plot_synopsis |
是的 | 阅读一本书情节的缓存AI概要。不会触发再生。退货 {synopsis, hash, generated_at} 如果没有生成,则为空字段。 |
regenerate_plot_synopsis |
是 | 人工智能概要的强制再生。缓存感知:如果绘图内容没有漂移,则返回缓存值。需要BYOK。 |
delete_book_plot |
是 | 删除链接到书籍的绘图。 |
create_plot_beat |
是 | 在场景下创建节拍。排序顺序自动分配。 |
update_plot_beat |
是 | 更新绘图节拍上的字段。只传递要更改的字段。 |
delete_plot_beat |
是 | 删除UUID标记的图。 |
reorder_plot_beats |
是 | 通过{id,sort_order}列表重新排序场景中的节拍。 |
get_beat_suggestions |
是 | 获取节拍的故事证据建议(分析、文本统计、语义)。 |
auto_map_plot |
是 | 使用分析+AI将故事内容批量映射到所有空节拍 |
家谱
视觉家谱将角色和生物与关系跟踪联系起来。
| 工具 | 验证 | 描述 |
|---|---|---|
list_trees |
是 | 列出你的家谱。 |
get_tree_members |
是 | 获取树中的所有成员。 |
create_tree |
是 | 创建家谱(需要姓名)。 |
update_tree |
是 | 更新树名称或描述。 |
delete_tree |
是 | 永久删除树。 |
tree_add_member |
是 | 将角色或生物添加到树上。 |
tree_generate |
是 | 使用AI生成家庭成员 |
tree_publish |
是 | 发布到市场。 |
tree_unpublish |
是 | 从市场上删除。 |
书籍
完整的图书管理——创建有章节的图书,链接目录实体,导出。
| 工具 | 验证 | 描述 |
|---|---|---|
list_books |
是 | 列出你的书。 |
list_my_stories |
是 | 列出有情节的用户书籍。子集 list_books。适用于“我在写什么故事?” |
search_my_stories |
是 | 对您的故事进行全文搜索,包括角色名称。返回按相关性排序的书籍。 |
get_book |
是 | 获取书籍详细信息和链接实体。 |
create_book |
是 | 创建一本书(需要标题和book_type)。类型:小说、诗集、散文集、剧本。对于剧本,也传递screenplay_format。 |
update_book |
是 | 更新图书元数据(标题、副标题、简介、流派等)。集 published: true/false 在市场上出版或取消出版一本书。剧本支持screenplay_format、screenplay_font、screenplay_title_page。 |
delete_book |
是 | 删除一本书和所有章节。 |
list_chapters |
是 | 列出书中的章节。 |
get_chapter |
是 | 获取章节的内容和元数据。 |
create_chapter |
是 | 创建一个章节(需要标题和chapter_type)。类型:章、序言、结语、间奏、附录。可选的 plot_scene_id 将新章节链接到您拥有的情节场景(如果场景不在您的某个情节上,则会自动跳过)——为“情节画布”抽屉的“从此场景创建章节”按钮供电。 |
update_chapter |
是 | 更新章节内容或元数据。 |
delete_chapter |
是 | 删除一章。 |
reorder_chapters |
是 | 重新排序章节(按所需顺序传递章节ID)。 |
book_link_entity |
是 | 将简编实体链接到一本书(人物、生物、地点、情节、树木)。 |
book_unlink_entity |
是 | 从书本中删除链接实体。 |
export_book |
是 | 以各种格式(json、markdown、html、epub、pdf、fdx、founder)导出书籍内容。 |
import_fountain |
是 | 将《喷泉》剧本作为新书导入。 |
book_entities |
是 | 在一次调用中获取链接到一本书的所有实体类型(角色、生物、位置、情节、树木)。 |
compendium_unassigned |
是 | 获取未链接到任何书籍或作品的实体 |
get_public_book |
否 | 获取已出版书籍的公共信息。 |
集合
将书籍和作品整理成有序的收藏。
| 工具 | 验证 | 描述 |
|---|---|---|
create_collection |
是 | 创建新集合(需要标题,可选描述)。 |
list_collections |
是 | 列出您的所有收藏。 |
get_collection |
是 | 获取一个包含订购物品(书籍和作品)的收藏。 |
update_collection |
是 | 更新集合的标题或描述。 |
delete_collection |
是 | 删除集合(项目未链接,未删除)。 |
collection_add_item |
是 | 将书籍或作品添加到收藏中。 |
collection_remove_item |
是 | 从集合中删除项目。 |
collection_reorder |
是 | 通过传递已排序的项目ID来重新排序集合中的项目。 |
展示
你的展示是你的公共画廊——你选择与访客分享的书籍、作品和藏品。
| 工具 | 验证 | 描述 |
|---|---|---|
showcase_list |
否 | 获取用户的公开展示项目。支持搜索、类型筛选和分页。 |
showcase_count |
否 | 获取用户展示中的项目数。 |
showcase_add |
是 | 将书籍、作品或收藏添加到您的展示柜中。只提供一个ID |
showcase_mine |
是 | 列出您自己的展示项目。 |
showcase_update_note |
是 | 更新展示项目的作者注释(最多280个字符)。 |
showcase_remove |
是 | 从您的展示柜中撤回一件物品。它保留在我的写作中,但成为私人的。 |
showcase_reorder |
是 | 通过按所需顺序提供项目ID来设置显示顺序。 |
画布
小组内的协作绘图和头脑风暴板。
| 工具 | 验证 | 描述 |
|---|---|---|
list_canvases |
是 | 列出您的画布。 |
get_canvas |
是 | 获取一个包含节点和元数据的画布。 |
create_canvas |
是 | 在组中创建画布。 |
update_canvas |
是 | 更新画布名称。 |
delete_canvas |
是 | 永久删除画布。 |
文章评论
基于作品和纪念碑中特定文本段落的上下文反馈。
| 工具 | 验证 | 描述 |
|---|---|---|
passage_comments_inbox |
是的 | 获取他人对你作品的评论。 |
passage_comments_mine |
是的 | 获取你对其他作品的文章评论。 |
passage_comments_create |
是 | 创建锚定到文本选择的段落注释。 |
passage_comments_list |
是 | 列出特定作品或纪念碑的段落注释。 |
passage_comments_reply |
是 | 回复文章评论。 |
passage_comments_delete |
是 | 删除段落注释。 |
passage_comments_resonate |
是的 | 在文章评论中留下安静的欣赏。 |
passage_comments_escalate |
是 | 将文章评论升级以进行审核。 |
passage_comments_mark_read |
是 | 将文章注释标记为已读。 |
passage_comments_dismiss |
是 | 从收件箱中删除文章评论。 |
研究与观测
语义搜索、分层章节分析、写作见解和关于你工作的人工智能问题。
| 工具 | 验证 | 描述 |
|---|---|---|
research_search |
是 | 跨研究笔记和分析内容进行语义搜索。 |
research_analyze_chapter |
是 | 触发分层章节分析。核心(第1层):角色、主题、弧线、互动。深层(第2层):声音、预示、工艺指标。需要AI提供商。 |
research_intelligence |
是 | 获取聚合情报:角色外观、主题、时间线。 |
research_character_graph |
是 | 获取角色的关系图和弧线 |
observatory_insights |
是 | 获取写作见解和模式。 |
observatory_stats |
是 | 获取写作统计数据:字数、连载、生产力。 |
observatory_moments |
是 | 获得值得注意的时刻:突破、里程碑、模式。 |
observatory_ask |
是的 | 向AI询问你的写作模式和故事结构。 |
observatory_summary |
是的 | 获取你写作旅程的人工智能摘要。 |
book_character_evolution |
是 | 获取一本书的角色进化数据——情绪状态、驱动力、章节时间线和幽灵角色。 |
市场
浏览和分叉社区发布的角色、生物、地点、情节、家庭和书籍。
| 工具 | 验证 | 描述 |
|---|---|---|
marketplace_browse |
否 | 按实体类型(角色、生物、地点、情节、家庭、书籍)浏览市场。 |
marketplace_get |
否 | 获取市场项目的详细视图。 |
marketplace_fork |
是 | 将市场项目分叉(复制)到您的目录中。 |
marketplace_book_showcase |
否 | 获取已出版书籍的完整展示,包括作者信息和所有实体。 |
marketplace_fork_book |
是 | 将已出版的市场书籍及其所有实体放入您的收藏中。 |
图书馆
精心策划的展示书籍,展示了CivNode的世界构建能力。
| 工具 | 验证 | 描述 |
|---|---|---|
library_books |
否 | 列出CivNode库中的4本展示书籍。 |
library_fork_book |
是 | 将图书馆书籍及其所有实体放入您的收藏中。 |
网站论坛
CivNode社区论坛 /forum,对所有用户开放。
| 工具 | 验证 | 描述 |
|---|---|---|
forum_site_categories |
否 | 列出网站论坛中的六个类别(公告、写作技巧、写作小组、竞赛、反馈和想法、介绍)。 |
forum_site_threads |
否 | 列出全站论坛中的帖子。接受可选 category_id 按类别筛选 cursor 用于分页。 |
forum_site_create_thread |
是 | 在全站论坛中创建一个新帖子。需要 title 和 body_markdown;可选提供 category_id. |
个人论坛
CivNode上的每个用户在其个人资料中都有自己的个人论坛。
| 工具 | 验证 | 描述 |
|---|---|---|
forum_list_threads |
否 | 列出用户论坛中的帖子。 |
forum_read_thread |
否 | 阅读包含所有帖子的帖子。 |
forum_search |
否 | 按关键字搜索线程。 |
forum_post |
是 | 创建新线程或回复。为回复提供thread_id,或为新线程提供forum_alias+title。 |
竞赛
社区写作比赛,包括报名、提交和投票阶段。
| 工具 | 验证 | 描述 |
|---|---|---|
list_competitions |
否 | 列出比赛。按阶段筛选:注册、写作、投票、完成。 |
get_competition |
是 | 获取比赛详情。 |
create_competition |
是 | 创建比赛(需要支持者身份)。 |
competition_signup |
是 | 报名参加比赛。 |
competition_submit_entry |
是 | 提交您的参赛作品(仅限于写作阶段)。 |
competition_vote |
是 | 投票选出前3名(仅投票阶段)。 |
competition_entries |
否 | 获得盲投(投票/完成阶段)。 |
competition_results |
否 | 获取排名结果(已完成阶段)。 |
协作
实时合著和草稿分享。
| 工具 | 验证 | 描述 |
|---|---|---|
create_share_link |
是 | 为作品生成可共享链接 |
list_share_links |
是 | 列出作品的共享链接 |
get_shared_work |
否 | 按标记读取共享作品。 |
delete_share_link |
是 | 删除共享链接。 |
list_collaborators |
是 | 列出作品的合作者 |
invite_collaborator |
是 | 邀请用户作为合著者或编辑。 |
accept_collaboration |
是 | 接受协作邀请。 |
remove_collaborator |
是 | 删除合作者。 |
小组、主题和社区
| 工具 | 验证 | 描述 |
|---|---|---|
list_groups |
是 | 列出您所属的组 |
create_group |
是 | 创建一个新的写作组。类型:批评、问责、研讨会、合著、冲刺。来电者成为所有者。 |
get_group |
是 | 获取组详细信息。 |
group_update |
是 | 更新组的名称和描述(仅限所有者/领导者)。 |
delete_group |
是 | 永久删除组(仅限所有者)。删除所有循环、提交和房间。 |
group_settings_get |
是 | 获取组的功能设置(呼叫者必须是成员)。返回submissions_enabled、reciprocity_mode、cycless_enabled等。 |
group_settings_update |
是 | 更新组的功能设置(仅限所有者/领导者)。传递以下各项的任何子集:submissions_enabled、reciprocity_mode、silent_period_enabled、cycles_ennabled、critic_templates-enabled、goals-enabled、sprints-enabled,challenges_enabled,project_tracking_enabled,directory_listed,member_cap。 |
group_add_member |
是 | 按user_id将用户添加到组中(仅限所有者/领导者)。 |
group_remove_member |
是 | 从组中删除成员。所有者/领导者可以罢免任何人;成员可以自行删除。 |
group_list_members |
是 | 列出所有具有角色的组成员(所有者、领导者、主持人、成员)。 |
group_promote_member |
是 | 将成员提升或降级为新角色(领导者、主持人、成员)。所有者可以设置任何角色;领导者只能晋升为主持人。 |
group_transfer_ownership |
是 | 将所有权转移给另一个成员(仅限所有者)。前老板成为领导者。 |
group_warn_member |
是 | 向成员发出警告,并说明必要的原因。返回警告和罢工编号。主持人、领导者和所有者可以发出警告。 |
group_list_warnings |
是 | 列出向特定成员发出的警告。管理员、领导、所有者或成员自己都可以访问。 |
group_ban_member |
是 | 禁止组中的成员(仅限组长和所有者)。需要一个理由。成员立即被删除。 |
group_unban_member |
是 | 删除对用户的禁令(仅限所有者)。 |
group_list_bans |
是 | 列出所有当前被禁止的成员(仅限所有者和领导者)。 |
group_report |
是 | 报告违反规则的组或特定成员。任何小组成员都可以报告。 |
list_topics |
否 | 列出主题社区。 |
join_topic |
是 | 加入一个主题。 |
leave_topic |
是 | 留下一个话题。 |
get_encounter |
是 | 获取今天的邂逅(每日匿名配对)。 |
get_presence |
否 | 查看有多少人在线(环境计数,无身份)。 |
消息传递
| 工具 | 验证 | 描述 |
|---|---|---|
send_message |
是 | 在对话中发送消息。 |
list_conversations |
是 | 列出您的对话。 |
read_conversation |
是 | 阅读对话中的消息。 |
平台
| 工具 | 验证 | 描述 |
|---|---|---|
get_profile |
否 | 获取用户的公开个人资料。 |
update_tagline |
是 | 更新您的个人资料标语(最多200个字符)。 |
get_social_links |
否 | 获取用户的社交链接。 |
update_social_links |
是 | 更新您的社交链接(替换所有链接)。 |
update_avatar_source |
是 | 设置头像来源(goavatar、gravatar、自定义)。 |
search_users |
否 | 按别名或名称搜索用户。 |
search_content |
否 | 搜索所有公共内容。 |
list_notifications |
是 | 列出您的通知。 |
mark_notifications_read |
是 | 将所有通知标记为已读。 |
list_bookmarks |
是 | 列出您的书签。 |
toggle_bookmark |
是 | 在内容上切换书签。 |
list_highlights |
是 | 列出您的文本突出显示。 |
create_highlight |
是 | 突出显示纪念碑或作品上的文字 |
delete_highlight |
是 | 删除突出显示。 |
get_notepad |
是 | 拿你的私人记事本。 |
update_notepad |
是 | 更新您的记事本内容。 |
get_supporter_status |
是 | 检查支持者状态。 |
supporter_checkout |
是 | 为支持者开始Stripe结账(每月5美元)。 |
supporter_cancel |
是 | 取消支持者订阅。 |
purchase_checkout |
是 | 创建Stripe结账以购买书籍或作品 |
check_purchase |
是 | 检查当前用户是否购买了特定商品。 |
list_my_purchases |
是 | 按当前用户列出所有购买。 |
get_author_balance |
是 | 获取作者收入余额和终身总计。 |
list_author_sales |
是 | 列出当前用户作为作者的所有销售额。 |
ai_usage_log_local |
是 | 从浏览器记录本地AI使用情况(Ollama、ComfyUI)。 |
link_preview |
否 | 获取内部CivNode URL的丰富预览。返回已发布内容的标题、作者、图像和元数据。 |
演讲稿撰写
确定性语音度量和作家工作的章节修订历史 关于演讲。每个指标都是通过LanguageTool加上基于规则的Go计算得出的 包——这些工具中任何地方都没有LLM调用。
| 工具 | 验证 | 描述 |
|---|---|---|
speech_analysis |
是 | 返回一章的语音指标:交付时间、单词/音节/句子计数、LIX、Flesch-Kincaid、呼吸测试违规、填充词、被动语态、修辞手法、每句话的计时。按内容哈希缓存结果。 |
convert_to_speech |
是 | 将书的类型翻转为 speech,在每一章上启用speech_mode,并触发第一次分析过程。可逆。 |
convert_from_speech |
是 | 将演讲本还原为 story (或另一种目标类型),每一章都有清晰的演讲模式。 |
list_revisions |
是 | 列出章节的修订历史,最新的在前。 |
fetch_revision |
是 | 获取单个修订的全文(ProseMirror JSON+纯文本)。 |
restore_revision |
是 | 将章节还原到以前的修订版。先快照当前身体,这样就不会丢失任何东西。 |
list_speaker_notes |
是 | 列出章节中锚定的演讲者笔记,按锚定位置排序。 |
create_speaker_note |
是 | 创建锚定到章节文本范围的演讲者笔记。 |
示例--对一章进行完整的语音分析并打印交付时间:
mcp__civnode__speech_analysis({
chapter_id: "8f3a...",
audience_preset: "formal"
})
示例——将现有的故事书转换为演讲:
mcp__civnode__convert_to_speech({ book_id: "a1b2..." })
管理工具
管理工具需要具有管理员角色的会话令牌。它们仅在配置令牌时出现。
| 工具 | 说明 |
|---|---|
admin_health |
系统健康状况:应用程序状态、迁移版本、DB/Redis连接。 |
admin_stats |
全系统统计:用户、作品、纪念碑、论坛、审核。 |
admin_users |
列出所有用户的详细信息和状态。 |
admin_user_ban |
禁止用户。 |
admin_user_unban |
取消对用户的屏蔽。 |
admin_toggle_strategist |
切换用户的策略师角色(授予Civic Room访问权限)。 |
admin_moderation_queue |
查看标记的等待审核的内容。 |
admin_ai_providers |
列出已配置的AI文本提供程序。 |
admin_ai_provider_keys |
列出部分API密钥可见的AI提供程序。 |
admin_image_providers |
列出图像生成提供商。 |
admin_embedding_providers |
列出嵌入提供程序。 |
admin_ai_usage |
AI代币使用统计。 |
ai_usage_log |
详细的AI使用日志,包括过滤(日期范围、提供者、操作、本地/云、成功)和分页。 |
ai_usage_export |
使用相同的过滤器将AI使用数据导出为CSV。 |
ai_pricing_list |
列出AI定价规则(每种型号的代币和图像价格)。 |
ai_pricing_upsert |
为提供者+模型创建或更新AI定价规则。 |
ai_pricing_delete |
按ID删除AI定价规则 |
admin_test_ai_chat |
使用提示测试AI聊天管道。 |
admin_test_embedding |
测试预埋管道。 |
admin_test_ollama |
从服务器测试本地Ollama连接。 |
admin_backups |
列出数据库备份。 |
admin_trigger_backup |
触发立即备份。 |
admin_feedback |
列出用户反馈和错误报告。 |
admin_site_settings |
查看整个站点的设置。 |
admin_update_site_settings |
更新站点设置(注册、维护模式)。 |
admin_research_stats |
研究系统统计。 |
admin_botsim_state |
机器人模拟状态。 |
admin_botsim_bots |
列出模拟机器人。 |
admin_botsim_tick |
触发一个模拟滴答。 |
admin_images |
列出具有审核状态的AI生成图像。 |
admin_block_image |
阻止AI生成的图像。 |
admin_campaigns |
列出营销活动。 |
admin_ornaments |
列出纪念碑装饰品。 |
admin_captcha_stats |
验证码分析:挑战、解决率、国家细分。 |
admin_captcha_recent_failures |
最近IP和国家验证码失败。 |
admin_takedown |
从内容报告中执行删除操作(删除文件、记录事件、可选禁止哈希)。 |
文件管理器
用于检查文件存储的工具。需要会话令牌。
| 工具 | 验证 | 描述 |
|---|---|---|
list_drawers |
是 | 列出经过身份验证的用户拥有的所有抽屉。返回名称、种类(用户/书籍/工作/收藏/字符/画布)、文件计数和总大小(以字节为单位)。 |
file_stats |
是 | 获取存储配额摘要:quota_bytes、used_bytes、plan(免费/付费/宽限)、grace_until、upgrade_url和人类可读的“X MB of Y MB used”字符串 |
市民室(行政/策略师)
Civic Room是平台策略师和管理员管理社交媒体存在和协调的私人工作区。
| 工具 | 说明 |
|---|---|
civic_room_get_notes |
获取您的私人Civic Room笔记。 |
civic_room_save_notes |
保存您的私人Civic Room笔记。 |
civic_room_overview |
获取概述:最近的帖子、帖子、画布。 |
civic_room_threads |
列出公民话题。 |
civic_room_canvases |
列出公民画布。 |
civic_room_list_channels |
列出社交媒体渠道。 |
civic_room_create_channel |
创建社交媒体渠道。 |
civic_room_update_channel |
更新社交媒体频道。 |
civic_room_delete_channel |
删除社交媒体频道。 |
civic_room_list_posts |
列出社交媒体帖子。按状态和通道过滤。 |
civic_room_create_post |
创建针对多个渠道的社交媒体帖子。 |
civic_room_update_post |
更新草稿/排队帖子。 |
civic_room_delete_post |
删除草稿/排队的帖子。 |
civic_room_publish_post |
立即将帖子发布到其平台。 |
示例
创建剧本
create_book({
title: "The Last Lighthouse",
book_type: "screenplay",
screenplay_format: "feature_film"
})
将剧本导出为最终草稿(FDX)
export_book({
id: "book-uuid-here",
format: "fdx"
})
将剧本导出为喷泉
export_book({
id: "book-uuid-here",
format: "fountain"
})
导入喷泉剧本
import_fountain({
text: "Title: The Last Lighthouse\nCredit: Written by\nAuthor: Jane Doe\n\nINT. LIGHTHOUSE - NIGHT\n\nA lone KEEPER tends the light."
})
获取链接预览
link_preview({
url: "/books/abc-123/read"
})
浏览图书馆
library_books()
翻阅图书馆书籍
library_fork_book({
book_id: "book-uuid-here"
})
创建链接到情节场景的章节
create_chapter({
book_id: "book-uuid-here",
title: "The Crossing",
chapter_type: "chapter",
plot_scene_id: "scene-uuid-here"
})
在两幕之间移动情节场景
update_plot_scene({
plot_id: "plot-uuid-here",
scene_id: "scene-uuid-here",
act_id: "target-act-uuid",
sort_order: 2
})
编辑绘图场景的摘要
update_plot_scene({
plot_id: "plot-uuid-here",
scene_id: "scene-uuid-here",
summary: "Elena arrives at the lighthouse"
})
在场景下创建节拍
create_plot_beat({
plot_id: "plot-uuid-here",
scene_id: "scene-uuid-here",
title: "Elena spots the keeper's lantern",
description: "First glimpse of another soul on the island.",
beat_type: "reveal"
})
重新排序场景中的节拍
reorder_plot_beats({
plot_id: "plot-uuid-here",
scene_id: "scene-uuid-here",
items: [
{ id: "beat-uuid-a", sort_order: 1 },
{ id: "beat-uuid-b", sort_order: 2 },
{ id: "beat-uuid-c", sort_order: 3 }
]
})
本地开发
要在本地CivNode实例上运行:
CIVNODE_API_URL=http://localhost:9080 CIVNODE_SESSION_TOKEN=your-token npx @civnode/mcp
或者在MCP客户端配置中:
{
"mcpServers": {
"civnode-local": {
"command": "npx",
"args": ["-y", "@civnode/mcp"],
"env": {
"CIVNODE_API_URL": "http://localhost:9080",
"CIVNODE_SESSION_TOKEN": "your-local-token"
}
}
}
}
故障排除
“需要身份验证” --设置 CIVNODE_SESSION_TOKEN 环境变量。从设置中获取令牌→ CivNode上的API令牌。
“禁止” --您的令牌没有执行该操作的权限。管理工具需要管理员角色。
“超出费率限制” --请稍等,然后重试。CivNode速率限制每个用户调用API。
“API错误:404” --资源不存在或您没有访问权限。检查UUID。
管理工具未显示 --管理工具仅在以下情况下出现 CIVNODE_SESSION_TOKEN 已设置。它们还需要服务器端管理员角色。
API URL错误 --默认情况下,服务器连接到 https://civnode.com.Set CIVNODE_API_URL 为了地方发展。
贡献
添加新工具
- 将工具对象添加到
tools数组inindex.js(或管理工具的管理部分):
{
name: "tool_name",
description: "What it does. Mention auth requirement.",
inputSchema: {
type: "object",
properties: {
id: { type: "string", description: "Resource UUID" },
},
required: ["id"],
},
handler: (args) => fetchAPI(`/api/endpoint/${args.id}`),
},
-
使用现有的HTTP助手:
fetchAPI(GET),postAPI(POST),putAPI(PUT),patchAPI(补丁),deleteAPI(删除)。 -
更新标题注释中的工具计数
package.json. -
本地测试:
CIVNODE_API_URL=http://localhost:9080 node index.js -
凹凸版本
package.json并推送到main——CI自动发布到npm。
许可证
麻省理工学院