Skip to main content
Glama

MCP Server for Document Management

A local development server that provides a simple interface for managing and accessing markdown documents using the Model Context Protocol (MCP).

Features

  • Serve markdown documents from a local directory

  • List available documents

  • Read document contents

  • Simple and fast local development setup

  • Support for both direct MCP and SSE communication

Related MCP server: Markdown MCP Server

Project Structure

.
├── documents/         # Directory containing markdown files
├── tools/             # Tool definitions
├── resources/         # Resource templates
├── utils/             # Utility functions
└── server.js          # Main server file

Setup

  1. Install dependencies:

npm install
  1. Create a documents directory in the project root and add your markdown files:

mkdir documents
  1. Start the server:

npm start
  1. In a separate terminal, run the inspector:

npm run inspect

Usage

The server provides the following functionality:

  1. List Documents:

    • Access available markdown files through the inspector

    • Files are listed with their names (without .md extension)

  2. Read Documents:

    • Click on any document in the inspector to view its contents

    • Documents are served with proper markdown formatting

  3. File Management:

    • Add new markdown files to the documents directory

    • Files are automatically detected and made available

    • Only .md files are supported

Development

The server uses:

  • Express.js for the web server

  • Model Context Protocol (MCP) for communication

  • SSE (Server-Sent Events) for real-time updates

  • Direct MCP communication for simple requests

Error Handling

The server includes:

  • Automatic port conflict resolution

  • Graceful error handling for file operations

  • Connection management for SSE

  • Proper cleanup of resources

Notes

  • This is a local development server, not intended for production use

  • No security measures are implemented as it's meant for local use only

  • File operations are optimized for quick access and response

lv.

Available Tools

2 tools
addD
ParametersJSON Schema
NameRequiredDescriptionDefault
aYes
bYes

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

test_docs_pathD
ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

D1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Tool has no description.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness1/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Tool has no description.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Tool has no description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Tool has no description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose1/5

Does the description clearly state what the tool does and how it differs from similar tools?

Tool has no description.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Tool has no description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

TDQS

D1.2/5.0
Disambiguation2/5

The two tools 'add' and 'test_docs_path' have no descriptions, making their purposes unclear. 'add' is extremely vague and could refer to many operations, while 'test_docs_path' suggests a testing function, but without descriptions, it's impossible to determine if they overlap or serve distinct roles. The lack of clarity creates significant ambiguity.

Naming Consistency2/5

The tool names show inconsistency: 'add' uses a simple verb with no noun, while 'test_docs_path' uses a snake_case pattern with a verb-noun structure. This mixing of conventions (simple verb vs. descriptive snake_case) makes the naming unpredictable and chaotic, lacking a coherent pattern across the set.

Tool Count2/5

With only 2 tools and no descriptions, it's difficult to assess the server's purpose, but based on the server name 'MCP Document Server', this count feels too thin for a document management domain. A document server typically requires more operations (e.g., create, read, update, delete, search), making 2 tools insufficient and poorly scoped.

Completeness1/5

Inferred from the server name, a document server should cover basic CRUD operations and document lifecycle management. With only vague tools like 'add' and 'test_docs_path', there are severe gaps—no clear ways to retrieve, update, delete, or search documents. This surface is highly incomplete and will likely cause agent failures in handling document-related tasks.

Maintenance

ActivityInactive
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    An MCP (Model Context Protocol) server for efficiently managing Markdown documents in Cursor AI IDE, supporting CRUD operations, search, and metadata management.
  • A
    license
    A
    quality
    D
    maintenance
    A Model Context Protocol (MCP) server that provides a local-first RAG engine for your markdown documents. It uses a file-based Milvus vector database to index your notes, enabling LLMs to perform semantic search and retrieve relevant content from your local files.
    3
    59
    Apache 2.0

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/motiondesignlv/MCP_server'

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