Sentry MCP

आधिकारिक

Sentry MCP का आधिकारिक सर्वर, जो AI कोडिंग एजेंटों से समस्याओं, त्रुटि रिपोर्ट, ट्रेस और प्रदर्शन निगरानी डेटा की जांच करने के लिए है।

Sentry MCP के साथ आप क्या कर सकते हैं?

  • Sentry समस्याओं को प्राप्त करें और निरीक्षण करें — अपने एजेंट को किसी विशिष्ट समस्या को ID द्वारा खींचने या get_issue और list_issues का उपयोग करके किसी प्रोजेक्ट के लिए हाल की अनसुलझी समस्याओं को सूचीबद्ध करने के लिए कहें।
  • ईवेंट विवरण और स्टैक ट्रेस की समीक्षा करें — पूर्ण स्टैक ट्रेस, ब्रेडक्रंब और डिवाइस संदर्भ देखने के लिए get_event के साथ किसी त्रुटि ईवेंट में गहराई से जाएं।
  • प्राकृतिक भाषा में समस्याएं खोजें — सादे अंग्रेजी में किसी समस्या का वर्णन करें (जैसे, "चेकआउट में सभी नल पॉइंटर अपवाद खोजें") और एजेंट को search_issues के माध्यम से इसे Sentry क्वेरी में अनुवाद करने दें।
  • स्थिति अपडेट करके समस्याओं का ट्राइएज करें — एजेंट को update_issue के माध्यम से सीधे किसी समस्या को हल करने, संग्रहीत करने या असाइन करने दें।

दस्तावेज़

sentry-mcp

Sentry की MCP सेवा मुख्य रूप से ह्यूमन-इन-द-लूप कोडिंग एजेंट के लिए डिज़ाइन की गई है। हमारे टूल का चयन और प्राथमिकताएँ डेवलपर वर्कफ़्लो और डिबगिंग उपयोग मामलों पर केंद्रित हैं, न कि सभी Sentry कार्यक्षमता के लिए एक सामान्य-उद्देश्य MCP सर्वर प्रदान करने पर।

यह रिमोट MCP सर्वर अपस्ट्रीम Sentry API के लिए मिडलवेयर के रूप में कार्य करता है, जो Cursor, Claude Code और समान डेवलपमेंट टूल जैसे कोडिंग असिस्टेंट के लिए अनुकूलित है। यह Cloudflare के रिमोट MCP की ओर कार्य पर आधारित है।

शुरू करना

प्रोडक्शन में डिप्लॉय की गई सेवा पर जाकर आपको वह सब कुछ मिल जाएगा जो आपको जानना आवश्यक है:

https://mcp.sentry.dev

यदि आप योगदान करना चाहते हैं, यह जानना चाहते हैं कि यह कैसे काम करता है, या इसे सेल्फ-होस्टेड Sentry के लिए चलाना चाहते हैं, तो नीचे जारी रखें।

Claude Code प्लगइन

स्वचालित सबएजेंट प्रत्यायोजन के लिए Claude Code प्लगइन के रूप में इंस्टॉल करें:

claude plugin marketplace add getsentry/sentry-mcp
claude plugin install sentry-mcp@sentry-mcp

यह एक sentry-mcp सबएजेंट प्रदान करता है जिसे Claude स्वचालित रूप से तब प्रत्यायोजित करता है जब आप Sentry त्रुटियों, मुद्दों, ट्रेसेस या प्रदर्शन के बारे में पूछते हैं।

भविष्योन्मुखी टूल वेरिएंट और सुविधाओं के लिए:

claude plugin install sentry-mcp@sentry-mcp-experimental

Stdio बनाम रिमोट

जबकि यह रिपॉजिटरी MCP सेवा के रूप में कार्य करने पर केंद्रित है, हम stdio ट्रांसपोर्ट का भी समर्थन करते हैं। यह अभी भी प्रगति पर है, लेकिन सेल्फ-होस्टेड Sentry इंस्टॉल के विरुद्ध MCP चलाने का सबसे आसान तरीका है।

नोट: AI-संचालित खोज उपकरण (search_events, search_issues, आदि) के लिए LLM प्रदाता (OpenAI, Azure OpenAI, Anthropic, या OpenRouter) की आवश्यकता होती है। ये उपकरण प्राकृतिक भाषा प्रसंस्करण का उपयोग करके क्वेरीज़ को Sentry के क्वेरी सिंटैक्स में अनुवाद करते हैं। कॉन्फ़िगर किए गए प्रदाता के बिना, ये विशिष्ट उपकरण अनुपलब्ध रहेंगे, लेकिन अन्य सभी उपकरण सामान्य रूप से कार्य करेंगे।

stdio ट्रांसपोर्ट का उपयोग करने के लिए, आपको Sentry में आवश्यक स्कोप के साथ एक उपयोगकर्ता प्रमाणीकरण टोकन बनाना होगा। लेखन के समय यह है:

org:read
project:read
project:write
team:read
team:write
event:write

ट्रांसपोर्ट लॉन्च करें:

npx @sentry/mcp-server@latest --access-token=sentry-user-token

सेल्फ-होस्टेड डिप्लॉयमेंट से कनेक्ट करने की आवश्यकता है? जब आप कमांड चलाएँ तो --host (केवल होस्टनाम, जैसे --host=sentry.example.com) जोड़ें। पृथक आंतरिक डिप्लॉयमेंट के लिए जो केवल सादा HTTP उजागर करते हैं, यह भी जोड़ें --insecure-http

कुछ सुविधाएँ (जैसे Seer) सेल्फ-होस्टेड इंस्टेंस पर उपलब्ध नहीं हो सकती हैं। आप असमर्थित उपकरणों को उजागर होने से रोकने के लिए विशिष्ट कौशल अक्षम कर सकते हैं:

npx @sentry/mcp-server@latest --access-token=TOKEN --host=sentry.example.com --disable-skills=seer

TLS के बिना सेल्फ-होस्टेड इंस्टेंस के लिए:

npx @sentry/mcp-server@latest --access-token=TOKEN --host=sentry.internal:9000 --insecure-http

स्पष्ट Sentry टोकन के साथ रिमोट

रिमोट क्लाइंट जो कस्टम HTTP हेडर का समर्थन करते हैं, सीधे Cloudflare ट्रांसपोर्ट को एक अपस्ट्रीम Sentry API टोकन पास कर सकते हैं:

{
  "mcpServers": {
    "sentry": {
      "url": "https://mcp.sentry.dev/mcp",
      "headers": {
        "Authorization": "Sentry-Bearer ${SENTRY_ACCESS_TOKEN}"
      }
    }
  }
}

Sentry-Bearer जानबूझकर Bearer से अलग है: Bearer MCP OAuth एक्सेस टोकन के लिए आरक्षित है। Sentry-Bearer के साथ, वर्कर अपस्ट्रीम टोकन को संग्रहीत, मान्य, विनिमय या ताज़ा नहीं करता है। यह OAuth-समर्थित सत्रों द्वारा उपयोग किए जाने वाले समान Sentry API कॉल के माध्यम से टोकन को अग्रेषित करता है, और क्लाइंट या अपस्ट्रीम प्रदाता टोकन जीवनकाल और ताज़गी के लिए जिम्मेदार रहता है।

प्रत्यक्ष रिमोट प्रमाणीकरण सभी सक्रिय MCP कौशलों के लिए डिफ़ॉल्ट होता है। आप ?skills=inspect,triage या ?disable-skills=seer के साथ उजागर उपकरणों को सीमित कर सकते हैं।

पर्यावरण चर

SENTRY_ACCESS_TOKEN=         # Required: Your Sentry auth token

# LLM Provider Configuration (required for AI-powered search tools)
EMBEDDED_AGENT_PROVIDER=     # Required when multiple provider keys are set: 'openai', 'azure-openai', 'anthropic', or 'openrouter'
OPENAI_API_KEY=              # Required if using OpenAI
ANTHROPIC_API_KEY=           # Required if using Anthropic
OPENROUTER_API_KEY=          # Required if using OpenRouter
OPENROUTER_MODEL=            # Optional OpenRouter model, defaults to 'openai/gpt-5'

# Optional overrides
SENTRY_HOST=                 # For self-hosted deployments
MCP_DISABLE_SKILLS=          # Disable specific skills (comma-separated, e.g. 'seer')

महत्वपूर्ण: अपने LLM प्रदाता को स्पष्ट रूप से निर्दिष्ट करने के लिए हमेशा EMBEDDED_AGENT_PROVIDER सेट करें। केवल API कुंजियों पर आधारित ऑटो-डिटेक्शन अब पदावनत है और भविष्य की रिलीज़ में हटा दिया जाएगा। विस्तृत कॉन्फ़िगरेशन विकल्पों के लिए docs/operations/embedded-agents.md देखें।

उदाहरण MCP कॉन्फ़िगरेशन

{
  "mcpServers": {
    "sentry": {
      "command": "npx",
      "args": ["@sentry/mcp-server"],
      "env": {
        "SENTRY_ACCESS_TOKEN": "your-token",
        "EMBEDDED_AGENT_PROVIDER": "openai",
        "OPENAI_API_KEY": "sk-..."
      }
    }
  }
}

यदि आप होस्ट चर को अनसेट छोड़ते हैं, तो CLI स्वचालित रूप से Sentry SaaS सेवा को लक्षित करता है। केवल तभी ओवरराइड सेट करें जब आप सेल्फ-होस्टेड Sentry संचालित करते हैं।

सेल्फ-होस्टेड इंस्टेंस के लिए जो Seer का समर्थन नहीं करते:

{
  "mcpServers": {
    "sentry": {
      "command": "npx",
      "args": ["@sentry/mcp-server"],
      "env": {
        "SENTRY_ACCESS_TOKEN": "your-token",
        "SENTRY_HOST": "sentry.example.com",
        "MCP_DISABLE_SKILLS": "seer"
      }
    }
  }
}

MCP इंस्पेक्टर

MCP में सेवा का आसानी से परीक्षण करने के लिए एक इंस्पेक्टर शामिल है:

pnpm inspector

MCP सर्वर URL (http://localhost:5173) दर्ज करें और कनेक्ट पर क्लिक करें। इससे आपके लिए प्रमाणीकरण प्रवाह ट्रिगर होना चाहिए।

नोट: यदि आपको 127.0.0.1 पर इंस्पेक्टर तक पहुँचने पर अपने OAuth प्रवाह में समस्या होती है, तो http://localhost:6274 पर जाकर localhost का उपयोग करने का प्रयास करें।

स्थानीय विकास

परिवर्तनों का योगदान करने के लिए, आपको अपना स्थानीय वातावरण सेट अप करना होगा:

  1. वातावरण और एजेंट कौशल सेट अप करें:

    make setup-env  # Creates .env files and installs shared agent skills
    

    यह getsentry/skills से साझा कौशल को .agents/skills/ (.claude/skills और .cursor/skills में सिमलिंक किया गया) में इंस्टॉल करने के लिए npx @sentry/dotagents install भी चलाता है। यदि आपको बाद में कौशल अपडेट करने की आवश्यकता है, तो इसे सीधे चलाएँ:

    npx @sentry/dotagents install
    
  2. Sentry में एक OAuth ऐप बनाएँ (सेटिंग्स => API => एप्लिकेशन):

    • होमपेज URL: http://localhost:5173
    • अधिकृत रीडायरेक्ट URI: http://localhost:5173/oauth/callback
    • अपनी क्लाइंट ID नोट करें और एक क्लाइंट सीक्रेट जनरेट करें
  3. अपने क्रेडेंशियल कॉन्फ़िगर करें:

    • रूट डायरेक्टरी में .env संपादित करें और OPENAI_API_KEY या OPENROUTER_API_KEY जोड़ें
    • packages/mcp-cloudflare/.env संपादित करें और जोड़ें:
      • SENTRY_CLIENT_ID=your_development_sentry_client_id
      • SENTRY_CLIENT_SECRET=your_development_sentry_client_secret
      • COOKIE_SECRET=my-super-secret-cookie
  4. डेवलपमेंट सर्वर शुरू करें:

    pnpm dev
    

सत्यापित करें

सर्वर को स्थानीय रूप से चलाएँ ताकि यह http://localhost:5173 पर उपलब्ध हो

pnpm dev

स्थानीय सर्वर का परीक्षण करने के लिए, इंस्पेक्टर में http://localhost:5173/mcp दर्ज करें और कनेक्ट पर क्लिक करें। एक बार जब आप संकेतों का पालन कर लेते हैं, तो आप "उपकरण सूचीबद्ध करें" कर पाएँगे।

परीक्षण

तीन परीक्षण सूट शामिल हैं: यूनिट परीक्षण, मूल्यांकन और मैन्युअल परीक्षण।

यूनिट परीक्षण इसका उपयोग करके चलाए जा सकते हैं:

pnpm test

मूल्यांकन के लिए प्रोजेक्ट रूट में कुछ कॉन्फ़िग के साथ एक .env फ़ाइल की आवश्यकता होती है:

# .env (in project root)
OPENAI_API_KEY=      # Use OpenAI-backed AI-powered tools
OPENROUTER_API_KEY=  # Or use OpenRouter-backed AI-powered tools

नोट: रूट .env फ़ाइल सभी पैकेजों के लिए डिफ़ॉल्ट प्रदान करती है। विकास के दौरान इन डिफ़ॉल्ट को ओवरराइड करने के लिए अलग-अलग पैकेजों की अपनी .env फ़ाइलें हो सकती हैं।

एक बार यह हो जाने पर आप इन्हें इसका उपयोग करके चला सकते हैं:

pnpm eval

मैन्युअल परीक्षण (MCP परिवर्तनों के परीक्षण के लिए पसंदीदा):

# Test with local dev server (default: http://localhost:5173)
pnpm -w run cli "who am I?"

# Test agent mode (use_sentry tool only)
pnpm -w run cli --agent "who am I?"

# Test against production
pnpm -w run cli --mcp-host=https://mcp.sentry.dev "query"

# Test with local stdio mode (requires SENTRY_ACCESS_TOKEN)
pnpm -w run cli --access-token=TOKEN "query"

नोट: CLI डिफ़ॉल्ट रूप से http://localhost:5173 पर सेट होता है। --mcp-host के साथ ओवरराइड करें या MCP_URL पर्यावरण चर सेट करें।

व्यापक परीक्षण प्लेबुक:

  • Stdio परीक्षण: stdio कार्यान्वयन (IDE, MCP इंस्पेक्टर) के निर्माण, चलाने और परीक्षण पर पूर्ण गाइड के लिए docs/testing/stdio.md देखें
  • रिमोट परीक्षण: रिमोट सर्वर (OAuth, वेब UI, CLI क्लाइंट) के परीक्षण पर पूर्ण गाइड के लिए docs/testing/remote.md देखें

विकास नोट्स

स्वचालित कोड समीक्षा

यह रिपॉजिटरी पुल अनुरोधों में संभावित मुद्दों की पहचान करने में मदद करने के लिए स्वचालित कोड समीक्षा उपकरणों (जैसे Cursor BugBot) का उपयोग करती है। ये उपकरण सहायक प्रतिक्रिया और सुझाव प्रदान करते हैं, लेकिन हम इन जाँचों को आवश्यक बनाने की अनुशंसा नहीं करते क्योंकि सटीकता अभी भी विकसित हो रही है और गलत सकारात्मक परिणाम उत्पन्न कर सकती है।

स्वचालित समीक्षाओं को इस प्रकार माना जाना चाहिए:

  • ✅ कोड समीक्षा के दौरान विचार करने के लिए सहायक सुझाव
  • ✅ चर्चा और सुधार के लिए शुरुआती बिंदु
  • ❌ PR मर्ज करने के लिए अवरोधक आवश्यकताएँ नहीं
  • ❌ मानव कोड समीक्षा का प्रतिस्थापन नहीं

स्वचालित प्रतिक्रिया को संबोधित करते समय, हर सुझाव का सख्ती से पालन करने के बजाय अंतर्निहित चिंताओं पर ध्यान केंद्रित करें।

योगदानकर्ता दस्तावेज़ीकरण

योगदान करना चाहते हैं या पूर्ण दस्तावेज़ीकरण मानचित्र का पता लगाना चाहते हैं? योगदानकर्ता वर्कफ़्लो और पूर्ण दस्तावेज़ अनुक्रमणिका के लिए CLAUDE.md (AGENTS.md के रूप में भी उपलब्ध) देखें। docs/ फ़ोल्डर में प्रति-विषय मार्गदर्शिकाएँ और टूल-एकीकृत .md फ़ाइलें हैं।