Retrieves projects from Cloudflare for backup purposes using the Cloudflare API
Backs up Cloudflare projects to GitHub repositories, allowing automatic storage and versioning of project data
Cloudflare to GitHub Backup MCP Server
This is an MCP (Model Context Protocol) server that backs up Cloudflare projects to a GitHub repository.
Prerequisites
Node.js and npm installed.
A Cloudflare account and API token with read access to your projects.
A GitHub account and personal access token with "repo" scope.
A GitHub repository where you want to store the backups.
Related MCP server: GitHub MCP Server Plus
Installation
Installing via Smithery
To install Cloudflare to GitHub Backup for Claude Desktop automatically via Smithery:
Manual Installation
Clone this repository:
git clone <repository_url> cd cloudflare-github-backupInstall dependencies:
npm installBuild the project
npm run build
Configuration
Obtain your Cloudflare API token:
Go to your Cloudflare dashboard.
Navigate to "My Profile" -> "API Tokens".
Click "Create Token".
Ensure the token has the necessary permissions to read your projects.
Copy the token.
Obtain your GitHub personal access token:
Go to your GitHub settings.
Navigate to "Developer settings" -> "Personal access tokens".
Click "Generate new token".
Select the "repo" scope.
Copy the token.
Edit the
cline_mcp_settings.jsonfile:{ "mcpServers": { "cloudflare-backup": { "command": "node", "args": ["/path/to/cloudflare-github-backup/build/index.js"], "env": { "CLOUDFLARE_API_TOKEN": "your_cloudflare_api_token", "GITHUB_ACCESS_TOKEN": "your_github_access_token", "GITHUB_REPO_NAME": "your_github_repo_name" } } } }Replace
/path/to/cloudflare-github-backupwith the actual path to thecloudflare-github-backupdirectory.Replace
your_cloudflare_api_token,your_github_access_token, andyour_github_repo_namewith your actual tokens and repository name.
Usage
Start the MCP server by restarting the VS Code extension.
Use the
use_mcp_tooltool to call thebackup_projectstool:<use_mcp_tool> <server_name>cloudflare-backup</server_name> <tool_name>backup_projects</tool_name> <arguments> {} </arguments> </use_mcp_tool>This will trigger the backup process. The server will log messages to the console indicating the progress.
Note
Currently, the backup logic is just a placeholder. It will log messages to the console but won't perform actual backups. The next step is to implement the actual backup logic using the Cloudflare and GitHub APIs.