MCP பதிப்பு 2, ஜூலை 28, 2026 அன்று நடைமுறைக்கு வருகிறது. இது ஒவ்வொரு handshake, session-ID header மற்றும் Model Context Protocol (MCP)-ஐ sticky-session சர்வர்களுடன் இணைத்திருந்த மூன்று பழைய துணை அமைப்புகளையும் (legacy subsystems) நீக்குகிறது. இந்த புரோட்டோகால் முற்றிலும் stateless ஆக மாறுகிறது, எனவே client state-ஐப் பாதுகாத்து வைக்க வேண்டிய அவசியம் இன்றி, எந்தவொரு autoscaled அல்லது serverless instance-உம் எந்தவொரு கோரிக்கையையும் (request) கையாள முடியும்.

இந்த மாற்றம் ஏன் முக்கியமானது

MCP v1-இல், ஒரு client initialize handshake மூலம் ஒரு session-ஐத் தொடங்க வேண்டியிருந்தது; பின்னர் சர்வர் ஒரு Mcp-Session-Id-ஐ ஒதுக்கும். அதன் பிறகு வரும் ஒவ்வொரு அழைப்பும் (call) அந்த header-ஐக் கொண்டிருக்க வேண்டும், இது பயனரை ஒரு குறிப்பிட்ட backend node-உடன் மட்டுமே இணைத்து வைத்திருக்கும். Load balancers session affinity-ஐக் கட்டாயப்படுத்த வேண்டியிருந்தது, இது தாமதத்தையும் (latency) செயல்பாட்டுச் சிரமத்தையும் (operational friction) ஏற்படுத்தியது.

Statelessness அந்தச் சிரமத்தைப் போக்குகிறது. இப்போது அனைத்து context-களும் ஒவ்வொரு HTTP call-உடனும் செல்லும் பிரத்யேக meta fields-இல் உள்ளன. ஒரு request எந்தவொரு instance-க்கும் செல்லலாம், அது செயலாக்கப்படலாம், மேலும் பதில் (response) அனுப்பப்பட்ட அடுத்த கணமே அந்த instance நீக்கப்படலாம். Serverless platforms, container-orchestrated clusters அல்லது தேவைக்கேற்ப pods-களை உருவாக்கும் (spin up/down) எந்தவொரு சூழலைப் பயன்படுத்தும் குழுக்களும், இப்போது இந்த புரோட்டோகாலைத் தங்கள் உள்கட்டமைப்பிற்கு (infrastructure) ஏற்பப் பயன்படுத்திக் கொள்ள முடியும்.

எவை நீக்கப்படுகின்றன

நிலையான இணைப்புகளை (persistent connections) சார்ந்திருந்த மூன்று துணை அமைப்புகள் அதிகாரப்பூர்வமாகப் பயன்பாட்டிலிருந்து நீக்கப்படுகின்றன (deprecated):

  • Sampling – v1-இல், ஒரு சர்வர் உரையை உருவாக்க (generate text) client-இடம் கேட்க முடியும், இதற்கு ஒரு திறந்த session தேவைப்பட்டது. v2-இல், சர்வர் நேரடியாக large-language-model provider-ஐ அழைக்க வேண்டும் அல்லது InputRequiredResult முறையைப் பயன்படுத்த வேண்டும்; இதில் client ஒரு தொடர்ச்சியான கோரிக்கையில் (follow-up request) விடுபட்ட உள்ளீட்டை (input) வழங்கும்.
  • Roots – இதற்கு முன்பு, clients அனுப்பிய URIs சர்வரின் வெளிப்புற வளங்களுக்கான (external resources) பார்வையை மட்டுப்படுத்தின. புதிய அணுகுமுறையில், அந்த URIs tool parameters-ஆக அனுப்பப்படுகின்றன அல்லது request-இன் resource fields-இல் இணைக்கப்படுகின்றன, இதன் மூலம் தனித்த “roots” பேச்சுவார்த்தை (negotiation) படிநிலை நீக்கப்படுகிறது.
  • Logging – Protocol-level logging headers நீக்கப்படுகின்றன. உள்ளூர் பிழைத்திருத்தத்திற்கு (local debugging) stderr-இல் எழுதவும் அல்லது production observability-க்காக OpenTelemetry-ஐப் பயன்படுத்தவும்.

இந்த நீக்க கால அவகாசம் (deprecation window) ஓராண்டு நீடிக்கும். நீக்கப்பட்ட அம்சங்கள் அந்த காலத்திற்குத் தொடர்ந்து செயல்படும், இது புரோட்டோகால் அவற்றை நிராகரிப்பதற்கு முன் குழுக்கள் மாற்றங்களைச் செய்ய (refactor) நேரமளிக்கும்.

Statelessness தவிர வேறு என்ன புதியவை உள்ளன?

MCP v2 இரண்டு அதிகாரப்பூர்வ விரிவாக்கங்களை (extensions) சேர்க்கிறது:

  • MCP Apps – புரோட்டோகால் அழைக்கக்கூடிய server-rendered user interfaces-களை விவரிக்க ஒரு இலகுவான வழி.
  • Tasks – பல request-response சுழற்சிகளைத் தாண்டிச் செல்லும் நீண்ட காலச் செயல்பாடுகளைக் (long-running operations) கையாளுவதற்கான ஒரு முறை.

இந்த இரண்டு விரிவாக்கங்களும் stateless request மாதிரியை அடிப்படையாகக் கொண்டவை மற்றும் மறைமுகமான session state-ஐத் தவிர்க்கின்றன.

அபாயங்கள் மற்றும் மாற்றுக்கருத்துகள்

இந்த மாற்றம் ஒரு எளிதான (plug-and-play) மேம்படுத்தல் அல்ல. v2 SDK-கள் இன்னும் beta நிலையில் உள்ளன, மேலும் நிலையான வெளியீடு (stable release) வருவதற்கு முன் அவற்றின் public APIs மாறக்கூடும். உடைந்து போகக்கூடிய மாற்றங்களை (breaking changes) தாங்க முடியாத production workloads-களுக்கு, v2 SDK நிலையான நிலைக்கு வரும் வரை stable v1 SDK-விலேயே தொடரவும்.

டெவலப்பர்கள் நீக்கப்பட்ட மூன்று துணை அமைப்புகளில் ஏதேனும் பயன்பாட்டில் உள்ளதா என்பதைத் தற்போதைய குறியீட்டில் (existing code) ஆய்வு செய்ய வேண்டும்.

நடைமுறை ரீதியான இடமாற்றத் திட்டம் (A pragmatic migration roadmap)

  1. இன்றே ஆய்வு செய்யுங்கள் (Audit today) – உங்கள் சேவைகளில் handshake, Mcp-Session-Id, sampling calls, roots URIs மற்றும் protocol-level logging ஆகியவற்றின் பயன்பாட்டை ஸ்கேன் செய்யுங்கள். stateless மாதிரியின் கீழ் முறியக்கூடிய (break) குறியீடுகளைக் கண்டறியுங்கள்.
  2. முக்கியமற்ற ஒரு நோடில் (non-critical node) சோதனை செய்யுங்கள் – ஒரு நிலையான v2 SDK வெளியிடப்படும்போது, ஒரு sandbox server-ஐ உருவாக்கி, அதை ஒரு test client-உடன் இணைத்து, தேவையான அனைத்து meta fields-களும் உள்ளனவா மற்றும் அவை சரியாகப் புரிந்துகொள்ளப்படுகின்றனவா என்பதைச் சரிபார்க்கவும்.
  3. காலக்கெடுவிற்கு முன் முழுமையான இடமாற்றம் – runtime நிராகரிப்புகளைத் தவிர்க்க, ஓராண்டு கால அவகாசம் முடிவதற்குள் அனைத்து production nodes-களிலும் மாற்றத்தை நிறைவு செய்யவும்.

அடுத்து எதைக் கவனிக்க வேண்டும்?

  • நிலையான SDK வெளியீடு (Stable SDK release) – Beta SDK-கள் முடக்கப்பட்டு (frozen), ஒரு குறிப்பிட்ட பதிப்பு கொண்ட நிலையான தொகுப்பு (versioned stable package) வெளியிடப்படும். எந்தவொரு முக்கியமான பயன்பாட்டிற்கும் (critical deployment) அந்தப் பதிப்பே பாதுகாப்பான இலக்காக இருக்கும்.

இந்த மாற்றத்திற்கு குறியீடு மாற்றங்களும் (code changes) மற்றும் ஒரு குறுகிய கால beta-SDK சோதனைத் தேவையும் இருக்கும், ஆனால் இதன் பலன் எந்தவொரு LLM-அடிப்படையிலான பயன்பாட்டிற்கும் (LLM-backed application) மிகவும் சுத்தமான மற்றும் எளிதில் விரிவாக்கக்கூடிய (scalable) ஒரு ஒருங்கிணைப்புப் புள்ளியாக அமையும்.

முக்கியக் குறிப்பு (Takeaway): உங்கள் stack இன்னும் MCP handshakes அல்லது நீக்கப்பட்ட மூன்று துணை அமைப்புகளைச் சார்ந்திருந்தால், இப்போதே ஆய்வைத் தொடங்குங்கள்; ஓராண்டு கால அவகாசம் என்பது போதுமானதாகத் தோன்றலாம், ஆனால் உண்மையான செலவு காலக்கெடு அல்ல, மாறாக குறியீட்டை மாற்றும் (refactor) முயற்சியே ஆகும்.