About MCP Server SDK
MCP Server SDK is a work-in-progress MoonBit implementation for building running MCP servers. It supports Wasm Component Model and native backends, with tools and prompts as server capabilities.
Key features
- 01MoonBit MCP implementation
- 02Wasm Component Model backend
- 03Native backend
- 04Tools and prompts
- 05Stdio transport
Use cases
- 01Develop MCP servers in MoonBit
- 02Build the Wasm weather example
- 03Build a native-backend server
MCP support
The SDK builds MCP servers and supports version 2024-11-05 over Stdio. Servers can provide tools and prompts and call the client's roots capability.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMEMCP Server SDK
A WIP MoonBit implementation to support Model Context Protocol.
Supported backends:
- Wasm's Component Model
- Native backend
and more (as long as an implementation exists for peter-jerry-ye/async/stream).
The user can use this to develop a running MCP server, providing more functionality to their AI models.
Currently Supported Features
Version:
- 2024-11-05
Transport:
- Stdio
Provide server capabilities:
- Tools
- Prompts
Call client capabilities (if provided):
- List roots
Example
See ./example for a simple weather MCP server in Wasm, and ./example-c for a simple MCP server in native backend.
TODO
- Add documentation
- Add tests
- Support more features
- Better error handling and better UX
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.