npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

dfwsc-mcp

v1.0.0

Published

MCP server for managing Coolify and Nextcloud — 130+ tools for infrastructure automation

Downloads

15

Readme

dfwsc-mcp

MCP server for managing Coolify and Nextcloud. Lets any MCP-compatible AI agent (OpenCode, Claude Desktop, Cursor, etc.) control your infrastructure through natural language.

Tools (100+)

System

| Tool | Description | |------|-------------| | coolify_healthcheck | Check Coolify API health | | coolify_version | Get Coolify version |

Teams

| Tool | Description | |------|-------------| | coolify_teams_list | List all teams | | coolify_team_current | Get current team | | coolify_team_members | Get current team members |

Projects

| Tool | Description | |------|-------------| | coolify_projects_list | List all projects | | coolify_projects_get | Get project by UUID | | coolify_project_create | Create a project | | coolify_project_update | Update a project | | coolify_project_environments | List environments | | coolify_project_environment_create | Create an environment | | coolify_project_environment_details | Get environment details |

SSH Keys

| Tool | Description | |------|-------------| | coolify_ssh_keys_list | List SSH keys | | coolify_ssh_key_get | Get key by UUID | | coolify_ssh_key_create | Create SSH key | | coolify_ssh_key_update | Update SSH key |

Cloud Providers

| Tool | Description | |------|-------------| | coolify_cloud_tokens_list | List cloud tokens | | coolify_cloud_token_get | Get token by UUID | | coolify_cloud_token_create | Add cloud token | | coolify_cloud_token_update | Update cloud token | | coolify_cloud_token_validate | Validate cloud token | | coolify_hetzner_locations | List Hetzner locations | | coolify_hetzner_server_types | List Hetzner server types | | coolify_hetzner_images | List Hetzner images | | coolify_hetzner_ssh_keys | List Hetzner SSH keys | | coolify_hetzner_create_server | Create Hetzner server |

Deployments

| Tool | Description | |------|-------------| | coolify_deploy | Deploy by tag or UUID | | coolify_deployments_list | List running deployments | | coolify_deployment_get | Get deployment by UUID | | coolify_deployment_cancel | Cancel a deployment |

Servers

| Tool | Description | |------|-------------| | coolify_servers_list | List all servers | | coolify_server_get | Get server by UUID | | coolify_server_create | Add a server | | coolify_server_update | Update server config | | coolify_server_domains | Get server domains | | coolify_server_resources | Get resource usage | | coolify_server_validate | Validate server connectivity | | coolify_resources_list | List all resources across servers |

Applications

| Tool | Description | |------|-------------| | coolify_applications_list | List all applications | | coolify_applications_get | Get application details | | coolify_applications_create | Create application | | coolify_applications_update | Update application | | coolify_application_create_public | Create from public Git repo | | coolify_application_create_dockerfile | Create from Dockerfile | | coolify_application_create_dockerimage | Create from Docker image | | coolify_application_create_docker_compose | Create from Docker Compose | | coolify_application_create_private_gh_app | Create via GitHub App | | coolify_application_create_private_deploy_key | Create via deploy key | | coolify_application_env_list | List env vars | | coolify_application_env_create | Add env var | | coolify_application_env_update | Update env var | | coolify_application_env_bulk_update | Bulk update env vars | | coolify_application_storage_list | List storages | | coolify_application_storage_create | Attach storage | | coolify_application_storage_update | Update storage | | coolify_application_deploy | Trigger deployment | | coolify_application_restart | Restart app | | coolify_application_stop | Stop app | | coolify_application_start | Start app | | coolify_application_logs | Get recent logs | | coolify_application_deployments | Get deployment history |

Databases

| Tool | Description | |------|-------------| | coolify_databases_list | List all databases | | coolify_databases_get | Get database details | | coolify_databases_create | Create database | | coolify_databases_update | Update database | | coolify_database_create_postgresql | Create PostgreSQL | | coolify_database_create_mysql | Create MySQL | | coolify_database_create_mariadb | Create MariaDB | | coolify_database_create_mongodb | Create MongoDB | | coolify_database_create_redis | Create Redis | | coolify_database_create_clickhouse | Create ClickHouse | | coolify_database_create_dragonfly | Create DragonFly | | coolify_database_create_keydb | Create KeyDB | | coolify_database_env_list | List env vars | | coolify_database_env_create | Add env var | | coolify_database_env_update | Update env var | | coolify_database_env_bulk_update | Bulk update env vars | | coolify_database_storage_list | List storages | | coolify_database_storage_create | Attach storage | | coolify_database_storage_update | Update storage | | coolify_database_deploy | Start database | | coolify_database_restart | Restart database | | coolify_database_stop | Stop database | | coolify_database_start | Start database | | coolify_database_backups_list | List backups | | coolify_database_backup_create | Create backup | | coolify_database_backup_update | Update backup | | coolify_database_backup_executions | List backup executions |

Services

| Tool | Description | |------|-------------| | coolify_services_list | List all services | | coolify_services_get | Get service details | | coolify_services_create | Create service | | coolify_services_update | Update service | | coolify_service_env_list | List env vars | | coolify_service_env_create | Add env var | | coolify_service_env_update | Update env var | | coolify_service_env_bulk_update | Bulk update env vars | | coolify_service_storage_list | List storages | | coolify_service_storage_create | Attach storage | | coolify_service_storage_update | Update storage | | coolify_service_deploy | Start service | | coolify_service_restart | Restart service | | coolify_service_stop | Stop service | | coolify_service_start | Start service |

GitHub Apps

| Tool | Description | |------|-------------| | coolify_github_apps_list | List GitHub App integrations | | coolify_github_app_create | Register GitHub App | | coolify_github_app_update | Update GitHub App | | coolify_github_app_repositories | List accessible repos | | coolify_github_app_branches | List repo branches |

Scheduled Tasks

| Tool | Description | |------|-------------| | coolify_app_scheduled_tasks_list | List app cron tasks | | coolify_app_scheduled_task_create | Create app cron task | | coolify_app_scheduled_task_update | Update app cron task | | coolify_app_scheduled_task_executions | List app task history | | coolify_service_scheduled_tasks_list | List service cron tasks | | coolify_service_scheduled_task_create | Create service cron task | | coolify_service_scheduled_task_update | Update service cron task | | coolify_service_scheduled_task_executions | List service task history |

Nextcloud — Users

| Tool | Description | |------|-------------| | nextcloud_users_list | List all users | | nextcloud_user_create | Create a user | | nextcloud_user_delete | Delete a user | | nextcloud_user_info | Get user info | | nextcloud_user_enable | Enable a user | | nextcloud_user_disable | Disable a user |

Nextcloud — Groups

| Tool | Description | |------|-------------| | nextcloud_groups_list | List all groups | | nextcloud_group_create | Create a group | | nextcloud_group_delete | Delete a group | | nextcloud_group_add_user | Add user to group | | nextcloud_group_remove_user | Remove user from group |

Nextcloud — Apps & System

| Tool | Description | |------|-------------| | nextcloud_occ | Run any occ CLI command | | nextcloud_app_list | List installed apps | | nextcloud_app_enable | Enable an app | | nextcloud_app_disable | Disable an app | | nextcloud_status | Get server status | | nextcloud_maintenance_mode | Toggle maintenance mode |

Nextcloud — User Status

| Tool | Description | |------|-------------| | nextcloud_user_status_get | Get current user status | | nextcloud_user_status_get_by_user | Get status for a specific user | | nextcloud_user_status_set_type | Set status type (online/away/dnd/invisible) | | nextcloud_user_status_set_message | Set custom status message | | nextcloud_user_status_clear_message | Clear custom status message | | nextcloud_user_status_set_predefined | Set predefined status message | | nextcloud_user_status_clear_predefined | Clear predefined status message |

Nextcloud — Contacts

| Tool | Description | |------|-------------| | nextcloud_contacts_addressbooks_list | List address books | | nextcloud_contacts_list | List contacts in address book | | nextcloud_contact_get | Get contact vCard | | nextcloud_contact_create | Create contact | | nextcloud_contact_update | Update contact vCard | | nextcloud_contact_delete | Delete contact |

Nextcloud — NextLedger

| Tool | Description | |------|-------------| | nextcloud_nextledger_request | Call any NextLedger endpoint | | nextcloud_nextledger_health | Check NextLedger health endpoint | | nextcloud_nextledger_ledgers_list | List ledgers | | nextcloud_nextledger_ledger_get | Get ledger by ID | | nextcloud_nextledger_ledger_create | Create ledger | | nextcloud_nextledger_ledger_update | Update ledger | | nextcloud_nextledger_ledger_delete | Delete ledger | | nextcloud_nextledger_entries_list | List ledger entries | | nextcloud_nextledger_entry_create | Create ledger entry | | nextcloud_nextledger_entry_update | Update ledger entry | | nextcloud_nextledger_entry_delete | Delete ledger entry |

Nextcloud — Deck

| Tool | Description | |------|-------------| | nextcloud_deck_boards_list | List Deck boards | | nextcloud_deck_board_get | Get Deck board details | | nextcloud_deck_board_create | Create Deck board | | nextcloud_deck_board_delete | Delete Deck board | | nextcloud_deck_stacks_list | List stacks in board | | nextcloud_deck_stack_create | Create stack | | nextcloud_deck_stack_update | Update stack title | | nextcloud_deck_stack_delete | Delete stack | | nextcloud_deck_cards_list | List cards in stack | | nextcloud_deck_card_create | Create card | | nextcloud_deck_card_get | Get card details | | nextcloud_deck_card_update | Update card | | nextcloud_deck_card_delete | Delete card | | nextcloud_deck_labels_list | List board labels | | nextcloud_deck_label_create | Create label | | nextcloud_deck_label_update | Update label | | nextcloud_deck_label_delete | Delete label | | nextcloud_deck_card_labels_add | Add label to card | | nextcloud_deck_card_labels_remove | Remove label from card | | nextcloud_deck_card_assignees_list | List card assignees | | nextcloud_deck_card_assignees_add | Assign user to card | | nextcloud_deck_card_assignees_remove | Unassign user from card | | nextcloud_deck_card_comments_list | List card comments | | nextcloud_deck_card_comment_create | Create card comment | | nextcloud_deck_card_comment_update | Update card comment | | nextcloud_deck_card_comment_delete | Delete card comment | | nextcloud_deck_card_attachments_list | List card attachments | | nextcloud_deck_card_attachment_create | Create card attachment | | nextcloud_deck_card_attachment_delete | Delete card attachment |

Setup

cp .env.example .env
# Fill in your Coolify and Nextcloud credentials
npm install

Run

npm start

Use with OpenCode

Add to your opencode.json:

{
  "mcp": {
    "dfwsc": {
      "type": "local",
      "command": ["node", "/absolute/path/to/dfwsc-mcp/src/index.js"],
      "environment": {
        "COOLIFY_URL": "{env:COOLIFY_URL}",
        "COOLIFY_TOKEN": "{env:COOLIFY_TOKEN}",
        "NEXTCLOUD_URL": "{env:NEXTCLOUD_URL}",
        "NEXTCLOUD_USER": "{env:NEXTCLOUD_USER}",
        "NEXTCLOUD_PASSWORD": "{env:NEXTCLOUD_PASSWORD}"
      },
      "enabled": true
    }
  }
}

Use with Claude Desktop

Add to your MCP config:

{
  "mcpServers": {
    "dfwsc": {
      "command": "node",
      "args": ["/absolute/path/to/dfwsc-mcp/src/index.js"],
      "env": {
        "COOLIFY_URL": "https://your-coolify.com",
        "COOLIFY_TOKEN": "...",
        "NEXTCLOUD_URL": "https://your-nextcloud.com",
        "NEXTCLOUD_USER": "admin",
        "NEXTCLOUD_PASSWORD": "..."
      }
    }
  }
}

Troubleshooting

Coolify API 401: Unauthorized

Your COOLIFY_TOKEN is invalid or expired. Generate a new one in Coolify under Keys & Tokens → API tokens.

Coolify API 404: Not found

The COOLIFY_URL is wrong or you're pointing at the wrong instance. Make sure it includes the protocol (https://) and has no trailing slash.

Coolify API 500: ...

Coolify's own internal error. Check the Coolify logs (docker logs coolify) for details. Usually means a resource UUID doesn't exist or a prerequisite is missing (e.g. no server assigned to a project).

fetch failed / Connection refused

The MCP server can't reach your Coolify or Nextcloud instance. Check:

  • Is the server running and reachable from this machine?
  • Is there a firewall blocking the connection?
  • Is the URL correct (try curl $COOLIFY_URL/api/v1/health manually)?

Nextcloud OCS 401: ...

NEXTCLOUD_USER or NEXTCLOUD_PASSWORD is wrong. If you use 2FA, create an app password in Nextcloud under Settings → Security → App passwords.

occ: command not found or php: command not found

Set NEXTCLOUD_OCC_PATH in your .env. The default is php /var/www/html/occ — if Nextcloud runs in Docker, you may need something like docker exec -u www-data nextcloud php occ.

MCP server starts but no tools appear in OpenCode

  • Make sure "enabled": true is set in the MCP config
  • Check the path to src/index.js is absolute, not relative
  • Restart OpenCode after changing the config

SyntaxError: Cannot use import statement outside a module

The project uses ESM ("type": "module" in package.json). Make sure you're running Node.js 18+.

Timeout errors (30s)

The Coolify API is slow to respond — common during deployments or when a server is unreachable. The tools have a 30-second timeout. If your instance is just slow, that's expected behavior.

Architecture

src/
├── index.js                    # MCP server entry point
├── utils.js                    # toZodShape helper
└── tools/
    ├── index.js                # Combines all tools
    ├── coolify/
    │   ├── client.js           # Shared API client (auth, timeout, error handling)
    │   ├── factories.js        # Tool generators for repeated patterns
    │   ├── index.js            # Re-exports all Coolify tools
    │   ├── system.js           # healthcheck, version
    │   ├── teams.js            # team management
    │   ├── projects.js         # projects + environments
    │   ├── ssh-keys.js         # SSH key management
    │   ├── cloud-providers.js  # cloud tokens + Hetzner
    │   ├── deployments.js      # deployment management
    │   ├── servers.js          # server management
    │   ├── applications.js     # app CRUD + envs + lifecycle
    │   ├── databases.js        # db CRUD + envs + backups + lifecycle
    │   ├── services.js         # service CRUD + envs + lifecycle
    │   ├── github-apps.js      # GitHub App integration
    │   └── scheduled-tasks.js  # cron tasks
    └── nextcloud/
        ├── client.js           # OCS + OCC helpers
        ├── index.js            # Re-exports all Nextcloud tools
        ├── users.js            # user management
        ├── groups.js           # group management
        └── apps.js             # app management + occ