Hacker News new | past | comments | ask | show | jobs | submit | noor_z's comments login

One advantage of MCP being "inspired by" LSP, at least to people like myself who work on LSP tools, is that a decent chunk of existing LSP code can be reused and repurposed. For example, most editors already ship with code for managing local server sidecars over stdio. There are a few annoying differences though like the lack of a header section in MCP.

Working on supporting MCP (model context protocol) in my LSP (language server protocol) proxy: https://github.com/noredeen/lspwatch.

I wrote this tool to make instrumenting language servers very easy. MCP (both protocol and architecture) seems heavily inspired by LSP which made me curious about what it would take to support it through my telemetry-capturing proxy.

Haven't thought too deeply about how useful an MCP proxy can be but I see it as potentially a general platform for monitoring or debugging MCP servers or clients.


Super interesting! I'm also working on something related to MCP and LSP: https://github.com/isaacphi/mcp-language-server it's an MCP server that runs a language server.

Do I understand this properly, you're building a telemetry tool for MCP similar to your telemetry tool for LSP, or is it something else?


Yup exactly. My tool is supposed to sit between MCP clients and servers. For now only stdio is in scope. Your tool is great. An MCP server for LSPs! I'll be taking it for a spin.

It's very possible I'm just bad at Go but it seems to me that the result of trying to adhere to CSP in my own Go projects is the increasing use of dedicated lifecycle management channels like `shutdownChan`. Time will tell how burdensome this pattern proves to be but it's definitely not trivial to maintain now.


Is using a server context a bad idea? Though tbh using it for the cancelation is a shutdown channel in disguise hah.


You're not bad at Go, literally everyone I know who has tried to do this has concluded it's a bad idea. Just stop using channels, there's a nice language hidden underneath the CSP cruft.


I've found the smartest go engineer in the room is usually the one NOT using channels.


Okay, but what are the viable alternatives?


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: