This repository contains a simple example of a Model Context Protocol (MCP) server implemented in Rust using a newline-delimited JSON stdio transport.
fhd.mp4
This is currently a basic test implementation created for learning and debugging purposes. It handles the MCP initialization handshake and basic list commands (tools/list, resources/list, prompts/list) as well as a dummy tool call (tools/call).
-
Build the server:
cargo build
-
Configure an MCP client (like Claude Desktop) to launch the executable found at
target/debug/mcp-rust-sdk. Ensure the client uses newline-delimited JSON for stdio communication.For example, in
claude_desktop_config.json(or similar client configuration), you might add an entry like this, replacing thecommandpath with the absolute path to your built executable:{ "mcpServers": { "rust_stdio_test": { "command": "/path/to/your/mcp-rust-sdk/target/debug/mcp-rust-sdk" } // ... other servers ... } }(Remember to use the correct absolute path for your system)
-
Set the
RUST_LOGenvironment variable (e.g.,RUST_LOG=debugorRUST_LOG=trace) to control logging verbosity. Logs are written to$HOME/.screenpipe/logs/rust_stdio_test_logs/.
This project is licensed under the MIT License - see the LICENSE file for details.