diff --git a/mcp-gateway/linkedin-mcp/SETUP.md b/mcp-gateway/linkedin-mcp/SETUP.md deleted file mode 100644 index 79c969d..0000000 --- a/mcp-gateway/linkedin-mcp/SETUP.md +++ /dev/null @@ -1,170 +0,0 @@ -# LinkedIn MCP Server Setup - -## Prerequisites - -1. **Python 3.12+** on your host machine -2. **LinkedIn account** with valid credentials -3. **Create LinkedIn profile locally** (one-time setup) - -## Step 1: Install LinkedIn MCP (Host Machine) - -Run this on your **host machine** (not in Docker): - -```bash -pip install linkedin-scraper-mcp -``` - -## Step 2: Create LinkedIn Profile (One-time Authentication) - -Run this command to authenticate and create your profile: - -```bash -linkedin-mcp-server --login -``` - -Or use the alternate command: - -```bash -linkedin-scraper-mcp --login -``` - -This will: -- Open a browser window -- Ask you to log into LinkedIn -- Handle captcha challenges (manual solving required) -- Save your session at `~/.linkedin-mcp/profile/` - -**Important:** Only one active LinkedIn session is supported. If you need to re-authenticate: -```bash -rm -rf ~/.linkedin-mcp/profile -linkedin-mcp-server --login -``` - -## Step 3: Build Docker Image - -```bash -cd /mnt/NVME/Docker/mcp-gateway -docker compose build linkedin-mcp -``` - -## Step 4: Start the Service - -```bash -docker compose up linkedin-mcp -``` - -The service is already configured in your `docker-compose.yml` with: -- Python 3.12 slim image -- LinkedIn profile mounted from `~/.linkedin-mcp/profile` -- LOG_LEVEL environment variable from `.env` -- Automatic restart - -## Configuration Options - -### Environment Variables (in .env) - -```env -# LinkedIn MCP Server -LINKEDIN_LOG_LEVEL=INFO -LINKEDIN_TIMEOUT=10000 -``` - -### Available Log Levels - -- `DEBUG` - Detailed logging -- `INFO` - Standard logging (recommended) -- `WARNING` - Only warnings and errors -- `ERROR` - Only errors - -## Docker Integration - -The Dockerfile: -- Uses `python:3.12-slim` as base image -- Clones the GitHub repository -- Installs dependencies with pip -- Mounts profile from host at `~/.linkedin-mcp/profile:/root/.linkedin-mcp/profile` - -## Troubleshooting - -### Profile Not Found -```bash -# Verify profile exists on host -ls ~/.linkedin-mcp/profile - -# Create new profile if missing -linkedin-mcp-server --login -``` - -### Build Fails - Git Clone Issues -- Ensure you have internet access -- Check git is installed: `git --version` -- Try manual clone first: `git clone https://github.com/stickerdaniel/linkedin-mcp-server.git` - -### Container Won't Start -Check the logs: -```bash -docker logs mcp-linkedin - -# Restart container -docker compose restart mcp-linkedin -``` - -### Session Expired -LinkedIn sessions may expire. To refresh: -```bash -# Delete old profile -rm -rf ~/.linkedin-mcp/profile - -# Create new profile -linkedin-mcp-server --login - -# Restart container -docker compose restart mcp-linkedin -``` - -### Captcha Loop -If you keep hitting captchas: -1. Create profile manually on your machine first -2. Mount that profile into Docker -3. Run with `--no-headless` temporarily to debug - -## Integration with Gateway Proxy - -The gateway proxy (`gateway_proxy.py`) should have: - -```python -MCP_BACKEND_LINKEDIN=http://mcp-linkedin:3000/mcp -``` - -This is already configured in the docker-compose.yml. - -## Verification - -Test the connection: - -```bash -# Check if container is running -docker ps | grep mcp-linkedin - -# View logs -docker logs mcp-linkedin - -# Check gateway can reach it -docker exec mcp-gateway curl http://mcp-linkedin:3000/mcp/tools -``` - -## Entry Point - -The container runs: -``` -linkedin-mcp-server --log-level INFO -``` - -This starts the MCP server that communicates with the gateway proxy via HTTP. - -## Performance Notes - -- First run may be slower as Patchright downloads browser dependencies -- Profile authentication takes 30-60 seconds -- Subsequent tool calls should respond in 1-5 seconds -- Browser automation is CPU-intensive; allocate resources accordingly