About MarkdownMcp
MarkdownMcp is an MCP server published by pramin in the Search category: mCP server for surgical markdown section editing. Read, write, search, and sed individual sections by heading path — without loading the whole file.
Six months or more without a commit doesn't mean the server is broken, but check the open issues before depending on it in production.
Install
git clone https://github.com/pramin/MarkdownMCPThis server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.
Tools (12)
delete_sectionRemove a section
Parameters not published.
get_contextGet surrounding sections
Parameters not published.
get_frontmatterRead YAML frontmatter
Parameters not published.
get_tocHeading tree with line counts
Parameters not published.
move_sectionReorder sections
Parameters not published.
read_sectionRead a section by path
Parameters not published.
replace_sectionReplace or create a section (upsert)
Parameters not published.
search_sectionsSearch by text or regex (ERE)
Parameters not published.
sed_documentApply sed scripts to entire file
Parameters not published.
sed_sectionApply sed scripts to a section
Parameters not published.
set_frontmatterUpdate YAML frontmatter
Parameters not published.
write_documentWrite an entire file
Parameters not published.
Ask AI
Ask AI about MarkdownMcp
Powered by Claude · Grounded in docs
Security checks
- ✓README presentThe repository ships documentation.
5 checks have not been run yet.
README
MarkdownMCP
MCP server for surgical markdown section editing. Lets LLMs work with large markdown files without reading the whole thing — parse the heading structure, read/write individual sections by path, search, sed, and more.
Install
dotnet tool install -g MarkdownMcp
Quick Start
Register with your MCP client:
# Claude Desktop, Cursor, Copilot
markdown-mcp install claude
markdown-mcp install cursor
markdown-mcp install copilot
# Claude Code
markdown-mcp install claude-code
Or start the server directly:
markdown-mcp serve
Tools
| Tool | Description |
|---|---|
get_toc |
Heading tree with line counts |
read_section |
Read a section by path |
replace_section |
Replace or create a section (upsert) |
delete_section |
Remove a section |
write_document |
Write an entire file |
search_sections |
Search by text or regex (ERE) |
get_context |
Get surrounding sections |
get_frontmatter |
Read YAML frontmatter |
set_frontmatter |
Update YAML frontmatter |
move_section |
Reorder sections |
sed_section |
Apply sed scripts to a section |
sed_document |
Apply sed scripts to entire file |
Section Paths
Sections are addressed by JSON arrays of heading names:
["Installation"]
["Installation", "Linux"]
["FAQ", ["Common Issues", 1]]
No # symbols — just heading text. Use [name, index] to disambiguate duplicate sibling headings.
Examples
get_toc(file: "spec.md")
read_section(file: "spec.md", path: '["Error Handling"]')
sed_section(file: "spec.md", path: '["Status"]', script: "s/TODO/DONE/g")
search_sections(file: "spec.md", query: "status:\\s*TODO", regex: true)
Concurrency
- Read/write locks per file for concurrent MCP tool calls
- Optimistic concurrency on writes detects external modifications (e.g. from other MCP servers editing the same file)
CLI
markdown-mcp serve Start MCP server (stdio)
markdown-mcp install <client> Configure for a client
markdown-mcp update Update via dotnet tool update
markdown-mcp --help Show help
License
MIT
README copy captured when this server was indexed; it may lag the repository. The original is authoritative.