Neon
आधिकारिकNeon सर्वरलेस Postgres प्लेटफ़ॉर्म के साथ इंटरैक्ट करें
Neon MCP के साथ आप क्या कर सकते हैं?
- प्रोजेक्ट बनाएं और प्रबंधित करें — नया Postgres डेटाबेस शुरू करने, मौजूदा प्रोजेक्ट सूचीबद्ध करने, या
create_projectयाlist_projectsके माध्यम से किसी को हटाने के लिए कहें। - SQL क्वेरी और लेन-देन चलाएं —
run_sqlयाrun_sql_transactionका उपयोग करके डेटाबेस के विरुद्ध एकल या बहु-कथन SQL निष्पादित करें, जिसमें लेखन शामिल है। - प्रदर्शन का निरीक्षण और अनुकूलन करें — धीमी क्वेरी पहचानें, निष्पादन योजनाएँ प्राप्त करें, या
list_slow_queries,explain_sql_statement, याinspect_databaseके माध्यम से कैश-हिट दर जैसे निदान चलाएँ। - सुरक्षित रूप से स्कीमा माइग्रेट करें — अस्थायी शाखा पर माइग्रेशन शुरू करें, उसका परीक्षण करें, फिर
prepare_database_migrationऔरcomplete_database_migrationके साथ इसे मुख्य शाखा में प्रतिबद्ध करें। - डेटाबेस संरचना का अन्वेषण करें —
get_database_tables,describe_table_schema, याcompare_database_schemaका उपयोग करके तालिकाएँ सूचीबद्ध करें, कॉलम स्कीमा का वर्णन करें, या शाखाओं में स्कीमा की तुलना करें।
होस्ट किया गया MCP सर्वर
npx add-mcp 'https://mcp.neon.tech/mcp'Claude Code, Codex, Cursor और अन्य में इंस्टॉल होता है
दस्तावेज़
Neon MCP सर्वर
Neon MCP सर्वर एक ओपन-सोर्स टूल है जो आपको प्राकृतिक भाषा में Neon पर अपने Lakebase Postgres डेटाबेस के साथ इंटरैक्ट करने की सुविधा देता है।
मॉडल कॉन्टेक्स्ट प्रोटोकॉल (MCP) एक मानकीकृत प्रोटोकॉल है जिसे बड़े भाषा मॉडल (LLMs) और बाहरी सिस्टम के बीच संदर्भ प्रबंधित करने के लिए डिज़ाइन किया गया है। यह रिपॉजिटरी Neon के लिए एक रिमोट MCP सर्वर प्रदान करती है।
Neon का MCP सर्वर प्राकृतिक भाषा अनुरोधों और Neon API के बीच एक पुल के रूप में कार्य करता है। MCP पर निर्मित, यह आपके अनुरोधों को आवश्यक API कॉल्स में अनुवादित करता है, जिससे आप प्रोजेक्ट और ब्रांच बनाने, क्वेरी चलाने, और डेटाबेस माइग्रेशन करने जैसे कार्यों को सहजता से प्रबंधित कर सकते हैं।
Neon MCP सर्वर की कुछ प्रमुख विशेषताएं शामिल हैं:
- प्राकृतिक भाषा इंटरैक्शन: सहज, संवादात्मक कमांड का उपयोग करके Neon डेटाबेस प्रबंधित करें।
- सरलीकृत डेटाबेस प्रबंधन: SQL लिखे बिना या सीधे Neon API का उपयोग किए बिना जटिल क्रियाएं करें।
- गैर-डेवलपर्स के लिए पहुंच: विभिन्न तकनीकी पृष्ठभूमि वाले उपयोगकर्ताओं को Neon डेटाबेस के साथ इंटरैक्ट करने में सक्षम बनाएं।
- डेटाबेस माइग्रेशन समर्थन: प्राकृतिक भाषा के माध्यम से शुरू किए गए डेटाबेस स्कीमा परिवर्तनों के लिए Neon की ब्रांचिंग क्षमताओं का लाभ उठाएं।
उदाहरण के लिए, Claude Code या किसी भी MCP क्लाइंट में, आप Neon के साथ कार्य पूरा करने के लिए प्राकृतिक भाषा का उपयोग कर सकते हैं, जैसे:
Let's create a new Postgres database, and call it "my-database". Let's then create a table called users with the following columns: id, name, email, and password.I want to run a migration on my project called "my-project" that alters the users table to add a new column called "created_at".Can you give me a summary of all of my Neon projects and what data is in each one?
[!WARNING]
Neon MCP सर्वर सुरक्षा विचार
Neon MCP सर्वर प्राकृतिक भाषा अनुरोधों के माध्यम से शक्तिशाली डेटाबेस प्रबंधन क्षमताएं प्रदान करता है। निष्पादन से पहले LLM द्वारा अनुरोधित कार्यों की हमेशा समीक्षा करें और अधिकृत करें। सुनिश्चित करें कि केवल अधिकृत उपयोगकर्ता और एप्लिकेशन ही Neon MCP सर्वर तक पहुंच रखते हैं।Neon MCP सर्वर केवल स्थानीय विकास और IDE एकीकरण के लिए है। हम उत्पादन वातावरण में Neon MCP सर्वर का उपयोग करने की अनुशंसा नहीं करते हैं। यह शक्तिशाली ऑपरेशन निष्पादित कर सकता है जो आकस्मिक या अनधिकृत परिवर्तनों का कारण बन सकता है।
अधिक जानकारी के लिए, देखें MCP सुरक्षा मार्गदर्शन →।
Neon MCP सर्वर सेट करना
Neon MCP सर्वर सेट करने के लिए कुछ विकल्प हैं:
- API कुंजी के साथ त्वरित सेटअप (Cursor, VS Code, और Claude Code):
neon@latest initचलाएं ताकि एक कमांड के साथ Neon के MCP सर्वर, एजेंट कौशल, और VS Code एक्सटेंशन स्वचालित रूप से कॉन्फ़िगर हो जाएं। - रिमोट MCP सर्वर (OAuth आधारित प्रमाणीकरण): प्रमाणीकरण के लिए OAuth का उपयोग करके Neon के प्रबंधित MCP सर्वर से कनेक्ट करें। यह विधि अधिक सुविधाजनक है क्योंकि यह API कुंजी प्रबंधित करने की आवश्यकता को समाप्त करती है। इसके अतिरिक्त, आपको रिलीज़ होते ही नवीनतम सुविधाएं और सुधार स्वचालित रूप से प्राप्त होंगे।
- रिमोट MCP सर्वर (API कुंजी आधारित प्रमाणीकरण): प्रमाणीकरण के लिए API कुंजी का उपयोग करके Neon के प्रबंधित MCP सर्वर से कनेक्ट करें। यह विधि उपयोगी है यदि आप एक रिमोट एजेंट को Neon से कनेक्ट करना चाहते हैं जहां OAuth उपलब्ध नहीं है। इसके अतिरिक्त, आपको रिलीज़ होते ही नवीनतम सुविधाएं और सुधार स्वचालित रूप से प्राप्त होंगे।
पूर्वापेक्षाएँ
- एक MCP क्लाइंट एप्लिकेशन।
- एक Neon खाता।
- Node.js (>= v18.0.0): nodejs.org से डाउनलोड करें।
- यदि IP अनुमति सक्षम है, तो अपनी अनुमति सूची में
34.192.103.46और23.22.233.166जोड़ें (mcp.neon.techस्थिर IPs)।
विकास के लिए, आपको Node.js 22+ की आवश्यकता होगी (pnpm Corepack के माध्यम से प्रदान किया जाता है — इसे सक्रिय करने के लिए corepack enable चलाएं)।
विकल्प 1. API कुंजी के साथ त्वरित सेटअप
मैन्युअल रूप से API कुंजी नहीं बनाना चाहते?
neon@latest init चलाएं ताकि एक कमांड के साथ Neon के MCP सर्वर को स्वचालित रूप से कॉन्फ़िगर किया जा सके:
npx neon@latest init
यह Cursor, VS Code (GitHub Copilot), और Claude Code के साथ काम करता है। यह OAuth के माध्यम से प्रमाणित करेगा, आपके लिए एक Neon API कुंजी बनाएगा, और आपके संपादक को स्वचालित रूप से कॉन्फ़िगर करेगा।
विकल्प 2. रिमोट होस्टेड MCP सर्वर (OAuth आधारित प्रमाणीकरण)
प्रमाणीकरण के लिए OAuth का उपयोग करके Neon के प्रबंधित MCP सर्वर से कनेक्ट करें। यह सबसे आसान सेटअप है, इस सर्वर की कोई स्थानीय स्थापना की आवश्यकता नहीं है, और क्लाइंट में Neon API कुंजी कॉन्फ़िगर करने की आवश्यकता नहीं है।
अपने वर्कस्पेस में सभी पहचाने गए एजेंटों और संपादकों के लिए Neon MCP सर्वर जोड़ने के लिए निम्न कमांड चलाएं:
npx add-mcp "https://mcp.neon.tech/mcp?category=projects&category=branches&category=endpoints&category=querying&category=schema"
वह URL प्रोजेक्ट, ब्रांच, कंप्यूट एंडपॉइंट, क्वेरीिंग, और स्कीमा प्रकाशित करता है। इसे /api/list-tools?category=projects&category=branches&category=endpoints&category=querying&category=schema के साथ पूर्वावलोकन करें। अनफ़िल्टर्ड URL हर श्रेणी प्रकाशित करता है:
npx add-mcp https://mcp.neon.tech/mcp
प्रोजेक्ट-स्कोप्ड के बजाय वैश्विक MCP सर्वर सूची में Neon MCP सर्वर जोड़ने के लिए -g फ्लैग जोड़ें।
वैकल्पिक रूप से, आप अपने क्लाइंट की MCP सर्वर कॉन्फ़िगरेशन फ़ाइल में निम्न "Neon" प्रविष्टि जोड़ सकते हैं (जैसे, mcp.json, mcp_config.json):
{
"mcpServers": {
"Neon": {
"type": "http",
"url": "https://mcp.neon.tech/mcp?category=projects&category=branches&category=endpoints&category=querying&category=schema"
}
}
}
Kiro: अपनी Kiro MCP कॉन्फ़िग फ़ाइल में निम्न जोड़ें (वैश्विक के लिए ~/.kiro/settings/mcp.json, या प्रोजेक्ट-स्कोप्ड के लिए .kiro/settings/mcp.json):
{
"mcpServers": {
"Neon": {
"url": "https://mcp.neon.tech/mcp?category=projects&category=branches&category=endpoints&category=querying&category=schema"
}
}
}
या इस README के शीर्ष पर एक-क्लिक इंस्टॉल बटन का उपयोग करें। अधिक जानकारी के लिए, Kiro MCP दस्तावेज़ीकरण देखें।
- अपने MCP क्लाइंट को पुनरारंभ या रीफ्रेश करें।
- आपके ब्राउज़र में एक OAuth विंडो खुलेगी। अपने MCP क्लाइंट को अपने Neon खाते तक पहुंचने के लिए अधिकृत करने के लिए संकेतों का पालन करें।
OAuth-आधारित प्रमाणीकरण के साथ, MCP सर्वर डिफ़ॉल्ट रूप से आपके व्यक्तिगत Neon खाते के अंतर्गत प्रोजेक्ट पर काम करेगा। किसी संगठन से संबंधित प्रोजेक्ट तक पहुंचने या प्रबंधित करने के लिए, आपको MCP क्लाइंट को अपने प्रॉम्प्ट में स्पष्ट रूप से
org_idयाproject_idप्रदान करना होगा।
विकल्प 3. रिमोट होस्टेड MCP सर्वर (API कुंजी आधारित प्रमाणीकरण)
रिमोट MCP सर्वर Authorization हेडर में API कुंजी का उपयोग करके प्रमाणीकरण का भी समर्थन करता है यदि आपका क्लाइंट इसका समर्थन करता है।
Neon कंसोल में एक Neon API कुंजी बनाएं। फिर, अपने वर्कस्पेस में सभी पहचाने गए एजेंटों और संपादकों के लिए Neon MCP सर्वर जोड़ने के लिए निम्न कमांड चलाएं:
npx add-mcp "https://mcp.neon.tech/mcp?category=projects&category=branches&category=endpoints&category=querying&category=schema" --header "Authorization: Bearer <$NEON_API_KEY>"
वैकल्पिक रूप से, आप अपने क्लाइंट की MCP सर्वर कॉन्फ़िगरेशन फ़ाइल में निम्न "Neon" प्रविष्टि जोड़ सकते हैं (जैसे, mcp.json, mcp_config.json):
{
"mcpServers": {
"Neon": {
"type": "http",
"url": "https://mcp.neon.tech/mcp?category=projects&category=branches&category=endpoints&category=querying&category=schema",
"headers": {
"Authorization": "Bearer <$NEON_API_KEY>"
}
}
}
}
केवल संगठन के अंतर्गत प्रोजेक्ट तक पहुंच सीमित करने के लिए संगठन की API कुंजी प्रदान करें।
स्कोप और रीड-ओनली मोड
Neon MCP OAuth स्कोप read और write का विज्ञापन करता है। आपका MCP क्लाइंट इन्हें अनुरोध कर सकता है, या आप OAuth अनुमतियाँ UI में चयन कर सकते हैं। यदि कोई क्लाइंट अभी भी * भेजता है तो इसे लेखन के रूप में माना जाता है।
रीड-ओनली मोड सीमित करता है कि कौन से टूल उपलब्ध हैं, प्रोजेक्ट बनाने, ब्रांच बनाने, या माइग्रेशन चलाने जैसे लेखन ऑपरेशन अक्षम करता है। रीड-ओनली टूल में प्रोजेक्ट सूचीबद्ध करना, स्कीमा का वर्णन करना, डेटा क्वेरी करना, और प्रदर्शन मेट्रिक्स देखना शामिल है।
आप रीड-ओनली मोड दो तरीकों से सेट कर सकते हैं:
- डिफ़ॉल्ट MCP URL (संपादन योग्य सहमति):
https://mcp.neon.tech/mcpके साथ कनेक्ट करें और प्राधिकरण पृष्ठ पर Allow writes को अनचेक करें। आप वहां एक प्रोजेक्ट और टूल श्रेणियों का एक सबसेट भी चुन सकते हैं। - पैरामीटरयुक्त MCP URL (निश्चित सहमति): MCP सर्वर URL पर
readonly,projectId, और/याcategoryरखें। प्राधिकरण पृष्ठ उस अनुदान की पुष्टि करता है और संपादक प्रदान नहीं करता है। अनुदान बदलने के लिए URL बदलें और फिर से अधिकृत करें।
{
"mcpServers": {
"Neon": {
"url": "https://mcp.neon.tech/mcp?readonly=true"
}
}
}
क्वेरी पैरामीटर कैसे व्यवहार करता है:
- API कुंजी प्रवाह:
readonly=trueरीड-ओनली मोड सक्षम करने का तरीका है (इस प्रवाह में कोई OAuth स्कोप विनिमय नहीं है)। URL परिवर्तन अगले अनुरोध पर लागू होते हैं। - OAuth प्रवाह: MCP URL पर
projectId,category, औरreadonlyप्राधिकरण पर पुष्टि किया गया एक निश्चित अनुदान हैं।readonly=trueको उस पृष्ठ पर लेखन तक विस्तृत नहीं किया जा सकता है। टोकन जारी होने के बाद, URL बदलने से उस टोकन का विस्तार नहीं होता है; फिर से अधिकृत करें।
OAuth पंजीकरण के लिए, x-read-only संपादन योग्य सहमति पर प्रारंभिक Allow-writes डिफ़ॉल्ट है। यह पुष्टि को लॉक नहीं करता है, और यह readonly=false शामिल करने वाले पैरामीटरयुक्त URL को कम नहीं करता है। API-कुंजी अनुरोध अभी भी readonly क्वेरी पैरामीटर के नीचे, प्रति अनुरोध x-read-only का सम्मान करते हैं।
नोट: रीड-ओनली मोड सीमित करता है कि कौन से टूल उपलब्ध हैं। इसके अलावा,
run_sqlटूल केवल रीड-ओनली क्वेरी के लिए उपलब्ध रहता है।
एक्सेस नियंत्रण के लिए URL क्वेरी पैरामीटर
अनुदान संदर्भ (स्कोप श्रेणियां, प्रोजेक्ट स्कोपिंग, रीड-ओनली मोड) MCP सर्वर URL पर URL क्वेरी पैरामीटर के माध्यम से कॉन्फ़िगर किया जाता है। API-कुंजी अनुरोध उन पैरामीटर को प्रत्येक अनुरोध पर लागू करते हैं। OAuth टोकन प्राधिकरण पर पुष्टि या संपादित अनुदान संग्रहीत करते हैं।
| पैरामीटर | विवरण | उदाहरण |
|---|---|---|
readonly | रीड-ओनली मोड सक्षम करें (true/false) | ?readonly=true |
category | विशिष्ट टूल श्रेणियों तक सीमित करें (दोहराया या CSV) | ?category=querying&category=schema |
projectId | सभी ऑपरेशन को एकल प्रोजेक्ट तक सीमित करें | ?projectId=proj-123 |
रीड-ओनली + प्रोजेक्ट-स्कोप्ड उदाहरण:
{
"mcpServers": {
"Neon": {
"url": "https://mcp.neon.tech/mcp?readonly=true&projectId=my-project-id"
}
}
}
श्रेणी-फ़िल्टर किया गया उदाहरण (केवल क्वेरीिंग और स्कीमा टूल):
{
"mcpServers": {
"Neon": {
"url": "https://mcp.neon.tech/mcp?category=querying&category=schema"
}
}
}
आप /api/list-tools एंडपॉइंट का उपयोग करके किसी भी कॉन्फ़िगरेशन के लिए कौन से टूल दृश्यमान हैं, इसका पूर्वावलोकन कर सकते हैं (कोई प्रमाणीकरण आवश्यक नहीं):
curl "https://mcp.neon.tech/api/list-tools?readonly=true&category=querying"
रीड-ओनली मोड में उपलब्ध टूल
होस्ट टूल: list_organizations, describe_branch, run_sql, run_sql_transaction, get_database_tables, describe_table_schema, list_slow_queries, explain_sql_statement, inspect_database, get_neon_auth_config, search, fetch, list_docs_resources, get_doc_resource।
जनरेटेड प्रबंधन API टूल जो GET हैं और रहस्य नहीं लौटाते, साथ ही query_logs (POST, रीड-ओनली)। /api/list-tools?readonly=true के साथ सटीक सेट का पूर्वावलोकन करें।
लेखन पहुंच की आवश्यकता वाले टूल:
- जनरेटेड प्रबंधन API लेखन (
create_project,create_branch,delete_project, …) get_connection_string(कनेक्शन स्ट्रिंग एक विशेषाधिकार प्राप्त भूमिका पासवर्ड रखती है, इसलिए इसे रीड-ओनली मोड में रोक दिया जाता है; इसे Neon कंसोल से कॉपी करें)prepare_database_migration,complete_database_migrationprepare_query_tuning,complete_query_tuning
सर्वर-सेंट इवेंट्स (SSE) ट्रांसपोर्ट (अप्रचलित)
MCP दो रिमोट सर्वर ट्रांसपोर्ट का समर्थन करता है: अप्रचलित सर्वर-सेंट इवेंट्स (SSE) और नया, अनुशंसित स्ट्रीमेबल HTTP। यदि आपका LLM क्लाइंट अभी तक स्ट्रीमेबल HTTP का समर्थन नहीं करता है, तो आप SSE का उपयोग करने के लिए एंडपॉइंट को https://mcp.neon.tech/mcp से https://mcp.neon.tech/sse में बदल सकते हैं।
SSE ट्रांसपोर्ट का उपयोग करके अपने वर्कस्पेस में सभी पहचाने गए एजेंटों और संपादकों के लिए Neon MCP सर्वर जोड़ने के लिए निम्न कमांड चलाएं:
npx add-mcp https://mcp.neon.tech/sse --type sse
रिमोट सर्वर आर्किटेक्चर
रिमोट सर्वर mcp.neon.tech पर Vercel पर एक Next.js ऐप राउटर एप्लिकेशन के रूप में चलता है।
[!NOTE] रूट
/पथ Neon MCP सर्वर दस्तावेज़ पर पुनर्निर्देशित करता है। कोई लैंडिंग पृष्ठ नहीं है।
मुख्य कार्यान्वयन क्षेत्र:
app/api/[transport]/route.ts: स्ट्रीमेबल HTTP (/mcp) और SSE (/sse) के लिए MCP ट्रांसपोर्ट एंडपॉइंटapp/api/authorize/,app/callback/,app/api/token/,app/api/revoke/: OAuth प्रवाह एंडपॉइंटapp/.well-known/: OAuth खोज मेटाडेटा एंडपॉइंटmcp/: MCP सर्वर, टूल, हैंडलर, एनालिटिक्स, और Sentry एकीकरणlib/: Next.js-संगत सहायक (OAuth, कॉन्फ़िगरेशन, त्रुटि हैंडलिंग)mcp/utils/read-only.ts: रीड-ओनली मोड और स्कोप हैंडलिंग
गाइड
- Neon MCP सर्वर गाइड
- MCP क्लाइंट्स को Neon से कनेक्ट करें
- Neon MCP सर्वर के साथ Cursor
- Neon MCP सर्वर के साथ Claude Code
- Neon MCP सर्वर के साथ Claude Desktop
- Neon MCP सर्वर के साथ Cline
- Neon MCP सर्वर के साथ Windsurf
- Neon MCP सर्वर के साथ Zed
विशेषताएँ
समर्थित उपकरण
Neon MCP सर्वर निम्नलिखित क्रियाएँ प्रदान करता है, जिन्हें MCP क्लाइंट्स के लिए "उपकरण" के रूप में प्रदर्शित किया जाता है। आप इन उपकरणों का उपयोग अपने Neon प्रोजेक्ट्स और डेटाबेस के साथ प्राकृतिक भाषा कमांड का उपयोग करके इंटरैक्ट करने के लिए कर सकते हैं।
उपकरण स्कोप मेटाडेटा
प्रत्येक उपकरण परिभाषा में एक scope श्रेणी शामिल होती है जिसका उपयोग अनुदान-आधारित उपकरण फ़िल्टरिंग और सहमति UX के लिए किया जाता है। वर्तमान श्रेणियाँ हैं:
projectsbranchesendpointssnapshotsschemaqueryingneon_authdata_apiobservabilitydocsfunctionsstoragenull(बिना स्कोप श्रेणी के उपकरण)
नोट्स:
- प्रबंधन API उपकरण
@neon/toolsसे आते हैं। चयनकर्ता SDK पथ हैं (projects.list); प्रकाशित MCP नाम क्रिया-प्रथम हैं (list_projects,delete_project,query_logs)। ऐतिहासिक नाम वहीं रहते हैं जहाँ वे पहले से मौजूद थे (describe_project,create_branch,reset_from_parent,compare_database_schema,provision_neon_auth,provision_neon_data_api,list_branch_computes)। ?category=branchesमें ब्रांच, रोल और डेटाबेस उपकरण शामिल हैं (list_postgres_roles,create_postgres_database, …)।branchesके लिए पहले से जारी टोकन उन लेखन क्रियाओं को प्राप्त करता है। कंप्यूट सूची?category=endpointsहै। स्नैपशॉट पुनर्स्थापना?category=snapshotsहै।- प्रोजेक्ट सदस्य और अनुमति लेखन प्रकाशित नहीं हैं।
list_project_membersऔरlist_project_permissionsकेवल पढ़ने के लिए हैं। - स्कीमा उपकरण (
?category=schema) होस्ट उपकरणget_database_tablesऔरdescribe_table_schemaहैं, साथ ही उत्पन्नcompare_database_schemaभी। - केवल-पढ़ने की प्रवर्तन अभी भी
readOnlySafeऔर सर्वर-साइड केवल-पढ़ने के तर्क पर निर्भर करता है;scopeश्रेणी मेटाडेटा है, न कि एक स्टैंडअलोन पढ़ने/लिखने का स्विच। - प्रोजेक्ट-स्कोप्ड मोड में (
?projectId=...), बिना प्रोजेक्ट पथ वाले उपकरण (list_projects,create_project,list_organizations,list_regions,search,fetch, …) छिपे हुए हैं।delete_projectभी छिपा हुआ है।
प्रोजेक्ट प्रबंधन:
list_projects: Neon प्रोजेक्ट्स की सूची दिखाता है।limitयह सीमित करता है कि कितने आइटम वापस आते हैं।describe_project: आईडी द्वारा एक Neon प्रोजेक्ट प्राप्त करता है ({ "project_id": "…" })।create_project: एक Neon प्रोजेक्ट बनाता है और डिफ़ॉल्ट कंप्यूट के तैयार होने की प्रतीक्षा करता है। कनेक्शन स्ट्रिंग नहीं लौटाता। तर्क{ "name": "…", "org_id": "…", "region_id": "…" }हैं। सफल होने के बादget_connection_stringको कॉल करें।delete_project: एक मौजूदा Neon प्रोजेक्ट को हटाता है। तर्क{ "project_id": "…" }हैं।list_organizations: उन सभी संगठनों की सूची दिखाता है जिन तक वर्तमान उपयोगकर्ता की पहुँच है। वैकल्पिक रूप से खोज पैरामीटर का उपयोग करके संगठन के नाम या आईडी द्वारा फ़िल्टर करें।
ब्रांच प्रबंधन:
list_branches: एक प्रोजेक्ट में ब्रांचेस की सूची दिखाता है। ब्रांच नाम कोbr-…आईडी में हल करने के लिए इसका उपयोग करें।list_credentials,create_credential,revoke_credential,rotate_credential: ऑब्जेक्ट स्टोरेज और AI गेटवे के लिए ब्रांच-स्कोप्ड क्रेडेंशियल।revealएक उपकरण नहीं है; रोटेशन सीक्रेट्स को स्थान पर बदल देता है और इडेम्पोटेंट नहीं है।create_branch: एक रीड-राइट कंप्यूट के साथ एक ब्रांच बनाता है और तैयार होने तक प्रतीक्षा करता है। कनेक्शन स्ट्रिंग नहीं लौटाता। तर्क{ "project_id": "…", "name": "feature-x" }हैं। एंडपॉइंट छोड़ने के लिएno_compute: trueपास करें। सफल होने के बादget_connection_stringको कॉल करें।reset_from_parent: एक ब्रांच को उसके पैरेंट के वर्तमान HEAD पर रीसेट करता है ({ "project_id": "…", "branch_id": "br-…" })। ब्रांच के विभाजित होने के बाद से लिखे गए डेटा को त्याग देता है। जब ब्रांच के चिल्ड्रन हों तोpreserve_under_nameआवश्यक है; वे चिल्ड्रन नई ब्रांच में चले जाते हैं। केवल पैरेंट HEAD; पॉइंट-इन-टाइम पुनर्स्थापनाrestore_snapshotहै।delete_branch: एक ब्रांच को हटाता है ({ "project_id": "…", "branch_id": "br-…" })।describe_branch: एक ब्रांच पर डेटाबेस, स्कीमा, टेबल, व्यू और फ़ंक्शन का एक ट्री प्राप्त करता है।- उत्पन्न ब्रांच उपकरण
branch_idको ब्रांच आईडी के रूप में लेते हैं (br-...), नाम के रूप में नहीं। restore_snapshot: एक स्नैपशॉट पुनर्स्थापित करता है। मौजूदा ब्रांच पर पुनर्स्थापित करने के लिएtarget_branch_idपास करें; नई ब्रांच बनाने के लिए इसे छोड़ दें।
कंप्यूट एंडपॉइंट्स (?category=endpoints):
list_postgres_endpoints,list_branch_computes,get_postgres_endpoint,create_postgres_endpoint,update_postgres_endpoint,delete_postgres_endpoint,start_postgres_endpoint,suspend_postgres_endpoint,restart_postgres_endpoint
स्नैपशॉट्स (?category=snapshots):
list_snapshots,get_snapshot_schedule,set_snapshot_schedule,create_snapshot,update_snapshot,delete_snapshot,restore_snapshot
स्कीमा (?category=schema):
get_database_tables,describe_table_schemacompare_database_schema: एक डेटाबेस की दूसरी ब्रांच के विरुद्ध SQL स्कीमा डिफ़।database_nameआवश्यक है।base_branch_idको छोड़ने पर पैरेंट के विरुद्ध तुलना होती है। वैकल्पिकlsn,timestamp,base_lsn,base_timestampकेवल पॉइंट-इन-टाइम हैं।
SQL क्वेरी निष्पादन:
get_connection_string: आपकी डेटाबेस कनेक्शन स्ट्रिंग लौटाता है।run_sql: निर्दिष्ट Neon डेटाबेस के विरुद्ध एक एकल SQL क्वेरी निष्पादित करता है। रीड और राइट दोनों ऑपरेशनों का समर्थन करता है।run_sql_transaction: एक Neon डेटाबेस के विरुद्ध एक ही ट्रांज़ैक्शन में SQL क्वेरीज़ की एक श्रृंखला निष्पादित करता है।get_database_tables: निर्दिष्ट Neon डेटाबेस के भीतर सभी टेबल्स की सूची दिखाता है।describe_table_schema: एक विशिष्ट टेबल की स्कीमा परिभाषा प्राप्त करता है, जिसमें कॉलम, डेटा प्रकार और बाधाएँ विस्तार से शामिल होती हैं।
डेटाबेस माइग्रेशन (स्कीमा परिवर्तन):
prepare_database_migration: एक डेटाबेस माइग्रेशन प्रक्रिया शुरू करता है। महत्वपूर्ण रूप से, यह मुख्य ब्रांच को प्रभावित करने से पहले माइग्रेशन को सुरक्षित रूप से लागू करने और परीक्षण करने के लिए एक अस्थायी ब्रांच बनाता है।complete_database_migration: एक तैयार डेटाबेस माइग्रेशन को मुख्य ब्रांच पर अंतिम रूप देता है और लागू करता है। यह क्रिया अस्थायी माइग्रेशन ब्रांच से परिवर्तनों को मर्ज करती है और अस्थायी संसाधनों को साफ करती है।
SQL क्वेरी और अनुकूलन:
inspect_database: एक ब्रांच के विरुद्ध 15 पूर्वनिर्धारित केवल-पढ़ने वाले Postgres डायग्नोस्टिक्स में से एक चलाता है — रिलेशन और इंडेक्स आकार, इंडेक्स और सीक्वेंशियल-स्कैन उपयोग, सक्रिय क्वेरी और लॉक, सबसे भारी और सबसे लगातार क्वेरी, कैश हिट दर और वर्किंग-सेट आकार, ऑटोवैक्यूम और ब्लोट अनुमान, और प्रतिकृति स्थिति।neon inspect dbCLI कमांड के समान जाँच। ब्रांच पर हर डेटाबेस को कवर करने के लिएdatabase_nameछोड़ें; एक का निरीक्षण करने के लिए नाम पास करें। उनमें से चार कोpg_stat_statementsयाneonएक्सटेंशन की आवश्यकता होती है।list_slow_queries: एक डेटाबेस में सबसे धीमी क्वेरी खोजकर प्रदर्शन बाधाओं की पहचान करता है। pg_stat_statements एक्सटेंशन की आवश्यकता होती है।explain_sql_statement: प्रदर्शन बाधाओं की पहचान करने में मदद के लिए SQL क्वेरी के लिए विस्तृत निष्पादन योजनाएँ प्रदान करता है।prepare_query_tuning: क्वेरी प्रदर्शन का विश्लेषण करता है और इंडेक्स निर्माण जैसे अनुकूलन सुझाता है। इन अनुकूलनों का सुरक्षित रूप से परीक्षण करने के लिए एक अस्थायी ब्रांच बनाता है।complete_query_tuning: मुख्य ब्रांच पर अनुकूलन लागू करके या उन्हें त्यागकर क्वेरी ट्यूनिंग को अंतिम रूप देता है। अस्थायी ट्यूनिंग ब्रांच को साफ करता है।
Neon Auth (?category=neon_auth):
provision_neon_auth,get_auth,disable_auth,update_auth_configget_neon_auth_config: होस्ट उपकरण; सीक्रेट्स संपादित किए गए। सेटिंग्स बदलने के लिए उत्पन्न Auth लेखन उपकरणों का उपयोग करें।list_auth_oauth_providers,add_auth_oauth_provider,update_auth_oauth_provider,delete_auth_oauth_providerlist_auth_trusted_domains,add_auth_trusted_domain,delete_auth_trusted_domaincreate_auth_user,delete_auth_user,update_auth_user_role
Neon डेटा API (?category=data_api):
provision_neon_data_api,get_data_api,update_data_api,delete_data_api: एक ब्रांच डेटाबेस के लिए डेटा API प्रबंधित करें।
खोज और डिस्कवरी:
search: किसी क्वेरी से मेल खाते संगठनों, प्रोजेक्ट्स और ब्रांचेस में खोज करता है। आईडी, शीर्षक और Neon कंसोल के सीधे लिंक लौटाता है।fetch: आईडी का उपयोग करके किसी विशिष्ट संगठन, प्रोजेक्ट या ब्रांच के बारे में विस्तृत जानकारी प्राप्त करता है (आमतौर पर खोज उपकरण से)।
अवलोकनीयता (?category=observability): इन उपकरणों के लिए Neon प्लेटफ़ॉर्म बीटा की आवश्यकता होती है और वर्तमान में केवल aws-us-east-2 क्षेत्र के प्रोजेक्ट्स के लिए उपलब्ध हैं। लॉग एक्सेस के बिना एक ब्रांच HTTP 404 को कारण telemetry_not_enabled के साथ लौटाता है।
query_logs: एक ब्रांच के लिए OpenTelemetry लॉग क्वेरी करता है। प्रबंधन API में POST; इस सर्वर द्वारा केवल-पढ़ने के रूप में माना जाता है।list_log_fields: उन लॉग फ़ील्ड्स की सूची दिखाता है जिनके लिए आप एक ब्रांच पर मानों की गणना कर सकते हैं।list_log_field_values: एक ब्रांच और समय विंडो के भीतर एक लॉग फ़ील्ड के विशिष्ट मानों की सूची दिखाता है।
दस्तावेज़ीकरण और संसाधन (?category=docs):
list_docs_resources:https://neon.com/docs/llms.txtसे इंडेक्स प्राप्त करके सभी उपलब्ध Neon दस्तावेज़ीकरण पृष्ठों की सूची दिखाता है। पृष्ठ URL और शीर्षक लौटाता है जिन्हेंget_doc_resourceउपकरण का उपयोग करके व्यक्तिगत रूप से प्राप्त किया जा सकता है।get_doc_resource: एक विशिष्ट Neon दस्तावेज़ीकरण पृष्ठ को मार्कडाउन सामग्री के रूप में प्राप्त करता है। उपलब्ध पृष्ठ स्लग खोजने के लिए पहलेlist_docs_resourcesउपकरण का उपयोग करें, फिर स्लग को इस उपकरण में पास करें।
फ़ंक्शन (?category=functions):
list_functions,get_function,update_function,delete_function,deploy_functionlist_functions_custom_domains,register_functions_custom_domain,delete_functions_custom_domainlist_triggers,get_trigger,create_trigger,update_trigger,delete_trigger: अनुसूचित फ़ंक्शन ट्रिगर (type: "schedule", पाँच-फ़ील्ड UTC क्रॉन)।
स्टोरेज (?category=storage):
list_storage_buckets,create_storage_bucket,delete_storage_bucketlist_storage_objects,delete_storage_object,delete_storage_objects_by_prefixpresign_storage_object,get_storage
माइग्रेशन
माइग्रेशन समय के साथ आपके डेटाबेस स्कीमा में परिवर्तनों को प्रबंधित करने का एक तरीका है। Neon MCP सर्वर के साथ, LLM को अलग "प्रारंभ" (prepare_database_migration) और "कमिट" (complete_database_migration) कमांड के साथ सुरक्षित रूप से माइग्रेशन करने के लिए सशक्त बनाया गया है।
"प्रारंभ" कमांड एक माइग्रेशन स्वीकार करता है और इसे एक नई अस्थायी ब्रांच में चलाता है। लौटने पर, यह कमांड LLM को संकेत देता है कि उसे इस ब्रांच पर माइग्रेशन का परीक्षण करना चाहिए। LLM तब माइग्रेशन को मूल ब्रांच पर लागू करने के लिए "कमिट" कमांड चला सकता है।
विकास
यह प्रोजेक्ट पैकेज मैनेजर के रूप में pnpm का उपयोग करता है, जिसे Corepack के माध्यम से पिन किया गया है।
प्रोजेक्ट संरचना
MCP सर्वर कोड रिपॉजिटरी रूट पर स्थित है, जो mcp.neon.tech पर Vercel पर तैनात एक Next.js एप्लिकेशन है।
corepack enable
pnpm install
उपकरण जोड़ने के तरीके के लिए CONTRIBUTING.md देखें। उपकरण तर्क snake_case हैं।
स्थानीय विकास
# Start the Next.js dev server (for the remote MCP server)
pnpm dev
लिंटिंग और टाइप जाँच
pnpm lint
pnpm typecheck
पर्यावरण चर
रिमोट सर्वर रनटाइम के लिए आवश्यक:
| चर | विवरण |
|---|---|
SERVER_HOST | सर्वर URL (डिफ़ॉल्ट VERCEL_URL) |
UPSTREAM_OAUTH_HOST | Neon OAuth प्रदाता URL |
CLIENT_ID | OAuth क्लाइंट आईडी |
CLIENT_SECRET | OAuth क्लाइंट सीक्रेट |
KV_URL | Vercel KV (Upstash Redis) URL |
OAUTH_DATABASE_URL | टोकन स्टोरेज के लिए Postgres URL |
वैकल्पिक:
| चर (Variable) | विवरण (Description) |
|---|---|
LOG_LEVEL | Winston लॉग स्तर: error, warn, info (डिफ़ॉल्ट), debug, verbose, silly |
NEON_MCP_DISABLE_ANALYTICS | उत्पाद विश्लेषण अक्षम करने के लिए 1 पर सेट करें |
परीक्षण पिरामिड (Testing Pyramid)
सभी परीक्षण रिपॉजिटरी रूट से चलते हैं।
# Unit tests
pnpm test:unit
# Integration tests
pnpm test:integration
# MCP protocol end-to-end tests (real MCP client/server tool calls)
pnpm test:e2e:mcp
# Website end-to-end tests (Playwright; provisions/validates ephemeral DB first)
pnpm test:e2e:web
# Full end-to-end suite
pnpm test:e2e
# Full test pyramid (unit + integration + e2e; used in CI)
pnpm test
परीक्षण रणनीति:
- परिवहन/प्रोटोकॉल और उपयोगकर्ता-दृश्य व्यवहार के लिए E2E को प्राथमिकता दें।
- निर्धारित टूल अनुबंधों और वर्कफ़्लो व्यवहार के लिए एकीकरण (integration) परीक्षणों का उपयोग करें।
- शुद्ध तर्क और किनारे के मामलों के लिए यूनिट (unit) परीक्षणों का उपयोग करें।
- मर्ज-गेटिंग परीक्षणों में तृतीय-पक्ष अपटाइम पर निर्भर रहने से बचें; एकीकरण/यूनिट स्तरों में बाहरी निर्भरताओं को मॉक करें।
परिनियोजन (Deployment)
Vercel रिपॉजिटरी शाखा कॉन्फ़िगरेशन से रिमोट सर्वर को स्वचालित रूप से परिनियोजित करता है। पुल अनुरोधों के लिए पूर्वावलोकन वातावरण उपलब्ध हैं।
टेलीमेट्री (Telemetry)
Neon MCP सर्वर उत्पाद विश्लेषण और त्रुटि रिपोर्ट एकत्र करता है ताकि हम उपयोग को समझ सकें और विश्वसनीयता में सुधार कर सकें:
- उत्पाद विश्लेषण (Segment): जब आप एक प्रमाणित खाते से कनेक्ट होते हैं, तो सर्वर आपके Neon खाता आईडी, नाम और ईमेल पते के साथ एक
identifyइवेंट भेजता है। यह सत्र प्रारंभ (server_init), प्रत्येक टूल कॉल (tool_call), और अप्रत्याशित सर्वर त्रुटियों (server_error) को भी ट्रैक करता है। एक टूल-कॉल इवेंट में टूल नाम, प्रमाणीकरण विधि और क्लाइंट शामिल होता है, न कि टूल तर्क या क्वेरी परिणाम। खाते के बिना केवल-दस्तावेज़ टूल कॉल अनाम रूप से ट्रैक की जाती हैं। इवेंटtrack.neon.techपर जाते हैं, जो Neon का अपना विश्लेषण एंडपॉइंट है। - त्रुटि रिपोर्टिंग (Sentry): अप्रत्याशित सर्वर त्रुटियों की रिपोर्ट स्टैक ट्रेस और अनुरोध संदर्भ के साथ की जाती है।
यह संग्रह Neon गोपनीयता नीति द्वारा कवर किया गया है। सर्वर को स्वयं चलाते समय विश्लेषण अक्षम करने के लिए, NEON_MCP_DISABLE_ANALYTICS=1 सेट करें। वह फ़्लैग Sentry को अक्षम नहीं करता है।