Yeah, mcp-go is a pretty well known project (i know it from godoc-mcp), but I don't know whether 'better' is the right word.
It looks like it's a case of builder pattern/runtime validated vs codegen/typed. The readme doesn't reference mcp-go by name, but it does lead with 'type-safe, intuitive', which could be a poke at it?
Do you know of anything that will autogen a golang mcp server from an OpenAPI spec? Seems completely do-able, and I'll write a tool for this myself if it doesn't already exist.
I also wrote a Go library for MCP a few weeks ago, with type safety as one of the project goals: https://github.com/dstotijn/go-mcp. It uses generics to support type-safe RPC methods. Additionally, it leans on JSON schema and its features for property validation.
This seems to be a better alternative: https://github.com/mark3labs/mcp-go
Yeah, mcp-go is a pretty well known project (i know it from godoc-mcp), but I don't know whether 'better' is the right word.
It looks like it's a case of builder pattern/runtime validated vs codegen/typed. The readme doesn't reference mcp-go by name, but it does lead with 'type-safe, intuitive', which could be a poke at it?
Do you know of anything that will autogen a golang mcp server from an OpenAPI spec? Seems completely do-able, and I'll write a tool for this myself if it doesn't already exist.
Looks like there's also an official Go SDK coming soon, likely based on mark3labs/mcp-go. Proposal: https://github.com/orgs/modelcontextprotocol/discussions/224
Have used this for a hackday recently, found it easy to use, even for a complete newcomer.
I also wrote a Go library for MCP a few weeks ago, with type safety as one of the project goals: https://github.com/dstotijn/go-mcp. It uses generics to support type-safe RPC methods. Additionally, it leans on JSON schema and its features for property validation.
Whenever I see this many emojis in a readme, I assume the entire project was written by AI.
Or, worse, an npm-infected frontend engineer. It's like a mindvirus in that ecosystem.
>"Whenever I see this many emojis in a readme, I assume the entire project was written by AI."
What difference does that make? Have you read the code and formulated an actual criticism, or is this just kneejerk "AI bad"?