MCP vs API: ಸಾಂಪ್ರದಾಯಿಕ APIಗಳು AI ಏಜೆಂಟ್ಗಳಿಗೆ ಏಕೆ ವಿಫಲವಾಗುತ್ತವೆ
ಸಾಂಪ್ರದಾಯಿಕ APIಗಳು ನಿಮ್ಮ AI ಏಜೆಂಟ್ಗಳನ್ನು ನಿಧಾನ ಮತ್ತು ದುಬಾರಿ ಮಾಡುತ್ತಿವೆ.
ನಾನು REST ಮತ್ತು GraphQL ಬಳಸಿ ವೆಬ್ ಆಪ್ಗಳನ್ನು ನಿರ್ಮಿಸಲು ವರ್ಷಗಟ್ಟಲೆ ಸಮಯ ವ್ಯಯಿಸಿದ್ದೇನೆ. ಸ್ಟೇಟ್ (state) ಅನ್ನು ಹೇಗೆ ನಿರ್ವಹಿಸಬೇಕು ಮತ್ತು ಪೇಲೋಡ್ಗಳನ್ನು (payloads) ಹೇಗೆ ಉತ್ತಮಗೊಳಿಸಬೇಕು ಎಂಬುದು ನನಗೆ ತಿಳಿದಿದೆ. ಆದರೆ AI ಏಜೆಂಟ್ಗಳಿಗಾಗಿ ನಿರ್ಮಿಸುವುದು ವಿಭಿನ್ನವಾಗಿದೆ.
ನಾವು ಹೆಚ್ಚಾಗಿ LLMಗಳನ್ನು ಮಾನವ ಡೆವಲಪರ್ಗಳಂತೆ ಪರಿಗಣಿಸುತ್ತೇವೆ. ನಾವು ಅವುಗಳಿಗೆ ಒಂದು API ಎಂಡ್ಪಾಯಿಂಟ್ ನೀಡುತ್ತೇವೆ ಮತ್ತು ಅವು ಕೆಲಸ ಮಾಡುತ್ತವೆ ಎಂದು ನಿರೀಕ್ಷಿಸುತ್ತೇವೆ. ಇದು ಒಂದು ತಪ್ಪು.
Model Context Protocol (MCP) ಇದನ್ನು ಬದಲಾಯಿಸುತ್ತದೆ. ಇದು AI ಕನೆಕ್ಟಿವಿಟಿಗಾಗಿ ಇರುವ ಒಂದು ಓಪನ್ ಸ್ಟ್ಯಾಂಡರ್ಡ್ ಆಗಿದೆ. ನೀವು LLMಗಳನ್ನು ನಿಮ್ಮ ಟೂಲ್ಗಳಿಗೆ ಸಂಪರ್ಕಿಸಲು ಕಸ್ಟಮ್ ಗ್ಲೂ ಕೋಡ್ (glue code) ಬರೆಯುತ್ತಿದ್ದರೆ, ನೀವು ತಾಂತ್ರಿಕ ಸಾಲವನ್ನು (technical debt) ಸೃಷ್ಟಿಸುತ್ತಿದ್ದೀರಿ ಎಂದರ್ಥ.
ಸಾಂಪ್ರದಾಯಿಕ APIಗಳು AI ಏಜೆಂಟ್ಗಳಿಗೆ ಏಕೆ ವಿಫಲವಾಗುತ್ತವೆ:
- N x M ಸಮಸ್ಯೆ: ನಿಮ್ಮ ಬಳಿ 5 AI ಫ್ರೇಮ್ವರ್ಕ್ಗಳು ಮತ್ತು 5 ಎಂಟರ್ಪ್ರೈಸ್ ಟೂಲ್ಗಳಿದ್ದರೆ, ನೀವು 25 ಕಸ್ಟಮ್ ಕನೆಕ್ಟರ್ಗಳನ್ನು ಬರೆಯಬೇಕಾಗುತ್ತದೆ. MCP ಇದನ್ನು N + M ಆರ್ಕಿಟೆಕ್ಚರ್ ಆಗಿ ಬದಲಾಯಿಸುತ್ತದೆ. ಪ್ರತಿಯೊಂದು ಟೂಲ್ ಒಂದು MCP ಸರ್ವರ್ ಅನ್ನು ಬಳಸುತ್ತದೆ. ಪ್ರತಿಯೊಂದು ಏಜೆಂಟ್ ಒಂದು MCP ಕ್ಲೈಂಟ್ ಅನ್ನು ಬಳಸುತ್ತದೆ.
- ಸ್ಟ್ಯಾಟಿಕ್ vs ಡೈನಾಮಿಕ್: REST APIಗಳಿಗೆ ಹಾರ್ಡ್ಕೋಡ್ ಮಾಡಲಾದ ಪಥಗಳು (hardcoded paths) ಬೇಕಾಗುತ್ತವೆ. AI ಏಜೆಂಟ್ಗಳು ರನ್ಟೈಮ್ನಲ್ಲಿ ಟೂಲ್ಗಳನ್ನು ಪತ್ತೆಹಚ್ಚಬೇಕಾಗುತ್ತದೆ. MCP ಏಜೆಂಟ್ಗಳು ಡೈನಾಮಿಕ್ ಡಿಸ್ಕವರಿ ಮೂಲಕ ಲಭ್ಯವಿರುವ ಸಾಮರ್ಥ್ಯಗಳನ್ನು ತಕ್ಷಣವೇ ನೋಡಲು ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ.
- ಟೋಕನ್ ವ್ಯರ್ಥ (Token Waste): ಸಾಂಪ್ರದಾಯಿಕ APIಗಳು ಹೆಚ್ಚಾಗಿ ಬೃಹತ್ JSON ಪೇಲೋಡ್ಗಳನ್ನು ಹಿಂತಿರುಗಿಸುತ್ತವೆ. ದೊಡ್ಡ ಪೇಲೋಡ್ಗಳು ಹಣವನ್ನು ವ್ಯರ್ಥ ಮಾಡುತ್ತವೆ ಮತ್ತು ವಿಳಂಬವನ್ನು (latency) ಹೆಚ್ಚಿಸುತ್ತವೆ. ಅವು 'ಕಾಂಟೆಕ್ಸ್ಟ್ ರಾಟ್' (context rot) ಗೆ ಕಾರಣವಾಗುತ್ತವೆ, ಇದರಿಂದ ಮಾಡೆಲ್ ತನ್ನ ಗಮನವನ್ನು ಕಳೆದುಕೊಳ್ಳುತ್ತದೆ. MCP ಮಾಡೆಲ್ನ LLM ವಿಂಡೋಗಳಿಗೆ ಅನುಗುಣವಾಗಿ ಆಪ್ಟಿಮೈಸ್ ಮಾಡಿದ ಡೇಟಾವನ್ನು ನೀಡುತ್ತದೆ.
- ಸ್ಟೇಟ್ಲೆಸ್ನೆಸ್ (Statelessness): REST ಸ್ಟೇಟ್ಲೆಸ್ ಆಗಿದೆ. AI ಏಜೆಂಟ್ಗಳು ಆಲೋಚನೆ ಮತ್ತು ಕ್ರಿಯೆಯ ನಿರಂತರ ಲೂಪ್ನಲ್ಲಿ ಕೆಲಸ ಮಾಡುತ್ತವೆ. MCP ಬೃಹತ್ ಡೇಟಾವನ್ನು ಮತ್ತೆ ಮತ್ತೆ ಕಳುಹಿಸದೆ, ಕಾಂಟೆಕ್ಸ್ಟ್ ಅನ್ನು ಜೀವಂತವಾಗಿಡಲು ಸ್ಟೇಟ್ಫುಲ್ ಸೆಷನ್ಗಳನ್ನು (stateful sessions) ಬಳಸುತ್ತದೆ.
MCP ಮೂರು ಪ್ರಮುಖ ಭಾಗಗಳನ್ನು ಬಳಸುತ್ತದೆ:
- ಟೂಲ್ಸ್ (Tools): SQL ಕ್ವೇರಿಯನ್ನು ರನ್ ಮಾಡುವಂತಹ ಮಾಡೆಲ್ ತೆಗೆದುಕೊಳ್ಳುವ ಕ್ರಮಗಳು.
- ರಿಸೋರ್ಸಸ್ (Resources): ಲಾಗ್ ಫೈಲ್ಗಳು ಅಥವಾ ಡಾಕ್ಯುಮೆಂಟ್ಗಳಂತಹ ಓದುವಿಕೆಗೆ ಮಾತ್ರ ಸೀಮಿತವಾದ (read-only) ಡೇಟಾ.
- ಪ್ರಾಂಪ್ಟ್ಗಳು (Prompts): ಮಾಡೆಲ್ನ ತರ್ಕಕ್ಕೆ ಮಾರ್ಗದರ್ಶನ ನೀಡುವ ಟೆಂಪ್ಲೇಟ್ಗಳು.
MCP ನಿಮ್ಮ ಡೇಟಾಬೇಸ್ ಅಥವಾ ಬ್ಯಾಕೆಂಡ್ ಅನ್ನು ಬದಲಾಯಿಸುವುದಿಲ್ಲ. ನಿಮ್ಮ MCP ಸರ್ವರ್ ಇನ್ನೂ ನಿಮ್ಮ ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ APIಗಳನ್ನು ಕರೆಯುತ್ತದೆ. ಆ ಸೇವೆಗಳನ್ನು LLMಗೆ ಸಂಪರ್ಕಿಸಲು ನೀವು ಬರೆಯುವ ಅಸ್ಥಿರವಾದ (brittle) ಕೋಡ್ ಅನ್ನು MCP ಬದಲಾಯಿಸುತ್ತದೆ.
ನಿಮ್ಮ LLM ಕರೆಗಳಿಗಾಗಿ JSON ಅನ್ನು ಸ್ಟ್ರಿಂಗ್ಫೈ (stringify) ಮಾಡಲು ಕಸ್ಟಮ್ ಫಂಕ್ಷನ್ಗಳನ್ನು ಬರೆಯುವುದನ್ನು ನಿಲ್ಲಿಸಿ. ಏಜೆಂಟಿಕ್ ಭವಿಷ್ಯಕ್ಕಾಗಿ ಸ್ಕೇಲ್ ಆಗಬಲ್ಲ ಆರ್ಕಿಟೆಕ್ಚರ್ ಅನ್ನು ನಿರ್ಮಿಸಿ.
ನಿಮ್ಮ ಅನಿಸಿಕೆಗಳೇನು? ನೀವು ಈಗಾಗಲೇ MCP ಬಳಸುತ್ತಿದ್ದೀರಾ ಅಥವಾ ಕಸ್ಟಮ್ ಫಂಕ್ಷನ್ ಕಾಲಿಂಗ್ನಲ್ಲೇ ಮುಂದುವರಿಯುತ್ತಿದ್ದೀರಾ?
ಮೂಲ: https://dev.to/chaudharidevam/mcp-vs-api-why-traditional-apis-are-failing-ai-agents-28m8
ಐಚ್ಛಿಕ ಕಲಿಕಾ ಸಮುದಾಯ: https://t.me/GyaanSetuAi
