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 thecommand
path 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_LOG
environment variable (e.g.,RUST_LOG=debug
orRUST_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.