VOOZH about

URL: https://glama.ai/mcp/servers/Erodenn/markscribe?locale=zh-CN

⇱ MarkScribe by Erodenn | Glama


MarkScribe

用于 Model Context Protocol 的具备规范意识的 Markdown MCP 服务器。MarkScribe 让 AI 代理能够读取、写入、搜索和验证 Markdown 文件,并通过用户定义的 YAML 模式强制执行规范。适用于任何 Markdown 目录:Obsidian 库、Foam 工作区、数字花园、文档仓库等。

功能特性

  • 通过原子文件操作读取、写入、移动和删除笔记

  • 跨内容和元数据的全文搜索(BM25 排名)

  • 支持维基链接(Wikilink):反向链接、断链检测、孤立文件查找、未链接提及发现

  • YAML 元数据解析、验证和批量更新

  • 标签管理(元数据和行内标签)

  • 通过模式强制执行规范 — 笔记模式验证元数据/内容,文件夹模式强制执行结构规则

  • 规范级联:_conventions.md 文件将模式的作用范围限定在目录子树中

  • 路径安全:.obsidian/.git/node_modules/ 始终被拦截

Related MCP server: mcp-obsidian

安装

npm install -g markscribe

使用方法

作为 MCP 服务器

{
 "mcpServers": {
 "markscribe": {
 "command": "markscribe",
 "args": ["--root", "/path/to/your/notes"]
 }
 }
}

CLI 标志

标志

默认值

描述

--root <path>

当前工作目录

要服务的根目录

--schemas-dir <path>

~/.markscribe/schemas/

加载模式 YAML 文件的目录

--log-level <level>

info

日志级别 (debug, info, warn, error, fatal)

目录级配置

在根目录中放置一个 .markscribe/config.yaml

paths:
 blocked:
 - private/
 - drafts/
 allowed_extensions:
 - .md
 - .markdown
 - .txt
search:
 max_results: 50
 excerpt_chars: 40

模式

模式定义了笔记和文件夹的规范。将它们放置在模式目录中(默认为 ~/.markscribe/schemas/)。

笔记模式 — 验证元数据字段和内容规则:

name: blog-post
description: Blog post with required metadata
type: note
frontmatter:
 fields:
 title:
 type: string
 required: true
 tags:
 type: list
 required: true
content:
 rules:
 - name: has-outgoing-link
 check: hasPattern
 pattern: "\\[\\[.+?\\]\\]"

文件夹模式 — 强制执行目录的结构规则:

name: project-folder
description: Project folder with hub note
type: folder
noteSchemas:
 default: blog-post
 hub: project-hub
classification:
 supplemental: [assets, templates]
 skip: [archive]
hub:
 detection:
 - pattern: "_{{folderName}}"
 required: true

笔记通过元数据中的 note_schema: <name> 选择加入模式,或通过规范级联(_conventions.md 文件)自动加入。

工具

工具

描述

list_directory

列出文件和子目录

get_stats

笔记计数、总大小、最近文件

switch_directory

更改活动根目录

read_note

读取带有已解析元数据的笔记

write_note

创建或更新笔记

patch_note

笔记内的字符串替换

delete_note

删除笔记(需确认)

move_note

移动/重命名(可选链接更新)

read_multiple_notes

批量读取最多 10 个笔记

create_note

具备规范意识的笔记创建

get_frontmatter

仅读取 YAML 元数据

update_frontmatter

合并或替换元数据字段

manage_tags

添加、删除或列出标签

search_notes

全文 BM25 搜索

lint_note

根据其模式验证笔记

validate_folder

分类并验证文件夹

validate_area

递归子树验证

validate_all

完整目录树验证

list_schemas

列出所有已加载的模式

get_backlinks

查找链接到某笔记的笔记

find_broken_links

查找指向不存在笔记的维基链接

find_orphans

查找没有入站链接的笔记

find_unlinked_mentions

查找应为维基链接的纯文本提及

兼容的查看器

MarkScribe 适用于任何读取 Markdown 文件的工具:

  • Obsidian — 带有图谱视图和社区插件的 PKM 应用

  • Foam — 用于链接笔记的 VS Code 扩展

  • Logseq — 带有双向链接的大纲工具

  • 任何文本编辑器或静态网站生成器

致谢

使用 Claude Code 构建。

许可证

MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Erodenn/markscribe'

If you have feedback or need assistance with the MCP directory API, please join our Discord server