programmatūra · 4 min · 16.07.2026

mcpsnoop rāda katru MCP rīka izsaukumu starp AI klientu un serveri terminālī

Kad AI aģents klusi izlaiž rīka izsaukumu vai iestrēgst, gaidot atbildi, izstrādātājam līdz šim bija grūti ieraudzīt, kas īsti aizgāja pa vadu starp klientu un serveri. mcpsnoop — Go valodā rakstīts rīks, ko autors ar segvārdu kerlenton 4. jūlijā publicēja GitHub un iesūtīja Hacker News kā Show HN — ievietojas tieši šajā vadā un izdrukā terminālī katru JSON-RPC kadru, kamēr īstais klients un serveris sarunājas.

Model Context Protocol (MCP) ir protokols, pa kuru AI klienti, piemēram, Claude Code un Cursor, pieprasa rīkus no atsevišķiem serveriem. Datu apmaiņu parasti nes JSON-RPC pa stdio: klients raksta serverim standarta ievadē, serveris atbild standarta izvadē. Kad kaut kas nostrādā greizi, šī plūsma paliek neredzama.

Problēmu, ko rīks risina, ir viegli aprakstīt un grūti pamanīt. Aģents var negaidīti izlaist rīka izsaukumu, iestrēgt uz atbildi vai vienoties ar serveri par citu iespēju kopu, nekā izstrādātājs gaidīja. Reālajā klienta satiksmē to ierauga tikai tad, ja atrodas pašā caurulē starp klientu un serveri.

Kā tas ievietojas vadā

Rīks strādā kā caurspīdīgs starpnieks. Klienta MCP konfigurācijā servera palaišanas komandu aptin ar mcpsnoop, un ne klientam, ne serverim nekas nav jāmaina. Ja serveri agrāk palaida ar node build/index.js, tad tagad komanda kļūst mcpsnoop -- node build/index.js. Autors uzsver, ka rīks sēž reālajā datu ceļā, nevis blakus tam.

Wireshark priekš MCP. Caurspīdīgs starpnieks, kas rāda katru īsto rīka izsaukumu starp tavu AI klientu un MCP serveriem, tiešraidē terminālī.

mcpsnoop atbalsta stdio serverus un streamable-HTTP serverus (pēdējos reversā starpnieka režīmā ar karogu --target). Instalēt to var ar go install github.com/kerlenton/mcpsnoop/cmd/mcpsnoop@latest, kā arī caur Homebrew vai lejupielādējot gatavu bināro failu no Releases lapas. Licence ir MIT.

Ko rāda terminālis

TUI logā parādās pieprasījumi, atbildes, paziņojumi un servera stderr izvade. Katram izsaukumam blakus ir aizkave, un atzīmētas ir kļūdas, ieskaitot tos rīka izsaukumus, kas atgriežas ar isError. Uz vēl neatbildētajiem izsaukumiem tikšķ dzīvs taimeris, tāpēc iekārušos rīku pamana uzreiz.

Ar taustiņu enter var ieskatīties konkrētā kadrā, ar e eksportēt sesiju, bet ? atver palīdzības izvēlni.

Filtri un atkārtošana

Nospiežot /, plūsmu var filtrēt ar tukšumsimboliem atdalītām atslēgām, kuras saista loģiskais UN:

  • tool: — pēc rīka nosaukuma
  • status: — pēc iznākuma (ok, error, slow, pending, bad, warn)
  • dir: — pēc virziena (c2s klients serverim, s2c serveris klientam)
  • kind: — pēc kadra tipa (req, resp, notify, stderr, invalid)
  • method: un id: — pēc JSON-RPC metodes vai pieprasījuma numura

Piemēram, tool:search status:slow atlasa lēnos izsaukumus vienam rīkam. Otra ērtība ir atkārtošana: ar taustiņu r var vēlreiz palaist notvertu rīka izsaukumu pret svaigu servera kopiju, nedzenot cauri visu klientu no jauna. Tas saīsina ciklu, kad izstrādātājs mēģina atkārtot vienu konkrētu kļūdu.

Ar ko atšķiras no MCP Inspector

Oficiālais MCP Inspector ir atsevišķs rīks, ko izstrādātājs pievieno serverim un ar kuru pats izsauc rīkus, lai pārbaudītu, kā serveris atbild. mcpsnoop neizsauc neko pats. Tas noklausās to satiksmi, ko rada īstais klients ar īsto serveri. Ja Claude Code vai Cursor uzvedas dīvaini tikai reālā darbā, starpību starp gaidīto un notikušo var redzēt tikai tajā pašā vadā, pa kuru iet dati. Terminal Trove apraksta rīku tieši kā TUI MCP satiksmes izpētei.

Rīks ir Go modulis, kas reģistrēts pkg.go.dev, un instalējams jau tagad. Kods atrodas GitHub ar MIT licenci.

Avoti

komentārisaruna

Komentāri

Šim rakstam vēl nav komentāru. Esi pirmais, kurš dalās ar savu viedokli.

Pievieno komentāru

Tavs e-pasts netiks publicēts. Obligātie lauki atzīmēti.

vēl no programmatūrasaistītie