Convert a document collection to verified Markdown, package it into a single encrypted archive with its search index and provenance, and serve it to agents over the Model Context Protocol. Python 3.11+, Apache-2.0.
Setup
Choose your client, copy the config, then fill in any required environment variables.
claude mcp add document-corpus --env MDCX_FILE='<MDCX_FILE>' --env MDCX_KEY='<MDCX_KEY>' -- uvx mdcx -m mdcx.mcp_server~/.codex/config.toml
[mcp_servers.document-corpus]
command = "uvx"
args = ["mdcx", "-m", "mdcx.mcp_server"]
env = { MDCX_FILE = "<MDCX_FILE>", MDCX_KEY = "<MDCX_KEY>" }
# codex mcp add document-corpus --env MDCX_FILE='<MDCX_FILE>' --env MDCX_KEY='<MDCX_KEY>' -- uvx mdcx -m mdcx.mcp_server~/.cursor/mcp.json
{
"mcpServers": {
"document-corpus": {
"command": "uvx",
"args": [
"mdcx",
"-m",
"mdcx.mcp_server"
],
"env": {
"MDCX_FILE": "<MDCX_FILE>",
"MDCX_KEY": "<MDCX_KEY>"
}
}
}
}.vscode/mcp.json
{
"servers": {
"document-corpus": {
"type": "stdio",
"command": "uvx",
"args": [
"mdcx",
"-m",
"mdcx.mcp_server"
],
"env": {
"MDCX_FILE": "<MDCX_FILE>",
"MDCX_KEY": "<MDCX_KEY>"
}
}
}
}~/.gemini/settings.json
{
"mcpServers": {
"document-corpus": {
"command": "uvx",
"args": [
"mdcx",
"-m",
"mdcx.mcp_server"
],
"env": {
"MDCX_FILE": "<MDCX_FILE>",
"MDCX_KEY": "<MDCX_KEY>"
}
}
}
}claude_desktop_config.json
{
"mcpServers": {
"document-corpus": {
"command": "uvx",
"args": [
"mdcx",
"-m",
"mdcx.mcp_server"
],
"env": {
"MDCX_FILE": "<MDCX_FILE>",
"MDCX_KEY": "<MDCX_KEY>"
}
}
}
}.trae/mcp.json
{
"mcpServers": {
"document-corpus": {
"command": "uvx",
"args": [
"mdcx",
"-m",
"mdcx.mcp_server"
],
"env": {
"MDCX_FILE": "<MDCX_FILE>",
"MDCX_KEY": "<MDCX_KEY>"
}
}
}
}Environment variables
MDCX_FILEMDCX_KEY
Replace the placeholders with your own credentials and keep them out of version control.