mcpField
Q
qnap

qnap

Local
github.com/marcelo-ochoaFiles & Storage2Updated 10w ago

About qnap

A QNAP NAS MCP server for monitoring system health, browsing files, and generating reports. It combines callable tools with structured disk and volume resources.

Key features

  1. 01Connect to a QNAP NAS
  2. 02Generate Markdown system reports
  3. 03List directories by modification date
  4. 04Retrieve file details
  5. 05Expose disk and volume data

Use cases

  1. 01Review NAS CPU, memory, and storage status
  2. 02Browse a NAS directory
  3. 03Check details for a specific file

MCP support

Exposes tools for connecting to a QNAP NAS, reporting system status, listing directories, and inspecting files. Disk and volume monitoring data is also available as structured MCP resources.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"marcelo-ochoa-qnap": {
"command": "npx",
"args": [
"-y",
"@marcelo-ochoa/server-qnap"
]
}
}
}
Run commandnpx -y @marcelo-ochoa/server-qnap

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npm@marcelo-ochoa/server-qnap1.0.8

Tools

4

Saved tool list · updated 2w ago

ParameterTypeRequiredDescription
hoststringYesQNAP NAS host (e.g., http://10.1.1.241:8080)
passwordstringYesPassword
usernamestringYesUsername

Details

From the project README

QNAP MCP Server

An MCP server implementation for QNAP NAS devices, providing tools to monitor system status, manage files, and generate reports.

Tools

  • qnap-connect: Connect to a QNAP NAS and obtain a session ID.
    • host: The QNAP NAS URL (e.g., http://10.1.1.241:8080).
    • username: Your admin username.
    • password: Your admin password.
  • qnap-report: Generate a comprehensive Markdown system report including CPU, memory, powered by toon tables for disks and volumes. Perfect for both human reading and AI analysis.
  • qnap-dir: List the contents of a directory in a professional tabular format, automatically sorted by modification date.
    • path: The path to list (e.g., /Public).
  • qnap-file-info: Get detailed information about a specific file.
    • path: The directory path.
    • filename: The name of the file.

Resources

The server exposes QNAP system components as MCP Resources, providing structured JSON data for monitoring:

  • Disks: qnap://[host]:[port]/disk/[disk-id]
    • Real-time disk health, model, serial, and temperature.
  • Volumes: qnap://[host]:[port]/volume/[volume-id]
    • Detailed storage usage, capacity, and volume names.

These resources allow AI models to monitor NAS health and storage levels without manually calling reporting tools.

Configuration

Environment Variables

The server can use environment variables and startup arguments for automatic connection:

  • QNAP_USER: QNAP admin username.
  • QNAP_PASSWORD: QNAP admin password.
Startup Arguments
  1. host: (Optional) URL of the QNAP NAS (e.g., http://10.1.1.241:8080).

If the host and environment variables are provided, the server will attempt to connect automatically at startup.

Usage with Claude Desktop

Add the following to your claude_desktop_config.json:

{
  "mcpServers": {
    "qnap": {
      "command": "npx",
      "args": [
        "-y",
        "@marcelo-ochoa/server-qnap",
        "http://10.1.1.241:8080"
      ],
      "env": {
        "QNAP_USER": "admin",
        "QNAP_PASSWORD": "password"
      }
    }
  }
}

using docker image

{
  "mcpServers": {
    "qnap": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "QNAP_USER=admin",
        "-e",
        "QNAP_PASSWORD=password",
        "mochoa/mcp-qnap",
        "http://10.1.1.241:8080"
      ]
    }
  }
}

Development

cd src/qnap
npm install
npm run build

Demos

See Demos for usage examples with Claude Desktop, Gemini CLI, and Antigravity Code Editor.

Docker

Building the container:

docker build -t mochoa/mcp-qnap -f src/qnap/Dockerfile .

Running the container:

docker run -i --rm -e QNAP_USER=admin -e QNAP_PASSWORD=password mochoa/mcp-qnap http://10.1.1.241:8080

Change Log

See Change Log for the history of changes.

📜 License

This project is licensed under the Apache License, Version 2.0 for new contributions, with existing code under MIT - see the LICENSE file for details.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.