pCloud MCP
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@pCloud MCPlist files in my pCloud root folder"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
pCloud MCP
A hostable Model Context Protocol server for pCloud. After you deploy it on a public HTTPS URL, Grok, Grokbot iOS, Claude, and other MCP clients can browse, read, write, and share files in your pCloud account.
MCP URL after deploy: https://YOUR_HOST/mcp
What it exposes
Tool | Purpose |
| List a folder (root is |
| File or folder metadata |
| Read text inline; binary files get a temporary download URL |
| Upload UTF-8 or base64 content |
| Temporary non-public download URL |
| Create a folder |
| Trash a file or folder |
| Rename in place or move by destination path |
| Copy into another folder |
| Name search under a folder tree |
| Public share links |
| Email, quota, used space |
| Trash |
Grok iOS and Grokbot talk to your server over HTTPS. Your pCloud token stays on the server. Clients sign in to the connector with a password you set (CONNECTOR_PASSWORD).
Related MCP server: kDrive Connector
Quick start (local)
git clone https://github.com/rghrb/pcloud-mcp.git
cd pcloud-mcp
npm install
cp .env.example .env
# edit .env: at least PCLOUD_ACCESS_TOKEN or connect via /setup
npm run build
npm startOpen http://127.0.0.1:3847/setup, paste a pCloud access token, then point a local MCP client at http://127.0.0.1:3847/mcp.
Grok and Grokbot iOS cannot use localhost. Deploy with HTTPS, then add https://YOUR_HOST/mcp.
Connect pCloud
Pick one:
A. Paste an access token (fastest)
Create an app at pCloud My Apps.
Add redirect URI
https://YOUR_HOST/setup/callbackand allow implicit grant.Open this URL (no space after
client_id=, andredirect_uriis required forresponse_type=token):https://my.pcloud.com/oauth2/authorize?client_id=YOUR_CLIENT_ID&response_type=token&redirect_uri=https://YOUR_HOST/setup/callbackpCloud sends you back to
/setup/callback. This server reads the token from the URL and saves it.Set
PCLOUD_API_HOST=eapi.pcloud.comfor EU accounts,api.pcloud.comfor US, if auto-detect is wrong.
B. OAuth from the server
Create an app at pCloud My Apps.
Add redirect URI
https://YOUR_HOST/setup/callback.Set
PCLOUD_CLIENT_IDandPCLOUD_CLIENT_SECRET.Open
https://YOUR_HOST/setupand click Connect with pCloud.
pCloud access tokens do not expire until you revoke them.
Host it
The container listens on port 3847 (3000 is a common conflict). Persist /data so OAuth clients and the pCloud token survive restarts. Override with PORT if you need a different one.
Docker Compose
cp .env.example .env
# fill CONNECTOR_PASSWORD, PUBLIC_URL, and pCloud token or app credentials
docker compose up --build -d# docker-compose.yml is in the repoDokploy
Dokploy / Traefik talk to the container port, not the host. Host port 3000 can stay used by the Dokploy UI.
When you add the domain pcloud.gharibyan.cloud:
Set Port to
3847(must matchPORT).Leave HTTPS to your proxy / Cloudflare as you already do.
Redeploy.
A 502 Bad Gateway on /setup almost always means that domain Port is still 3000 while the app is on 3847.
Render / Railway / Fly / any Node host
Variable | Required | Meaning |
| yes in production | Public origin, e.g. |
| recommended | Password Grok shows when connecting |
| no (default |
|
| one of token or | pCloud bearer token |
| no |
|
| for | From pCloud My Apps |
| if | Static bearer token |
| no | Default |
| no | Default |
If CONNECTOR_PASSWORD is unset, the server writes a random one to data/connector-password.txt on first start.
PUBLIC_URL is also picked up from RENDER_EXTERNAL_URL, RAILWAY_PUBLIC_DOMAIN, or FLY_APP_NAME when those platforms set them.
Docker
docker build -t pcloud-mcp .
docker run --rm -p 3847:3847 \
-e PUBLIC_URL=https://YOUR_HOST \
-e CONNECTOR_PASSWORD='pick-a-long-password' \
-e PCLOUD_ACCESS_TOKEN='...' \
-e PCLOUD_API_HOST=eapi.pcloud.com \
-v pcloud-mcp-data:/data \
pcloud-mcpConnect Grok iOS / grok.com
Deploy this server with a public
https://URL.Finish
/setupso pCloud is connected.On the phone or web: grok.com/connectors → New Connector → Custom.
Server URL:
https://YOUR_HOST/mcpSign in with
CONNECTOR_PASSWORD(or the generated file indata/connector-password.txt).
Grok discovers OAuth 2.1 + PKCE + dynamic client registration on this server. That is the flow the iOS app expects.
Connect Grokbot iOS
Ask the bot to add a custom remote MCP server at https://YOUR_HOST/mcp, then complete the connect card with the same connector password.
Grok Build / other local agents
Remote:
grok mcp add --transport http pcloud https://YOUR_HOST/mcpLocal stdio (no HTTP, token in the environment):
export PCLOUD_ACCESS_TOKEN=...
export PCLOUD_API_HOST=eapi.pcloud.com # if EU
grok mcp add pcloud -- node /path/to/pcloud-mcp/dist/index.js --stdioAuth modes
oauth(default, use this for Grok / Grokbot iOS) — unauthenticated/mcpreturns401plus OAuth metadata. Clients register themselves and you approve with the connector password.bearer— requireAuthorization: Bearer $MCP_AUTH_TOKEN. Useful for Grok Build headers.none— open/mcp. Only use this behind something else that already authenticates, or on a secret URL you accept as the secret.
Development
npm install
npm run devnpm run build
npm startLicense
MIT
This server cannot be deployed
Maintenance
Related MCP Connectors
Browse and manage files in your Moxt AI workspace from any MCP client.
Cloud file relay: chunked uploads, folders, share links, inline text reads, ZIP packing.
Managed MCP gateway with OAuth, per-agent permissions, shared accounts and activity logs.
An MCP server that provides read access to your cloud storage providers, bank accounts and more.
Related MCP Servers
- AlicenseAqualityDmaintenanceA Model Context Protocol (MCP) server for pCloud cloud storage. Enables AI assistants like Claude to interact with your pCloud - listing files, creating folders, searching, sharing, and more.152GPL 3.0
- FlicenseNot gradedqualityBmaintenanceMCP server for Infomaniak kDrive that enables natural, path-based read/write access to files. It supports browsing, searching, reading, uploading, renaming, moving, overwriting, and trashing items, with safety features like operation tokens and expiring private links.-
- AlicenseAqualityAmaintenanceEnables MCP clients to browse, search, download, and upload files in a NAVER MYBOX drive, plus inspect storage quota and create folders, all paced under the documented API rate limits. Read-and-write only: file deletion and trash management are deliberately not exposed.735 PyPI1MIT
- AlicenseAqualityCmaintenanceConnects any MCP client to a Nextcloud instance through official WebDAV and OCS APIs, enabling browsing, searching, uploading, downloading, copying, moving, and deleting files and folders, plus managing favorites, public links and user/group shares, and the trash bin. Authentication uses the browser-based Login Flow with a saved app password.23MIT