RustUse MCP Server is the AI-facing Model Context Protocol server for RustUse. It exposes RustUse catalog data, rules, adoption paths, docs, reusable prompt templates, and bounded planning tools to MCP-compatible clients.
This repository lives beside docs, use-math, use-geometry, use-cli, use-web, and the other RustUse repositories. It is not a use-* facade crate and should not be named use-mcp.
Version 0.1 is deliberately small and read-only. It uses stdio transport through the official Rust rmcp SDK. It does not write files, run commands, publish crates, call GitHub write APIs, or mutate sibling RustUse repositories.
RustUse has many small primitive Rust crates, facade sets, documentation surfaces, and adoption paths. AI clients need a stable way to ask about that structure without guessing from the filesystem or making broad changes. This MCP server gives those clients a bounded, protocol-compliant interface for catalog lookup, rule validation, overlap checks, and prompt generation.
Build the server:
cargo build --release -p rustuse-mcp-serverRun it over stdio:
cargo run -p rustuse-mcp-serverValidate the workspace:
cargo fmt
cargo clippy --workspace --all-targets -- -D warnings
cargo test --workspaceUse stdio transport and point your MCP client at the release binary:
/path/to/RustUse/git_local/mcp/target/release/rustuse-mcp-server
Example client configs live in examples/.
rustuse://catalogrustuse://rulesrustuse://adoption-pathsrustuse://setsrustuse://sets/use-mathrustuse://sets/use-geometryrustuse://sets/use-clirustuse://sets/use-webrustuse://sets/use-datarustuse://promptsrustuse://docs/overviewrustuse://docs/security
Resource templates are available for sets, crates, and docs where the SDK supports them.
rustuse_catalog_searchrustuse_get_setrustuse_get_craterustuse_list_childrenrustuse_check_name_collisionrustuse_find_overlaprustuse_validate_set_planrustuse_generate_copilot_prompt
Tools return readable text and structured JSON where practical. Domain validation failures are returned as tool execution errors, not process crashes.
rustuse_brainstorm_setrustuse_create_set_v0_1rustuse_create_child_craterustuse_validate_facaderustuse_audit_overlaprustuse_generate_copilot_planrustuse_generate_docs_page
Prompt templates live in prompts/*.md and can be read directly outside MCP.
Version 0.1 is read-only. It does not implement Streamable HTTP, file writes, shell execution, GitHub writes, crates.io publishing, git commits, repository creation, or sibling repository mutation.
Stdout is reserved for valid MCP protocol messages. Diagnostics must go to stderr.
- v0.2 local repo scanner and catalog verification.
- v0.3 dry-run scaffold plans.
- v0.4 guarded file-writing behind explicit
--allow-write. - v0.5 integration with
rustuseCLI /cargo-rustuse. - v0.6 GitHub and crates.io metadata awareness.
- Possible future
use-mcpfacade only if reusable MCP primitives emerge.