MarkdownMcp 1.0.1

dotnet tool install --global MarkdownMcp --version 1.0.1
                    
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest
                    
if you are setting up this repo
dotnet tool install --local MarkdownMcp --version 1.0.1
                    
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=MarkdownMcp&version=1.0.1
                    
nuke :add-package MarkdownMcp --version 1.0.1
                    

MarkdownMCP

CI NuGet License: MIT

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

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

Version Downloads Last Updated
1.0.1 105 4/12/2026
1.0.0 93 4/12/2026