
cf mcp server
An MCP server on Cloudflare Workers
Repository Info
About This Server
An MCP server on Cloudflare Workers
Model Context Protocol (MCP) - This server can be integrated with AI applications to provide additional context and capabilities, enabling enhanced AI interactions and functionality.
Documentation
MCP-Enabled Cloudflare Worker for Claude
This repository contains a Cloudflare Worker implementing the Model Context Protocol (MCP), which allows Claude to access various external services and APIs directly from your conversations.
Features
The worker provides the following tools for Claude to use:
- Weather Information: Fetch current weather data for any city
- IP Geolocation: Look up detailed information about any IP address
- Web Search: Perform Google searches with customizable result count
- HTTP Request Proxy: Make custom HTTP requests to any endpoint with full control over headers, methods, and body data
Setup Instructions
Prerequisites
- Node.js and npm installed
- Cloudflare account
Installation
- Install Wrangler CLI
npm install -g wrangler
- Log in to Cloudflare
wrangler login
- Clone this repository
git clone https://github.com/anishgowda21/cf-mcp-server.git
cd cf-mcp-server
- Install dependencies
npm install
- Set up MCP
npx workers-mcp setup
Configuration
You'll need to set the following environment variables in the Cloudflare Dashboard (recommended for security) instead of in the wrangler.toml file:
OPENWEATHERMAP_API_KEY(for weather data)IPINFO_API_KEY(for IP geolocation)GOOGLE_API_KEY(for web search)GOOGLE_CX(for web search)
To do this:
- Go to the Cloudflare Dashboard
- Navigate to Workers & Pages
- Select your worker
- Go to Settings > Variables
- Add your environment variables under "Environment Variables"
Note: If you don't need a particular service, you can simply not set its API key. The corresponding function will return an error when called, but the rest of the worker will continue to function.
Deployment
Deploy your worker to Cloudflare:
npm run deploy
Usage with Claude
Once deployed, you can use your MCP server with Claude. To do this, simply ask Claude to use your worker for various tasks:
- "Get the weather for Tokyo"
- "Look up information about IP address 8.8.8.8"
- "Search the web for 'latest AI developments'"
- "Make a GET request to https://example.com/api/data"
Claude will automatically use the appropriate function based on your request.
Function Reference
getWeatherData(cityName: string)
Fetches current weather data for the specified city.
getIpDetails(ipAddr: string)
Retrieves detailed geolocation information for an IP address. Use "me" to get information about the client's IP.
googleWebSearch(query: string, num?: number)
Performs a Google search with the specified query and returns the specified number of results (1-10, default: 5).
makeRequest(url: string, method: string, params?: object)
Makes a custom HTTP request with specified method, headers, and body data. The params object can include:
headers: Record of HTTP headersbody: Request body (string or object that will be automatically stringified)
Customization
To modify the worker or add new functions:
- Edit
src/index.ts - Add new methods to the
MyWorkerclass with JSDoc comments to document the functionality - Deploy using
npm run deploy
Troubleshooting
- If you encounter issues with API responses, check that you've set up the appropriate environment variables in the Cloudflare Dashboard
- If a specific function isn't working, you might need to obtain the corresponding API key
- For functions you don't need, you can comment out the relevant code in
src/index.ts
Quick Start
Clone the repository
git clone https://github.com/anishgowda21/cf-mcp-serverInstall dependencies
cd cf-mcp-server
npm installFollow the documentation
Check the repository's README.md file for specific installation and usage instructions.
Repository Details
Recommended MCP Servers
Discord MCP
Enable AI assistants to seamlessly interact with Discord servers, channels, and messages.
Knit MCP
Connect AI agents to 200+ SaaS applications and automate workflows.
Apify MCP Server
Deploy and interact with Apify actors for web scraping and data extraction.
BrowserStack MCP
BrowserStack MCP Server for automated testing across multiple browsers.
Zapier MCP
A Zapier server that provides automation capabilities for various apps.