THEDARKMONSTER Tools Suite · MCP Inspector
100% client-side JSON-RPC 2.0 HTTP / SSE / stdio
Developer Tool · MCP (Model Context Protocol)

MCP Server Inspector & Validator

Έλεγξε έναν MCP server πριν του δώσεις πρόσβαση σε δεδομένα, αρχεία ή εντολές. Συνδέσου με HTTP/SSE, ή επικόλλησε τις απαντήσεις initialize / tools/list — και πάρε capabilities, πίνακα tools, JSON Schema validation, security audit με score και findings, argument builder για tools/call και έτοιμο config. Όλα τοπικά στον browser σου.

TransportStreamable HTTP
Έλεγχοι ασφαλείας28+
Schema validationJSON Schema
ΔεδομέναΜένουν τοπικά
01.

Πηγή δεδομένων

Το token δεν καταγράφεται ούτε αποθηκεύεται — στέλνεται μόνο προς το endpoint που ορίζεις.

Δέχεται: απάντηση initialize ({result:{protocolVersion,capabilities,serverInfo}}), απάντηση tools/list ({result:{tools:[…]}}), σκέτο array από tools, πλήρες export ({serverInfo,tools}), ή ακόμη και error αντικείμενο για επεξήγηση. Το σχήμα εντοπίζεται αυτόματα.


        
02.

Αποτελέσματα ελέγχου

Δεν υπάρχουν δεδομένα ακόμη. Συνδέσου σε ένα endpoint (καρτέλα «Ζωντανή σύνδεση») ή επικόλλησε JSON από tools/list.

03.

Tools, schemas & argument builder

Τα tools θα εμφανιστούν εδώ μετά την ανάλυση.

04.

Γρήγορη αναφορά πρωτοκόλλου

Μεταφορές (transports)

MCP CLIENT host / agent / IDE MCP SERVER tools · resources · prompts JSON-RPC request JSON-RPC response stdio (τοπικό) stdin / stdout newline-delimited JSON-RPC logs → stderr δεν είναι δικτυακά προσβάσιμο Streamable HTTP POST σε ένα endpoint Accept: application/json, text/event-stream Mcp-Session-Id (προαιρετικό) HTTP + SSE (legacy) GET /sse → event stream POST στο endpoint που ανακοινώνει το stream παλαιότερη γενιά

Μέθοδοι & error codes

ΒΑΣΙΚΕΣ ΜΕΘΟΔΟΙ

initializehandshake, capabilities
tools/listλίστα εργαλείων + inputSchema
tools/callεκτέλεση εργαλείου
resources/listδιαθέσιμα resources
resources/readανάγνωση περιεχομένου
prompts/list · getπρότυπα prompts
pingέλεγχος ζωής

NOTIFICATIONS & ERRORS

notifications/initializedμετά το initialize
*/list_changedάλλαξε η λίστα
notifications/progressπρόοδος
-32700 / -32600parse / invalid request
-32601 / -32602method not found / invalid params
-32603internal error
-32002resource not found (MCP)

Οι διαθέσιμες μέθοδοι εξαρτώνται από τα δηλωμένα capabilities του server· ένας server χωρίς resources δεν χρειάζεται να απαντήσει σε resources/list.

05.

Checklist πριν δώσεις πρόσβαση σε MCP server

☐ Διάβασα όλα τα tool descriptions — θεωρώ τα untrusted.
☐ Κανένα description δεν περιέχει εντολές προς το μοντέλο ή απόκρυψη ενεργειών.
☐ Ξέρω ποια tools είναι destructive και απαιτούν ανθρώπινη επιβεβαίωση.
☐ Τα inputSchema έχουν τύπους, όρια και additionalProperties:false.
☐ Παράμετροι τύπου URL/διαδρομής/query είναι περιορισμένες (pattern, allowlist).
☐ Δεν υπάρχει tool που συνδυάζει exec + δίκτυο + εγγραφή αρχείων χωρίς sandbox.
☐ Ο server τρέχει με ελάχιστα δικαιώματα (read-only root, limited scopes).
☐ Remote transport μόνο με TLS και έλεγχο Origin.
☐ Το token είναι audience-bound και δεν προωθείται σε άλλους servers.
☐ Υπάρχει rate limit και όριο στο μέγεθος απαντήσεων/αρχείων.
☐ Οι εκδόσεις είναι pinned (όχι @latest) και τα packages από αξιόπιστη πηγή.
☐ Τα secrets δίνονται μέσω env/secret store, ποτέ inline στο config.
☐ Καταγράφω τα tools/call για audit και έχω τρόπο να τα ακυρώσω.
☐ Έχω δοκιμάσει τι κάνει σε λάθος/κακόβουλο input (fuzzing στα ορίσματα).
06.

Συχνές ερωτήσεις

Τι κάνει ακριβώς ο Inspector;

Αναλύει την απάντηση initialize (capabilities, serverInfo, protocolVersion, instructions) και την tools/list (ονόματα, περιγραφές, inputSchema, annotations). Πάνω σε αυτά τρέχει 28+ στατικούς ελέγχους ασφαλείας, επικυρώνει JSON Schema, φτιάχνει argument builder για tools/call και υπολογίζει το κόστος context (≈ tokens) του tools payload.

Γιατί η ζωντανή σύνδεση αποτυγχάνει συχνά;

Οι περισσότεροι MCP servers τρέχουν με stdio (τοπικές διεργασίες) και δεν εκτίθενται σε δίκτυο. Όσοι εκθέτουν HTTP συχνά δεν στέλνουν CORS headers ή απορρίπτουν ξένα Origin — που είναι σωστό μέτρο προστασίας (DNS rebinding). Σε αυτές τις περιπτώσεις χρησιμοποίησε το curl snippet ή το τοπικό proxy που δίνει το εργαλείο.

Το score είναι πιστοποίηση ασφαλείας;

Όχι. Είναι ευρετικό σκορ από στατικούς ελέγχους + best practices της προδιαγραφής. Δείχνει προτεραιότητες, δεν αντικαθιστά δυναμική δοκιμή, code review του server ή threat modeling της δικής σου χρήσης.

Στέλνεται το JSON μου κάπου;

Όχι. Η ανάλυση, η επικύρωση και το scoring γίνονται εξ ολοκλήρου με JavaScript στον browser σου. Το μόνο δικτυακό αίτημα γίνεται όταν εσύ πατήσεις «Σύνδεση» — και πάει αποκλειστικά στο endpoint που πληκτρολόγησες.

Τι είναι «tool poisoning»;

Κακόβουλο ή παραβιασμένο περιεχόμενο σε tool descriptions/instructions που στοχεύει το μοντέλο, όχι τον χρήστη: κρυφές εντολές, «μην αναφέρεις αυτή την ενέργεια», οδηγίες να σταλούν δεδομένα σε εξωτερικό URL. Ο Inspector σαρώνει γι' αυτά τα μοτίβα και για αόρατους χαρακτήρες (bidi / zero-width).

Μπορώ να το χρησιμοποιήσω για CI;

Το εργαλείο είναι client-side, αλλά η λογική του είναι απλή: κρατάς ένα JSON export από tools/list, το περνάς από τον έλεγχο και αποθηκεύεις το score/findings ως regression baseline. Αν θέλεις, μπορείς να αντιγράψεις τα checks και να τα μεταφέρεις σε script.

07.

Πηγές & πρότυπα

  • Model Context Protocol specification — JSON-RPC 2.0, lifecycle, tools/resources/prompts, transports. (η προδιαγραφή εξελίσσεται: ο Inspector εμφανίζει πάντα την protocolVersion που δηλώνει ο server σου)
  • MCP security best practices — untrusted descriptions, confused deputy, token audience binding, session hijacking, localhost & Origin validation.
  • JSON Schema (draft 2020-12) — τύποι, required, enum, pattern, όρια, additionalProperties.
  • OWASP-style automated threat categories — για τη λογική των ελέγχων σε input που καταλήγει σε εντολές, αρχεία, δίκτυο και βάσεις.

Σχετικό υλικό: οδηγός κατασκευής MCP server · local AI agents · Prompt Injection tester · API key inspector · LLM cost calculator.

Αντιγράφηκε!