MCP ਡਿਪਲਾਈਮੈਂਟ: ਹੋਸਟਿੰਗ ਦੀ ਅਸਲ ਲਾਗਤ

ਜ਼ਿਆਦਾਤਰ ਟਿਊਟੋਰਿਅਲ ਤੁਹਾਨੂੰ ਸਿਖਾਉਂਦੇ ਹਨ ਕਿ ਸਥਾਨਕ (locally) ਤੌਰ 'ਤੇ MCP ਸਰਵਰ ਕਿਵੇਂ ਬਣਾਇਆ ਜਾਵੇ। ਉਹ ਤੁਹਾਨੂੰ ਐਂਡਪੁਆਇੰਟਸ (endpoints) ਅਤੇ ਅਥੈਂਟੀਕੇਸ਼ਨ (authentication) ਬਾਰੇ ਸਿਖਾਉਂਦੇ ਹਨ। ਉਹ ਤੁਹਾਨੂੰ ਇਹ ਨਹੀਂ ਸਿਖਾਉਂਦੇ ਕਿ ਆਪਣੇ ਸਰਵਰ ਨੂੰ 24/7 ਕਿਵੇਂ ਚਾਲੂ ਰੱਖਿਆ ਜਾਵੇ।

ਮੈਂ ਆਪਣੇ ਨਿੱਜੀ ਗਿਆਨ ਦੇ ਅਧਾਰ (knowledge base) ਲਈ ਇੱਕ MCP ਸਰਵਰ ਬਣਾਉਣ ਵਿੱਚ ਤਿੰਨ ਮਹੀਨੇ ਲਗਾਏ। ਮੈਂ ਬਹੁਤ ਮੁਸ਼ਕਲਾਂ ਤੋਂ ਬਾਅਦ ਇਹ ਸਿੱਖਿਆ ਕਿ ਡਿਪਲਾਈਮੈਂਟ ਹੀ ਉਹ ਜਗ੍ਹਾ ਹੈ ਜਿੱਥੇ ਅਸਲ ਮੁਸ਼ਕਲਾਂ ਸ਼ੁਰੂ ਹੁੰਦੀਆਂ ਹਨ।

ਜੇਕਰ ਤੁਸੀਂ ਚਾਹੁੰਦੇ ਹੋ ਕਿ ਤੁਹਾਡੇ AI ਸਹਾਇਕ (assistants) ਮੋਬਾਈਲ, ਵੈੱਬ, ਜਾਂ ਕਲਾਊਡ ਕਲਾਇੰਟਸ ਤੋਂ ਕੰਮ ਕਰਨ, ਤਾਂ ਤੁਸੀਂ localhost 'ਤੇ ਨਿਰਭਰ ਨਹੀਂ ਰਹਿ ਸਕਦੇ। ਤੁਹਾਨੂੰ ਇਸਨੂੰ ਇੱਕ ਪਬਲਿਕ ਹੋਸਟ 'ਤੇ ਡਿਪਲਾਈ ਕਰਨਾ ਪਵੇਗਾ।

ਅਸਲ ਪ੍ਰੋਡਕਸ਼ਨ ਟੈਸਟਿੰਗ ਦੇ ਅਧਾਰ 'ਤੇ ਹੋਸਟਿੰਗ ਵਿਕਲਪਾਂ ਦਾ ਮੇਰਾ ਵੇਰਵਾ ਇੱਥੇ ਹੈ:

  • Heroku ਫਾਇਦੇ: ਆਸਾਨ ਡਿਪਲਾਈਮੈਂਟ ਅਤੇ ਆਟੋਮੈਟਿਕ HTTPS। ਨੁਕਸਾਨ: ਮੁਫ਼ਤ ਟਾਇਰ (free tier) 30 ਮਿੰਟਾਂ ਬਾਅਦ ਸੌਂ ਜਾਂਦਾ ਹੈ। ਇਸ ਨਾਲ 10 ਤੋਂ 30 ਸੈਕਿੰਡ ਦੀ ਦੇਰੀ ਹੁੰਦੀ ਹੈ। ਇਸ ਸਮੇਂ ਦੌਰਾਨ MCP ਕਲਾਇੰਟ ਅਕਸਰ ਟਾਈਮਆਊਟ ਹੋ ਜਾਂਦੇ ਹਨ ਅਤੇ ਫੇਲ੍ਹ ਹੋ ਜਾਂਦੇ ਹਨ। ਨਤੀਜਾ: 3/10। ਟੈਸਟਿੰਗ ਲਈ ਚੰਗਾ ਹੈ, ਰੋਜ਼ਾਨਾ ਵਰਤੋਂ ਲਈ ਮਾੜਾ ਹੈ।

  • Fly.io ਫਾਇਦੇ: ਤੇਜ਼ ਡਿਪਲਾਈਮੈਂਟ ਅਤੇ ਗਲੋਬਲ ਨੈੱਟਵਰਕ। ਤੁਹਾਡੀਆਂ ਫਾਈਲਾਂ ਲਈ ਪਰਸਿਸਟੈਂਟ ਵਾਲਯੂਮਜ਼ (persistent volumes) ਦਾ ਸਮਰਥਨ ਕਰਦਾ ਹੈ। ਨੁਕਸਾਨ: ਮੁਫ਼ਤ ਟਾਇਰ ਵਾਲੀਆਂ ਐਪਸ ਇੱਕ ਹਫ਼ਤੇ ਦੀ ਅਣਚਾਹੇ (inactivity) ਤੋਂ ਬਾਅਦ ਰੁਕ ਜਾਂਦੀਆਂ ਹਨ। ਉਹਨਾਂ ਨੂੰ ਚਾਲੂ ਰੱਖਣ ਲਈ ਤੁਹਾਨੂੰ ਇੱਕ cron job ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ। ਨਤੀਜਾ: 6/10। ਜ਼ਿਆਦਾਤਰ ਉਪਭੋਗਤਾਵਾਂ ਲਈ ਇੱਕ ਵਧੀਆ ਚੋਣ।

  • Serverless (ਜਿਵੇਂ ਕਿ Tencent Cloud SCF) ਫਾਇਦੇ: ਘੱਟ ਟ੍ਰੈਫਿਕ ਲਈ ਬਹੁਤ ਸਸਤਾ। ਜੇਕਰ ਤੁਸੀਂ ਚੀਨ ਵਰਗੇ ਖਾਸ ਖੇਤਰਾਂ ਵਿੱਚ ਹੋ ਤਾਂ ਬਹੁਤ ਘੱਟ ਲੇਟੈਂਸੀ (latency)। ਨੁਕਸਾਨ: ਕੋਲਡ ਸਟਾਰਟਸ (Cold starts) ਵਿੱਚ ਕੁਝ ਸੈਕਿੰਡ ਲੱਗਦੇ ਹਨ। ਤੁਹਾਨੂੰ ਸਟੇਟਲੈੱਸ ਆਰਕੀਟੈਕਚਰ (stateless architecture) ਲਈ ਡਿਜ਼ਾਈਨ ਕਰਨਾ ਪਵੇਗਾ। ਨਤੀਜਾ: 7.5/10। ਘੱਟ ਵਰਤੋਂ ਵਾਲੇ ਨਿੱਜੀ ਸਾਈਡ ਪ੍ਰੋਜੈਕਟਾਂ ਲਈ ਸੰਪੂਰਨ।

  • VPS (Virtual Private Server) ਫਾਇਦੇ: ਪੂਰਾ ਕੰਟਰੋਲ ਅਤੇ ਕੋਈ ਸੌਣ ਵਾਲੇ ਸਰਵਰ ਨਹੀਂ। ਅਨੁਮਾਨਿਤ ਮਹੀਨਾਵਾਰ ਲਾਗਤਾਂ। ਨੁਕਸਾਨ: ਤੁਹਾਨੂੰ ਸੁਰੱਖਿਆ, ਅੱਪਡੇਟਸ ਅਤੇ SSL ਦਾ ਪ੍ਰਬੰਧ ਖੁਦ ਕਰਨਾ ਪਵੇਗਾ। ਨਤੀਜਾ: ਕਈ ਉਪਭੋਗਤਾਵਾਂ ਜਾਂ ਉੱਚ ਟ੍ਰੈਫਿਕ ਲਈ ਸਭ ਤੋਂ ਵਧੀਆ।

ਡੀਬੱਗਿੰਗ (debugging) ਦੇ ਕਈ ਘੰਟੇ ਬਚਾਉਣ ਲਈ ਤਿੰਨ ਸਬਕ:

  • ਟਾਈਮਆਊਟ ਸੈੱਟ ਕਰੋ: MCP ਕਲਾਇੰਟ ਬੇਸਬਰ ਹੁੰਦੇ ਹਨ। ਜੇਕਰ ਤੁਹਾਡੀ ਸਰਚ 10 ਸੈਕਿੰਡ ਤੋਂ ਵੱਧ ਸਮਾਂ ਲੈਂਦੀ ਹੈ, ਤਾਂ ਕਲਾਇੰਟ ਕਨੈਕਸ਼ਨ ਕੱਟ ਦਿੰਦਾ ਹੈ। ਆਪਣੇ ਸਰਵਰ ਕਨਫਿਗਰੇਸ਼ਨ ਵਿੱਚ ਇੱਕ ਸਖ਼ਤ ਕਨੈਕਸ਼ਨ ਟਾਈਮਆਊਟ ਸੈੱਟ ਕਰੋ।

  • ਹੈਲਥ ਚੈੱਕ (health check) ਜੋੜੋ: ਕਲਾਊਡ ਪ੍ਰੋਵਾਈਡਰਾਂ ਨੂੰ ਇਹ ਜਾਣਨ ਲਈ ਇੱਕ ਤਰੀਕੇ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ ਕਿ ਤੁਹਾਡੀ ਐਪ ਚਾਲੂ ਹੈ। ਇੱਕ ਸਧਾਰਨ /health ਐਂਡਪੁਆਇੰਟ ਬਣਾਓ।

  • CORS ਨੂੰ ਠੀਕ ਕਰੋ: ਅਥੈਂਟੀਕੇਸ਼ਨ ਅਕਸਰ CORS preflight ਰਿਕੁਐਸਟਾਂ ਨੂੰ ਤੋੜ ਦਿੰਦੀ ਹੈ। ਯਕੀਨੀ ਬਣਾਓ ਕਿ ਤੁਹਾਡੀ ਕਨਫਿਗਰੇਸ਼ਨ ਬਿਨਾਂ ਅਥੈਂਟੀਕੇਸ਼ਨ ਦੇ OPTIONS ਰਿਕੁਐਸਾਂ ਦੀ ਇਜਾਜ਼ਤ ਦਿੰਦੀ ਹੈ।

ਮੇਰਾ ਵਰਕਫਲੋ (workflow):

  1. ਸਥਾਨਕ ਤੌਰ 'ਤੇ ਬਣਾਓ।
  2. ਰਿਮੋਟ ਕਲਾਇੰਟਸ ਨਾਲ ਟੈਸਟ ਕਰਨ ਲਈ ngrok ਦੀ ਵਰਤੋਂ ਕਰੋ।
  3. ਇੱਕ ਵਾਰ ਸਥਿਰ ਹੋਣ 'ਤੇ Fly.io ਜਾਂ VPS 'ਤੇ ਡਿਪਲਾਈ ਕਰੋ।

ਡਿਪਲਾਈਮੈਂਟ ਕੋਈ ਚਮਕਦਾਰ ਕੰਮ ਨਹੀਂ ਹੈ, ਪਰ ਇਹ ਜ਼ਰੂਰੀ ਹੈ। ਇੱਕ ਸੰਪੂਰਨ ਸਰਵਰ ਬੇਕਾਰ ਹੈ ਜੇਕਰ ਤੁਹਾਡਾ AI ਕਲਾਇੰਟ ਇਸ ਨਾਲ ਕਨੈਕਟ ਨਹੀਂ ਹੋ ਸਕਦਾ।

ਤੁਸੀਂ ਆਪਣੇ MCP ਸਰਵਰਾਂ ਨੂੰ ਹੋਸਟ ਕਰਨ ਲਈ ਕੀ ਵਰਤ ਰਹੇ ਹੋ? ਮੈਨੂੰ ਕੁਮੈਂਟਸ ਵਿੱਚ ਦੱਸੋ।

ਸਰੋਤ: https://dev.to/kevinten10/mcp-deployment-what-they-dont-tell-you-about-hosting-your-mcp-server-from-3-months-of-production-nb8

ਵਿਕਲਪਿਕ ਲਰਨਿੰਗ ਕਮਿਊਨਿਟੀ: https://t.me/GyaanSetuAi