Skip to main content
Glama

Document MCP Server

A simple MCP (Model Context Protocol) server and MCP client for managing documents using FastMCP.

Features

  • Tools:

    • read_doc_contents: Read the contents of a document.

    • edit_document: Edit a document by replacing text.

    • return all the docs: List all document IDs.

  • Resources:

    • docs://documents: JSON list of document IDs.

    • docs://documents/{doc_id}: Plain text content of a specific document.

  • Prompts:

    • format_to_md: Prompt template for formatting documents to Markdown.

Prerequisites

  • Python 3.12 or higher

  • uv (Python package manager and project manager)

Installation

  1. Ensure you have Python 3.12+ installed.

  2. Install uv if not already installed:

    pip install uv
  3. Clone or download this project to your local machine.

  4. Navigate to the project directory:

    cd "path/to/mcp server"
  5. Create a virtual environment and install dependencies:

    uv sync

Running the Server

To run the MCP server in development mode:

uv run mcp dev mcp_server.py

The server runs on stdio transport, suitable for MCP clients.

Testing the Functionality

Test client is provided in mcp_client.py to verify the server works.

To test:

  1. In one terminal, start the server:

    uv run python mcp_server.py
  2. In another terminal, run the test client:

    uv run mcp_client.py

This will connect to the server and list the available tools, printing them to the console.

For more advanced testing, you can modify mcp_client.py to call specific tools, read resources, or get prompts.

Example: To read a document content, you could add code like:

# Inside the async main function
doc_content = await client.call_tool("read_doc_contents", {"doc_id": "deposition.md"})
print(doc_content)

Project Structure

  • mcp_server.py: The main MCP server implementation.

  • mcp_client.py: A test client for interacting with the server.

  • pyproject.toml: Project configuration and dependencies.

Notes

  • The server uses an in-memory dictionary for documents. Changes are not persisted.

  • Ensure the virtual environment is activated when running Python commands.

Install Server
A
security – no known vulnerabilities
F
license - not found
A
quality - confirmed to work

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

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

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/mparth14/MCP-anthropic'

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