sncro.net MCP Server

आधिकारिक

AI सहायकों के लिए लाइव ब्राउज़र डिबगिंग — DOM, कंसोल, नेटवर्क MCP के माध्यम से।

दस्तावेज़

sncro-relay

sncro के ओपन-सोर्स घटक — MCP रिले, ब्राउज़र-साइड एजेंट, और फ्रेमवर्क प्लगइन्स जो AI कोडिंग असिस्टेंट को एक लाइव ब्राउज़र का निरीक्षण करने देते हैं।

इस रेपो में क्या है

पथक्या
relay/FastAPI ऐप जो एक MCP सर्वर और agent.js के लिए लॉन्ग-पोल एंडपॉइंट प्रस्तुत करता है
relay/static/agent.jsमिडलवेयर द्वारा इंजेक्ट की गई ब्राउज़र-साइड स्क्रिप्ट; कंसोल + DOM डेटा को रिले पर भेजती है
middleware/sncro_middleware.pyFastAPI / Starlette प्लगइन — FastAPI ऐप्स के लिए ड्रॉप-इन मिडलवेयर
middleware/sncro_flask.pyFlask प्लगइन — Flask ऐप्स के लिए ड्रॉप-इन मिडलवेयर
trysncro/try.sncro.net — sncro को एंड-टू-एंड परखने के लिए जानबूझकर खराब किया गया डेमो ऐप

यह कैसे काम करता है

 ┌──────────────┐    MCP     ┌──────────┐   long-poll   ┌─────────────┐
 │ Claude Code  │──tools────▶│  relay   │◀──────────────│  agent.js   │
 │ (or other    │            │ (relay/) │   snapshots   │ (injected   │
 │  MCP client) │◀──results──│          │──────────────▶│  by plugin) │
 └──────────────┘            └──────────┘               └─────────────┘
                                                              ▲
                                                              │ same-origin
                                                              │ cookies
                                                       ┌─────────────┐
                                                       │  your app   │
                                                       │ (plugin is  │
                                                       │  installed) │
                                                       └─────────────┘
  1. Claude create_session (MCP टूल) को कॉल करता है → रिले एक 9-अंकीय सेशन कुंजी + URL लौटाता है
  2. उपयोगकर्ता उस URL को ब्राउज़र में खोलता है जहाँ उनका ऐप चल रहा है → "Allow sncro debugging?" के माध्यम से पुष्टि करता है
  3. प्लगइन एक कुकी डालता है, agent.js उस ऑरिजिन पर आने वाले HTML प्रतिक्रियाओं में इंजेक्ट हो जाता है
  4. agent.js बेसलाइन डेटा (कंसोल, त्रुटियाँ) भेजता है और ऑन-डिमांड प्रश्नों (query_element, get_page_snapshot, आदि) के लिए लॉन्ग-पोल करता है

sncro का उपयोग करना

अधिकांश उपयोगकर्ताओं को स्वयं रिले चलाने की आवश्यकता नहीं है — relay.sncro.net पर होस्टेड संस्करण मुफ्त-स्तरीय अनुकूल है। sncro.net पर अपना प्रोजेक्ट पंजीकृत करें और अपनी प्रोजेक्ट कुंजी प्राप्त करें।

FastAPI: middleware/sncro_middleware.py को अपने प्रोजेक्ट में डालें, फिर:

from middleware.sncro_middleware import SncroMiddleware, sncro_routes

app = FastAPI(debug=True)  # sncro only loads when debug=True
if app.debug:
    app.include_router(sncro_routes)
    app.add_middleware(SncroMiddleware, relay_url="https://relay.sncro.net")

Flask: middleware/sncro_flask.py को अपने प्रोजेक्ट में डालें, फिर:

from sncro_flask import init_sncro

app = Flask(__name__)
if app.debug:
    init_sncro(app, relay_url="https://relay.sncro.net")

दोनों मिडलवेयर केवल डिबग मोड में सक्रिय होते हैं — उत्पादन में शून्य ओवरहेड।

योगदान करना

हमें नए फ्रेमवर्क प्लगइन्स पसंद हैं। CONTRIBUTING.md में पूर्ण विनिर्देश है कि एक प्लगइन को क्या करना चाहिए — कुकीज़, रूट, सुरक्षा हेडर — और परीक्षण टेम्पलेट। Django, Rails, Express, Next.js, ASP.NET, Go — सभी का स्वागत है।

बग रिपोर्ट और सुरक्षा मुद्दे: SECURITY.md देखें।

लाइसेंस

MIT। LICENSE देखें।

sncro.net पर डैशबोर्ड (प्रोजेक्ट प्रबंधन, बिलिंग, व्यवस्थापक) एक अलग मालिकाना रेपो में रहता है।