𝗕𝘂𝗶𝗹𝗱𝗶𝗻𝗴 𝗮 𝗣𝘆𝘁𝗵𝗼𝗻 𝗠𝗖𝗣 𝗦𝗲𝗿𝘃𝗲𝗿 𝗳𝗿𝗼𝗺 𝗦𝗰𝗿𝗮𝘁𝗰𝗵
Model Context Protocol (MCP) ఇప్పుడు ఒక పరిశ్రమ ప్రమాణం (industry standard). ఇది నెలకు 97 మిలియన్ల SDK డౌన్లోడ్లను చేరుకుంది. ప్రతి ప్రధాన AI సాధనం దీనిని ఉపయోగిస్తుంది. చాలా గైడ్లు కేవలం ఇప్పటికే ఉన్న సర్వర్లను ఎలా ఇన్స్టాల్ చేయాలో మాత్రమే చూపిస్తాయి. ఈ గైడ్ Python మరియు GitHub API ఉపయోగించి మీ స్వంత సర్వర్ను ఎలా నిర్మించాలో చూపిస్తుంది.
MCP అంటే ఏమిటి? ఇది AI క్లయింట్లు బాహ్య సేవలను (external services) పిలవడానికి అనుమతించే ఒక ప్రోటోకాల్. మీ సర్వర్ Claude లేదా Cursor వంటి సాధనాల నుండి వచ్చే రిక్వెస్ట్లను హ్యాండిల్ చేస్తుంది.
MCP యొక్క మూడు ప్రధాన భాగాలు:
- సాధనాలు (Tools): చర్యలు తీసుకోవడానికి లేదా డేటాను పొందడానికి AI పిలిచే ఫంక్షన్లు.
- వనరులు (Resources): ఫైల్లు లేదా డేటాబేస్ రికార్డుల వంటి రీడ్-ఓన్లీ (read-only) డేటా ఎండ్పాయింట్లు.
- ప్రాంప్ట్లు (Prompts): స్థిరమైన వర్క్ఫ్లోల కోసం తిరిగి ఉపయోగించగల ఇన్స్ట్రక్షన్ టెంప్లేట్లు.
మీ ప్రాజెక్ట్ను సెటప్ చేయండి
ఒక డైరెక్టరీని సృష్టించి, uv ఉపయోగించి అవసరమైన లైబ్రరీలను ఇన్స్టాల్ చేయండి:
mkdir github-mcp-server
cd github-mcp-server
uv init .
uv add "mcp[cli]" httpx
సర్వర్ను నిర్మించడం
క్లిష్టమైన పనులను నిర్వహించడానికి FastMCPని ఉపయోగించండి. ఒక మంచి MCP సర్వర్ మూడు నిర్దిష్ట ఫైల్లను ఉపయోగిస్తుంది: server.py, pyproject.toml, మరియు మీ GitHub టోకెన్ కోసం ఒక ఐచ్ఛిక .env ఫైల్.
డెవలప్మెంట్ కోసం ప్రో టిప్స్:
- Tool రిటర్న్ల కోసం Pydantic మోడల్లను ఉపయోగించండి. ఇది AIకి గందరగోళంగా ఉండే స్ట్రింగ్స్కు బదులుగా స్ట్రక్చర్డ్ డేటాను అందిస్తుంది.
- స్పష్టమైన docstrings రాయండి. మీ టూల్ను ఎప్పుడు ఉపయోగించాలో నిర్ణయించడానికి AI వీటిని చదువుతుంది.
- నంబరిక్ ఇన్పుట్లను క్లాంప్ (Clamp) చేయండి. AI మోడల్లు తరచుగా 0 లేదా 100 వంటి ఊహించని నంబర్లను పంపుతుంటాయి.
- ఎక్సెప్షన్లను (exceptions) హ్యాండిల్ చేయండి. మీ సర్వర్లో క్రాష్ జరిగితే మొత్తం కనెక్షన్ నిలిచిపోవచ్చు.
టెస్టింగ్ మరియు డిప్లాయ్మెంట్
Claudeలో టెస్ట్ చేయడానికి వేచి ఉండకండి. ముందుగా MCP Inspectorని ఉపయోగించండి. రన్ చేయండి:
uv run mcp dev server.py
ఇది http://localhost:5173 వద్ద లోకల్ ఇంటర్ఫేస్ను ఓపెన్ చేస్తుంది. మీరు టూల్స్, రిసోర్సెస్ మరియు ప్రాంప్ట్లను ఒకే చోట టెస్ట్ చేయవచ్చు.
Claude Desktopకి కనెక్ట్ చేయడం:
మీ సర్వర్ను చేర్చడానికి మీ కాన్ఫిగరేషన్ ఫైల్ను అప్డేట్ చేయండి. మీ server.py ఫైల్ యొక్క పూర్తి పాత్ను ఉపయోగించండి. ఎన్విరాన్మెంట్ ఎర్రర్లను నివారించడానికి ఎల్లప్పుడూ కేవలం python కమాండ్కు బదులుగా uv run ఉపయోగించండి.
Claude Codeకి కనెక్ట్ చేయడం:
CLI కమాండ్ను ఉపయోగించండి:
claude mcp add github-tools -- uv run python /path/to/server.py
కస్టమ్ MCP సర్వర్లను నిర్మించడం ద్వారా మీరు మీ AI వర్క్ఫ్లోలలో లైవ్ డేటాను తీసుకురావచ్చు.
Source: https://dev.to/moksh/building-a-python-mcp-server-from-scratch-a-practical-github-api-guide-397k
Optional learning community: https://t.me/GyaanSetuAi