Skip to main content
Glama
hithereiamaliff

Keywords Everywhere MCP Server

DEPLOYMENT.md4.71 kB
# VPS Deployment Guide for Keywords Everywhere MCP This guide explains how to deploy the Keywords Everywhere MCP server on your VPS at `mcp.techmavie.digital/keywords-everywhere`. ## Prerequisites - VPS with Ubuntu/Debian (IP: 202.61.238.12) - Docker and Docker Compose installed - Nginx installed - Domain `mcp.techmavie.digital` pointing to your VPS IP - SSL certificate (via Certbot/Let's Encrypt) - Keywords Everywhere API key ## Architecture ``` Client (Claude, Cursor, etc.) ↓ HTTPS https://mcp.techmavie.digital/keywords-everywhere/mcp ↓ Nginx (SSL termination + reverse proxy) ↓ HTTP Docker Container (port 3001 → 3000) ↓ Keywords Everywhere API ``` ## Deployment Steps ### 1. SSH into your VPS ```bash ssh root@202.61.238.12 ``` ### 2. Create directory for the MCP server ```bash mkdir -p /opt/mcp-servers/keywords-everywhere cd /opt/mcp-servers/keywords-everywhere ``` ### 3. Clone the repository ```bash git clone https://github.com/hithereiamaliff/mcp-keywords-everywhere.git . ``` ### 4. Create environment file ```bash cp .env.example .env nano .env ``` Add your Keywords Everywhere API key: ```env KEYWORDS_EVERYWHERE_API_KEY=your_api_key_here ``` ### 5. Build and start the Docker container ```bash docker compose up -d --build ``` ### 6. Verify the container is running ```bash docker compose ps docker compose logs -f ``` ### 7. Test the health endpoint ```bash curl http://localhost:3001/mcp ``` ### 8. Configure Nginx Add the location block from `deploy/nginx-mcp.conf` to your existing nginx config for `mcp.techmavie.digital`: ```bash # Edit your existing nginx config sudo nano /etc/nginx/sites-available/mcp.techmavie.digital # Add the location block from deploy/nginx-mcp.conf inside the server block # Test nginx config sudo nginx -t # Reload nginx sudo systemctl reload nginx ``` ### 9. Test the MCP endpoint ```bash # Test health endpoint through nginx curl https://mcp.techmavie.digital/keywords-everywhere/mcp # Test MCP endpoint curl -X POST https://mcp.techmavie.digital/keywords-everywhere/mcp \ -H "Content-Type: application/json" \ -H "Accept: application/json" \ -d '{"jsonrpc":"2.0","id":1,"method":"initialize"}' ``` ## Client Configuration ### For Claude Desktop / Cursor / Windsurf Add to your MCP configuration: ```json { "mcpServers": { "keywords-everywhere": { "transport": "streamable-http", "url": "https://mcp.techmavie.digital/keywords-everywhere/mcp" } } } ``` ### For MCP Inspector ```bash npx @modelcontextprotocol/inspector # Select "Streamable HTTP" # Enter URL: https://mcp.techmavie.digital/keywords-everywhere/mcp ``` ## Management Commands ### View logs ```bash cd /opt/mcp-servers/keywords-everywhere docker compose logs -f ``` ### Restart the server ```bash docker compose restart ``` ### Update to latest version ```bash git pull origin main docker compose up -d --build ``` ### Stop the server ```bash docker compose down ``` ## GitHub Actions Auto-Deploy The repository includes a GitHub Actions workflow (`.github/workflows/deploy-vps.yml`) that automatically deploys to your VPS when you push to the `main` branch. ### Required GitHub Secrets Set these in your repository settings (Settings → Secrets and variables → Actions): | Secret | Description | |--------|-------------| | `VPS_HOST` | Your VPS IP address (e.g., 202.61.238.12) | | `VPS_USERNAME` | SSH username (e.g., root) | | `VPS_SSH_KEY` | Your private SSH key | | `VPS_PORT` | SSH port (usually 22) | ## Environment Variables | Variable | Default | Description | |----------|---------|-------------| | `PORT` | 3000 | HTTP server port (internal) | | `HOST` | 0.0.0.0 | Bind address | | `TRANSPORT_TYPE` | http | Transport type (http or stdio) | | `KEYWORDS_EVERYWHERE_API_KEY` | (required) | Your Keywords Everywhere API key | ## Troubleshooting ### Container not starting ```bash docker compose logs mcp-keywords-everywhere ``` ### Nginx 502 Bad Gateway - Check if container is running: `docker compose ps` - Check container logs: `docker compose logs` - Verify port binding: `docker port mcp-keywords-everywhere` ### API key issues Make sure your `.env` file contains a valid `KEYWORDS_EVERYWHERE_API_KEY`. ### Test MCP connection ```bash # List tools curl -X POST https://mcp.techmavie.digital/keywords-everywhere/mcp \ -H "Content-Type: application/json" \ -d '{"jsonrpc":"2.0","id":1,"method":"initialize"}' ``` ## Security Notes - The MCP server runs behind nginx with SSL - API key is stored in `.env` file (not committed to git) - CORS is configured to allow all origins (required for MCP clients) - Rate limiting can be added at nginx level if needed

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/hithereiamaliff/mcp-keywords-everywhere'

If you have feedback or need assistance with the MCP directory API, please join our Discord server