మీ .env ఫైళ్లలోకి AWS access keysలను పేస్ట్ చేయడం ఆపండి.

మనమందరం ఎప్పుడో ఒకప్పుడు ఈ పరిస్థితిని ఎదుర్కొన్నాము. రాత్రి సమయం, మీరు ఒక Lambda permission errorను డీబగ్ చేస్తున్నారు, మరియు మీ AI అసిస్టెంట్ ఊహాజనిత అకౌంట్ IDలతో సర్వీస్ పేర్లు లేదా ARNsలను సృష్టిస్తూనే ఉంది. మోడల్ ఊహలు చేయడం మానేసి, సమస్యలను పరిష్కరించడం ప్రారంభించాలంటే, అది మీ అసలు రిసోర్స్‌లను చూడాలని మీరు కోరుకుంటారు. నిస్సహాయత వల్ల, మీరు ఒక access keyని తీసుకుని, దానిని ఒక environment ఫైల్‌లో వేసి, ఏజెంట్‌కు అందిస్తారు. అది పనిచేస్తుంది. మీకు ఉపశమనం లభిస్తుంది. కానీ ఉదయం కాగానే, ఆ సీక్రెట్ మీ shell history, terminal scrollback లేదా దరిదాపుల్లో ఉన్న ఒక కమిట్ (commit) ద్వారా షేర్డ్ రిపోజిటరీకి వెళ్ళిపోయిందని మీరు గ్రహిస్తారు.

Model Context Protocol సరిగ్గా ఇలాంటి గందరగోళాన్ని నివారించడానికే రూపొందించబడింది.

MCP మీ AI ఏజెంట్ మరియు బాహ్య వ్యవస్థల మధ్య ఒక ప్రామాణిక వంతెనను (standard bridge) సృష్టిస్తుంది. ముడి క్రెడెన్షియల్స్‌ను (raw credentials) అందించి, ఏజెంట్ వాటిని లీక్ చేయకుండా ఉండాలని ఆశించడం కంటే, మీరు అథెంటికేషన్‌ను నిర్వహించే, పర్మిషన్లను పరిమితం చేసే మరియు మీ కీలను చాట్ విండో నుండి పూర్తిగా దూరంగా ఉంచే ఒక నియంత్రిత సర్వర్ ద్వారా కనెక్ట్ అవుతారు.

AWS కోసం, ప్రస్తుతం మీరు ఎంచుకోవడానికి రెండు అధికారిక MCP సర్వర్లు ఉన్నాయి. తప్పు దానిని ఎంచుకోవడం వల్ల మీ ఏజెంట్‌కు సమాచారం అందకపోవచ్చు లేదా తక్కువ పర్యవేక్షణతో ఎక్కువ యాక్సెస్ లభించవచ్చు.

తేడాను తెలుసుకోండి: నాలెడ్జ్ (Knowledge) vs. హ్యాండ్స్ (Hands)

మొదటి ఆప్షన్ AWS Knowledge MCP Server. దీనిని మొత్తం AWS డాక్యుమెంటేషన్ లైబ్రరీని గుర్తుంచుకున్న, కానీ మీ అకౌంట్‌కు లాగిన్ క్రెడెన్షియల్స్ లేని ఒక సీనియర్ ఇంజనీర్‌గా భావించండి. ఇది డిజైన్ పరంగా 'read-only', ఇది ఏజెంట్‌కు నిజమైన API సింటాక్స్, సరైన సర్వీస్ పేర్లు మరియు ప్రస్తుత బెస్ట్ ప్రాక్టీస్‌లను అందించడానికి అధికారిక AWS డాక్యుమెంటేషన్‌ను ఉపయోగిస్తుంది.

దీనిని ఉపయోగించడానికి మీకు AWS అకౌంట్ అవసరం లేదు. మీరు దీనిని మీ ఇన్‌ఫ్రాస్ట్రక్చర్‌కు కనెక్ట్ చేయరు. మీరు ఒక ఆర్కిటెక్చర్ డయాగ్రామ్‌ను గీస్తున్నప్పుడు, ECS లేదా EventBridge వంటి కొత్త సర్వీస్‌ను నేర్చుకుంటున్నప్పుడు, లేదా ఒక నిర్దిష్ట API కాల్ రెండు సంవత్సరాల క్రితం మీరు గుర్తుంచుకున్న విధంగానే పనిచేస్తుందో లేదో తనిఖీ చేస్తున్నప్పుడు దీనిని ఉపయోగిస్తారు. ఇది ఏజెంట్ ఊహలు చేయకుండా నిరోధిస్తుంది. మీరు S3 బకెట్ పాలసీ కోసం Terraform రాయమని అడిగితే, ఇది గత సంవత్సరం ముగిసిన శిక్షణ డేటా (training data) నుండి కాకుండా, నేరుగా మూలం (source) నుండి సమాచారాన్ని సేకరించడం వల్ల నిజమైన ఫీల్డ్‌లు మరియు చెల్లుబాటు అయ్యే విలువలను తెలుసు.

రెండవ ఆప్షన్ AWS MCP Server (Managed). ఇది మీ ఏజెంట్‌కు కేవలం జ్ఞాపకశక్తిని మాత్రమే కాకుండా, పనులు చేసే సామర్థ్యాన్ని (hands) కూడా ఇస్తుంది. సరైన అథెంటికేషన్‌తో, ఇది మీ CloudWatch లాగ్‌లను తనిఖీ చేయగలదు, మీ S3 బకెట్‌ల జాబితాను చూడగలదు, మీ DynamoDB టేబుల్ స్కీమాలను చదవగలదు, ఒక రోల్‌కు అనుసంధానించబడిన IAM పాలసీలను తనిఖీ చేయగలదు లేదా ఏ సెక్యూరిటీ గ్రూపులు ఇంటర్నెట్‌కు అందుబాటులో ఉన్నాయో వెరిఫై చేయగలదు. ఇది మీ అసలు అకౌంట్‌పై పనిచేస్తుంది, ఇది ప్రొడక్షన్ సమస్యలను పరిష్కరించడానికి లేదా లైవ్ ఇన్‌ఫ్రాస్ట్రక్చర్‌ను రీఫ్యాక్టర్ (refactoring) చేయడానికి శక్తివంతమైనది.

Managed సర్వర్ లాంగ్-లివ్డ్ కీలను (long-lived keys) అనుమతించదు. ఇది బ్రౌజర్ సైన్-ఇన్ ద్వారా OAuth ద్వారా లేదా SigV4 సైనింగ్ ఉపయోగించి AWS CLI ద్వారా అథెంటికేట్ అవుతుంది. ప్రతి టూల్ కాల్ షార్ట్-లివ్డ్ టోకెన్‌లతో జరుగుతుంది, ప్రతి చర్య CloudTrailలో ఒక ట్రాక్‌ను వదిలివేస్తుంది, మరియు ఏజెంట్ మీరు నిర్వచించిన IAM పరిమితుల లోపల మాత్రమే పనిచేస్తుంది. ఇది తన పర్మిషన్ల వెలుపలికి వెళ్లలేదు, ఎందుకంటే ఇది మీ సంస్థలోని ఇతర AWS యూజర్లు లేదా రోల్స్‌ను నియంత్రించే అదే పాలసీ ఇంజిన్ ద్వారా బంధించబడి ఉంటుంది.

గుర్తుంచుకోవలసిన గోల్డెన్ రూల్ ఇది: ఒక సర్వర్ మీ ఏజెంట్‌కు నాలెడ్జ్ (knowledge) ఇస్తుంది, మరొకటి దానికి హ్యాండ్స్ (hands) ఇస్తుంది. మీరు అధ్యయనం చేస్తున్నప్పుడు లేదా డిజైన్ చేస్తున్నప్పుడు Knowledge సర్వర్‌ను ఉపయోగించండి. మీరు ఆపరేటింగ్ లేదా రిపేర్ చేస్తున్నప్పుడు Managed సర్వర్‌ను ఉపయోగించండి.

చాలా పనుల కోసం AWS ఎందుకు Managed సర్వర్‌ను సిఫార్సు చేస్తుంది

AWS ఇప్పుడు చాలా మంది వినియోగదారులను రెండు సర్వర్లను సమాంతరంగా నడపడం కంటే, కేవలం ఒకే Managed MCP సర్వర్‌ను ఉపయోగించమని ప్రోత్సహిస్తోంది. Knowledge సర్వర్ అందించే డాక్యుమెంటేషన్ కాంటెక్స్ట్‌ను Managed సర్వర్ తనలో విలీనం చేసుకుంది, కాబట్టి ఇది ఒకే ఎండ్‌పాయింట్ కింద రిఫరెన్స్ మెటీరియల్ మరియు లైవ్ అకౌంట్ చర్యలు రెండింటినీ నిర్వహిస్తుంది.

రెండు సర్వర్లను ఒకేసారి నడపడం వల్ల అనుభవం దెబ్బతినవచ్చు. ఏజెంట్‌కు ఒకే రకమైన టూల్ నిర్వచనాలు (overlapping tool definitions) అందుతాయి మరియు అది కేవలం డాక్యుమెంటేషన్ చూడాలా లేదా మీ అకౌంట్‌పై లైవ్ APIని కాల్ చేయాలా అనే విషయంలో అయోమయానికి గురవుతుంది. ఆ సంకోచం వల్ల స్పందనలు ఆలస్యమవుతాయి మరియు అప్పుడప్పుడు టూల్-సెలక్షన్ లోపాలు జరుగుతాయి. Managed సర్వర్‌కు పరిమితం చేయడం వల్ల మీ కాన్ఫిగరేషన్ సరళతరం అవుతుంది మరియు ఏజెంట్ ఏకాగ్రతతో పనిచేస్తుంది.

OAuthతో Managed సర్వర్‌ను సెటప్ చేయడం

Managed

ఒక ప్రత్యేకమైన IAM role లేదా userను సృష్టించండి లేదా ఎంచుకోండి. మీ Root accountను ఉపయోగించకండి. దానికి AWSMCPSignInOAuthAccessPolicy అనే పేరున్న managed policyని అటాచ్ చేయండి. ఈ పాలసీ MCP యాక్సెస్ కోసం OAuth sign-in flowను ప్రారంభించడానికి అవసరమైన అనుమతులను మాత్రమే ఇస్తుంది. ఇది తనంతట తానుగా విస్తృతమైన అడ్మినిస్ట్రేటివ్ హక్కులను ఇవ్వదు. మీ ఏజెంట్‌కు ఉండే అసలు సామర్థ్యాలు, మీరు ఆ identityకి అటాచ్ చేసే మిగిలిన IAM పాలసీలపై ఆధారపడి ఉంటాయి. మీరు ఏజెంట్ CloudWatch logs చదవాలని కోరుకుంటూ, IAM లేదా billingని ఎప్పుడూ తాకకూడదని అనుకుంటే, logs:DescribeLogGroups మరియు logs:FilterLogEvents మాత్రమే అనుమతించేలా ఒక custom policyని రూపొందించండి.

Step 2: మీ క్లయింట్‌ను కాన్ఫిగర్ చేయండి

అధికారిక AWS MCP server URLను మీ క్లయింట్ కాన్ఫిగరేషన్‌లో జోడించండి. ఇది Claude Desktop, Claude Code, మరియు Kiro లతో పనిచేస్తుంది. మీ MCP settings ఫైల్‌లో, సర్వర్ ఎండ్‌పాయింట్‌ను రిజిస్టర్ చేయండి, తద్వారా క్లయింట్ AWSకి సంబంధించిన టూల్ కాల్స్‌ను ఎటు పంపాలి (route చేయాలి) అనేది తెలుసుకుంటుంది.

Step 3: మీ బ్రౌజర్ ద్వారా అథెంటికేట్ చేయండి

ఏజెంట్ మొదటిసారి AWS టూల్‌ను ఉపయోగించడానికి (invoke చేయడానికి) ప్రయత్నించినప్పుడు, మీ ఆపరేటింగ్ సిస్టమ్ ఒక బ్రౌజర్ విండోను తెరుస్తుంది. Step 1లో మీరు సిద్ధం చేసిన అదే IAM identityతో సైన్ ఇన్ చేయండి. OAuth flow, MCP సర్వర్‌కు స్వల్పకాలిక టోకెన్‌ను తిరిగి పంపుతుంది. మీకు ఎటువంటి secret key కనిపించదు. మీరు కాన్ఫిగరేషన్ ఫైల్‌లో దేనినీ పేస్ట్ చేయాల్సిన అవసరం లేదు. ఈ టోకెన్ ఆటోమేటిక్‌గా రిఫ్రెష్ అవుతుంది మరియు త్వరగా గడువు ముగుస్తుంది.

Step 4: ట్రస్ట్ బౌండరీని వెరిఫై చేయండి

అథెంటికేట్ అయిన తర్వాత, CloudTrailని ఓపెన్ చేసి, మీరు సృష్టించిన identity కింద చర్యలు (actions) కనిపిస్తున్నాయో లేదో నిర్ధారించుకోండి. ఆ నిర్దిష్ట IAM user లేదా role కి అనుసంధానించబడిన ListBuckets లేదా DescribeInstances వంటి ఈవెంట్‌లు మీకు కనిపించాలి. ఒకవేళ మీరు Root account యాక్టివిటీని చూస్తే, మీరు ఏదో తప్పు చేశారు మరియు వెంటనే ఆ సెషన్‌ను రద్దు (revoke) చేయాలి.

ఒకవేళ OAuth మీ వర్క్‌ఫ్లోకు సరిపోకపోతే, Managed server మీ వద్ద ఉన్న AWS CLI credentials ద్వారా SigV4 authenticationను కూడా సపోర్ట్ చేస్తుంది. ఈ పద్ధతిలో బ్రౌజర్ పాప్-అప్ రాదు, కానీ క్రెడెన్షియల్స్‌ను ఏజెంట్‌కు నేరుగా (raw) బయటపెట్టకుండా, సైనింగ్ మరియు సెషన్ మేనేజ్‌మెంట్‌ను MCP సర్వర్ నిర్వహించడం వల్ల మీకు ప్రయోజనం ఉంటుంది.

నిజంగా ఉపయోగపడే భద్రతా అలవాట్లు

ఒక MCP server దాని వెనుక ఉన్న IAM identity అంత సురక్షితంగా ఉంటుంది.

కనీస అధికారాలతో (least privilege) ప్రారంభించండి. ఒక తప్పుగా రూట్ చేయబడిన API Gateway ఇంటిగ్రేషన్‌ను సరిచేయడానికి మీ ఏజెంట్‌కు AdministratorAccess అవసరం లేదు. ప్రస్తుత టాస్క్‌కు అవసరమైన రీడ్ లేదా రైట్ పర్మిషన్లను మాత్రమే దానికి ఇవ్వండి, మరియు పని పూర్తయిన తర్వాత వాటిని మార్చండి (rotate) లేదా రద్దు చేయండి (revoke). మీరు ఒక role ఉపయోగిస్తుంటే, తక్కువ సెషన్ వ్యవధిని (short session duration) సెట్ చేయండి. మీరు ఒక userను ఉపయోగిస్తుంటే, మీ టూలింగ్ అనుమతించిన చోట MFAని ఎనేబుల్ చేయండి.

Root userగా ఎప్పుడూ అథరైజ్ చేయకండి. Root, సర్వీస్ కంట్రోల్ పాలసీలను బైపాస్ చేస్తుంది మరియు మొత్తం అకౌంట్‌లో పరిమితి లేని యాక్సెస్‌ను కలిగి ఉంటుంది. ఒకవేళ ఏజెంట్ ప్రాంప్ట్‌ను తప్పుగా అర్థం చేసుకుని రిసోర్స్‌లను డిలీట్ చేయడానికి ప్రయత్నిస్తే, ఆ రిక్వెస్ట్ ఒక బౌండరీ పాలసీ ద్వారా బ్లాక్ చేయబడాలి. Rootకు అటువంటి రక్షణ కవచాలు (guardrails) ఉండవు.

చివరగా, ఏజెంట్‌ను సూచనలను ఖచ్చితంగా పాటించే కానీ, కామన్ సెన్స్ లేని ఒక కొత్త ఇంటర్న్ లాగా పరిగణించండి. మీరు ఏమి అడిగితే, అది అక్షరాలా మరియు వెంటనే అమలు చేస్తుంది. మీరు "ఉపయోగించని సెక్యూరిటీ గ్రూపులను క్లీన్ చేయండి" అని చెబితే, అది మీరు ఇచ్చిన విస్తృతమైన ప్రమాణాలకు సరిపోతుందని మీ ప్రొడక్షన్ డేటాబేస్‌కు అనుసంధానించబడిన దానిని కూడా టెర్మినేట్ చేయవచ్చు. ఏవైనా విధ్వంసకరమైన (destructive) కమాండ్స్‌ను నిర్ధారించే ముందు సమీక్షించండి, ముఖ్యంగా ఏజెంట్‌కు రైట్ యాక్సెస్ ఉన్నప్పుడు.

అసలు సారాంశం

ఉపయోగం కోసం మీరు భద్రతను పణంగా పెట్టాల్సిన అవసరం లేదు. Managed AWS MCP Server మీ AI అసిస్టెంట్ మీ అసలు ఇన్‌ఫ్రాస్ట్రక్చర్‌ను చూడటానికి, తన సొంత హాలూసినేషన్లను (hallucinations) సరిదిద్దుకోవడానికి మరియు మీ టీమ్‌లోని మిగిలిన వారికి వర్తించే అదే IAM ఫ్రేమ్‌వర్క్ లోపల పనిచేయడానికి అనుమతిస్తుంది. ఎన్విరాన్మెంట్ ఫైల్స్‌లో సీక్రెట్స్‌ను దాచకుండానే మీరు లైవ్ కాంటెక్స్ట్‌ను పొందవచ్చు. OAuth flowని సెటప్ చేయండి, అనుమతులను నియంత్రించండి, మరియు ఏజెంట్ మీ పాలసీలకు కట్టుబడి ఉంటూనే, పూర్తి అవగాహనతో పని చేసేలా అనుమతించండి.