Skip to content

eduardokanema/ugreen-nas-ugos-mcp-server

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

nas-controller

Node/TypeScript MCP server for automating a single UGOS PRO NAS target through the local agent-browser CLI.

Current scope

  • Login to one configured NAS target
  • Persist encrypted browser session state
  • Expose the same MCP tools over stdio and optional Streamable HTTP
  • Explore the desktop and Docker UI in read-only mode
  • List Docker containers, inspect details, read logs, update/restart/force-close/delete containers, and manage MCP-backed terminals
  • Read Docker application system logs with search and pagination
  • Review image-driven container settings, create new Docker containers, and edit existing containers through limited, recreate, or duplicate flows
  • Search Docker images, start downloads, list local images, delete local images, and import one local image from a NAS .tar path

Required settings

export NAS_UGOS_TARGET=192.168.50.80:9999
export NAS_UGOS_USERNAME=admin
export NAS_UGOS_PASSWORD=secret
export NAS_SESSION_KEY=0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef

Optional:

export NAS_SESSION_DIR=.sessions
export NAS_SESSION_NAME=nas-192-168-50-80-9999
export NAS_HTTP_HOST=127.0.0.1
export NAS_HTTP_PORT=4010

Run

npm install
npm run build
node dist/src/server.js --http-port 4010

Without --http-port, the server runs on stdio only.

Current MCP tools

  • nas.login
  • nas.session_status
  • nas.explore.desktop
  • nas.explore.docker
  • nas.docker.containers.list
  • nas.docker.containers.get
  • nas.docker.containers.logs.get
  • nas.docker.system_logs.list
  • nas.docker.containers.create
  • nas.docker.containers.edit
  • nas.docker.containers.activate
  • nas.docker.containers.deactivate
  • nas.docker.containers.update_image
  • nas.docker.containers.restart
  • nas.docker.containers.force_close
  • nas.docker.containers.delete
  • nas.docker.images.search
  • nas.docker.images.download
  • nas.docker.images.local.list
  • nas.docker.images.local.delete
  • nas.docker.images.local.import
  • nas.docker.terminals.list
  • nas.docker.terminals.create
  • nas.docker.terminals.read
  • nas.docker.terminals.write
  • nas.docker.terminals.close

Validation

npm test
npm run build

Container creation should be treated as effectively immutable. UGOS supports only limited in-place edits after creation, so broader changes should be handled by duplicating the original settings or using the recreate-current workflow with caution.

About

MCP server for automating a UGOS PRO NAS over stdio/HTTP, with Docker container, image, log, and terminal controls via agent-browser.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors