go-mcp-server-mds
by Warashi
A Go implementation of a Model Context Protocol (MCP) server that serves markdown files from a filesystem. It exposes markdown files as resources, providing tools to list and read them, and supports YAML or TOML frontmatter.
Last updated: N/A
What is go-mcp-server-mds?
This server is a Go implementation of a Model Context Protocol (MCP) server designed to serve markdown files from a filesystem. It allows accessing markdown content as resources via MCP.
How to use go-mcp-server-mds?
To use the server, you can either integrate it into your Go application using the provided library or run it as a command-line tool (mcp-server-mds
). The command-line tool takes a -path
argument to specify the directory containing the markdown files.
Key features of go-mcp-server-mds
Serve markdown files via MCP
List available markdown files with metadata
Read individual markdown file contents
Support for YAML and TOML frontmatter
File system abstraction using
fs.FS
Resource management with URI-based access
Use cases of go-mcp-server-mds
Exposing documentation as MCP resources
Providing access to configuration files via MCP
Serving content from a static site generator via MCP
Integrating markdown-based content into MCP-enabled applications
FAQ from go-mcp-server-mds
What is MCP?
What is MCP?
MCP stands for Model Context Protocol. It is a protocol for discovering and accessing resources.
What frontmatter formats are supported?
What frontmatter formats are supported?
The server supports both YAML and TOML frontmatter.
How do I specify the directory containing the markdown files?
How do I specify the directory containing the markdown files?
When using the command-line tool, use the -path
flag followed by the directory path.
How are resources accessed?
How are resources accessed?
Resources are accessible via file://
URIs, where the path is the path to the markdown file.
What metadata is included when listing markdown files?
What metadata is included when listing markdown files?
The metadata includes the file path, file size, and parsed frontmatter (if available).