File size: 1,990 Bytes
6999fe2
95d2319
996f66a
 
 
 
 
 
 
 
 
 
95d2319
01ed9c2
6999fe2
 
 
3dc3ed2
 
 
 
 
 
 
 
 
 
 
6999fe2
 
 
 
 
 
 
3dc3ed2
 
 
6999fe2
 
 
 
 
 
 
3dc3ed2
6999fe2
 
 
 
 
 
 
01ed9c2
6999fe2
 
 
 
3dc3ed2
01ed9c2
95d2319
 
 
 
01ed9c2
95d2319
01ed9c2
 
95d2319
 
 
 
 
 
01ed9c2
 
6999fe2
 
 
95d2319
01ed9c2
95d2319
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
#!/bin/bash

# --- Diagnostic Step ---
echo "--- Checking Playwright install location and permissions ---"
echo "Running as user: $(whoami)"
echo "PLAYWRIGHT_BROWSERS_PATH environment variable: ${PLAYWRIGHT_BROWSERS_PATH}"
echo "Listing contents of /app/.cache/ms-playwright:"
ls -lR /app/.cache/ms-playwright
echo "--- End of Diagnostic Step ---"
# --- End of Diagnostic ---


# Create config.json dynamically using environment variables
# IMPORTANT: Comments are OK here in the shell script, but NOT inside the EOF block below.
cat <<EOF > /app/config.json
{
  "mcpServers": {
    "grok2_images": {
      "command": "npx",
      "args": [
        "-y",
        "grok2-image-mcp-server@0.1.3"
      ],
      "env": {
        "XAIAPI_KEY": "${XAIAPI_KEY}",
        "XAIAPI_BASE_URL": "${XAIAPI_BASE_URL}"
      }
    },
    "tavily-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "tavily-mcp@0.1.2"
      ],
      "env": {
        "TAVILY_API_KEY": "${TAVILY_API_KEY}"
      }
    },
    "github": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-github"
      ],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "${GITHUB_PERSONAL_ACCESS_TOKEN}"
      }
    },
    "filesystem": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-filesystem",
        "/home/mcp"
      ]
    },
    "edgeone-pages-mcp-server": {
      "command": "npx",
      "args": ["edgeone-pages-mcp"]
    },
    "fetcher-mcp": {
      "command": "npx",
      "args": [
          "-y",
          "fetcher-mcp@0.2.6"
      ],
      "env": {}
    },
    "g-search-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "g-search-mcp"
      ],
      "env": {}
    }
  }
}
EOF

# Print the generated config for debugging (optional but recommended)
echo "Generated config.json:"
cat /app/config.json
echo "---"

# Execute mcpo with the generated config file
exec mcpo --config /app/config.json