This is an MCP (Model Context Protocol) server that backs up Cloudflare projects to a GitHub repository.
- 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.
- Clone this repository:
git clone <repository_url> cd cloudflare-github-backup
- Install dependencies:
npm install
- Build the project
npm run build
-
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.json
file:{ "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-backup
with the actual path to thecloudflare-github-backup
directory. - Replace
your_cloudflare_api_token
,your_github_access_token
, andyour_github_repo_name
with your actual tokens and repository name.
- Replace
-
Start the MCP server by restarting the VS Code extension.
-
Use the
use_mcp_tool
tool to call thebackup_projects
tool:<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.
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.