#!/usr/bin/env node /** * Optional standalone HTTP process that only serves MCP (no Torznab / qBittorrent). * Prefer `npm start` (main app) which mounts MCP at POST /mcp on the same port. * * Env: * WEBSHARE_USERNAME, WEBSHARE_PASSWORD (required) * PORT (default 3001) * MCP_PATH (default /mcp) */ const express = require('express'); const { registerMcpHttp } = require('./mcp-http'); const PORT = process.env.PORT || 3001; const MCP_PATH = process.env.MCP_PATH || '/mcp'; const USERNAME = process.env.WEBSHARE_USERNAME || ''; const PASSWORD = process.env.WEBSHARE_PASSWORD || ''; const app = express(); app.use(express.json({ limit: '4mb' })); app.get('/health', (req, res) => { res.json({ ok: true, mcp: MCP_PATH, guest: !USERNAME || !PASSWORD }); }); registerMcpHttp(app, { username: USERNAME, password: PASSWORD, path: MCP_PATH, }); app.listen(PORT, () => { const mode = !USERNAME || !PASSWORD ? 'guest' : 'auth'; console.log(`webshare-api MCP (HTTP) listening on :${PORT}${MCP_PATH} (${mode})`); });