Skip to content
VS Code

minirag mcp for VS Code

io.github.sfrangulov/minirag-mcp

Local-first RAG MCP server: hybrid search over a folder of your own documents

client:VS Code transport:stdio runtime:pypi

Install minirag mcp in VS Code

.vscode/mcp.json

{
  "inputs": [
    {
      "type": "promptString",
      "id": "base-dir",
      "description": "BASE_DIR",
      "password": true
    },
    {
      "type": "promptString",
      "id": "base-dirs",
      "description": "BASE_DIRS",
      "password": true
    },
    {
      "type": "promptString",
      "id": "db-path",
      "description": "DB_PATH",
      "password": true
    },
    {
      "type": "promptString",
      "id": "cache-dir",
      "description": "CACHE_DIR",
      "password": true
    },
    {
      "type": "promptString",
      "id": "model-name",
      "description": "MODEL_NAME",
      "password": true
    },
    {
      "type": "promptString",
      "id": "max-file-size",
      "description": "MAX_FILE_SIZE",
      "password": true
    },
    {
      "type": "promptString",
      "id": "chunk-token-budget",
      "description": "CHUNK_TOKEN_BUDGET",
      "password": true
    },
    {
      "type": "promptString",
      "id": "rag-hybrid-weight",
      "description": "RAG_HYBRID_WEIGHT",
      "password": true
    },
    {
      "type": "promptString",
      "id": "rag-grouping",
      "description": "RAG_GROUPING",
      "password": true
    },
    {
      "type": "promptString",
      "id": "rag-max-distance",
      "description": "RAG_MAX_DISTANCE",
      "password": true
    },
    {
      "type": "promptString",
      "id": "rag-max-files",
      "description": "RAG_MAX_FILES",
      "password": true
    },
    {
      "type": "promptString",
      "id": "rag-instructions-append",
      "description": "RAG_INSTRUCTIONS_APPEND",
      "password": true
    },
    {
      "type": "promptString",
      "id": "allow-private-urls",
      "description": "ALLOW_PRIVATE_URLS",
      "password": true
    }
  ],
  "servers": {
    "minirag-mcp": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "minirag-mcp"
      ],
      "env": {
        "BASE_DIR": "${input:base-dir}",
        "BASE_DIRS": "${input:base-dirs}",
        "DB_PATH": "${input:db-path}",
        "CACHE_DIR": "${input:cache-dir}",
        "MODEL_NAME": "${input:model-name}",
        "MAX_FILE_SIZE": "${input:max-file-size}",
        "CHUNK_TOKEN_BUDGET": "${input:chunk-token-budget}",
        "RAG_HYBRID_WEIGHT": "${input:rag-hybrid-weight}",
        "RAG_GROUPING": "${input:rag-grouping}",
        "RAG_MAX_DISTANCE": "${input:rag-max-distance}",
        "RAG_MAX_FILES": "${input:rag-max-files}",
        "RAG_INSTRUCTIONS_APPEND": "${input:rag-instructions-append}",
        "ALLOW_PRIVATE_URLS": "${input:allow-private-urls}"
      }
    }
  }
}

VS Code prompts for each input the first time the server starts, so no secret is written to the file. VS Code docs

minirag mcp in other clients