cratesio-mcp
MCP server for querying crates.io - the Rust package registry
cratesio-mcp
MCP server for querying crates.io -- the Rust package registry. Built with tower-mcp.
Gives your AI agent access to crate search, documentation, dependency analysis, download stats, and security auditing -- everything it needs to make informed decisions about Rust dependencies.
Quick start
Hosted (no install)
A public instance is running at https://cratesio-mcp.fly.dev/. Add to your MCP client config:
{
"mcpServers": {
"cratesio-mcp": {
"type": "http",
"url": "https://cratesio-mcp.fly.dev/"
}
}
}
Install from crates.io
cargo install cratesio-mcp
Build from source
git clone https://github.com/joshrotenberg/cratesio-mcp
cd cratesio-mcp
cargo install --path .
Docker
docker run -p 3000:3000 ghcr.io/joshrotenberg/cratesio-mcp:latest
MCP client configuration
Claude Code (stdio)
{
"mcpServers": {
"cratesio-mcp": {
"command": "cratesio-mcp"
}
}
}
Claude Code (HTTP, local or remote)
{
"mcpServers": {
"cratesio-mcp": {
"type": "http",
"url": "http://localhost:3000/"
}
}
}
Claude Desktop
Add to claude_desktop_config.json:
{
"mcpServers": {
"cratesio-mcp": {
"command": "cratesio-mcp"
}
}
}
What's included
Tools (23)
| Tool | Description |
|---|---|
search_crates | Search for crates by name or keywords |
get_crate_info | Detailed crate metadata (description, links, stats) |
get_crate_versions | Version history with release dates and download counts |
get_crate_version | Detailed metadata for a specific version |
get_crate_readme | README content for a crate version |
get_crate_features | Feature flags and their sub-feature activations |
get_crate_docs | Browse documentation structure from docs.rs |
get_doc_item | Full docs for a specific item (fn, struct, trait) |
search_docs | Search for items by name within a crate's docs |
get_dependencies | Dependencies for a specific version |
get_reverse_dependencies | Crates that depend on a given crate |
audit_dependencies | Check deps against OSV.dev vulnerability database |
get_downloads | Download statistics and trends |
get_version_downloads | Daily download stats for a specific version |
get_crate_authors | Authors listed in Cargo.toml |
get_owners | Crate owners and maintainers |
get_user | User profile by GitHub username |
get_user_stats | Total download stats for a user's crates |
get_summary | crates.io global statistics |
get_categories | Browse crates.io categories |
get_category | Details for a specific category |
get_keywords | Browse crates.io keywords |
get_keyword | Details for a specific keyword |
Resources (4)
| Resource | Description |
|---|---|
crates://{name}/info | Crate metadata |
crates://{name}/readme | Crate README content |
crates://{name}/docs | Documentation structure |
| Recent searches | Recent search queries and results |
Prompts (2)
| Prompt | Description |
|---|---|
analyze_crate | Guided comprehensive crate analysis |
compare_crates | Compare multiple crates side by side |
Transports
- stdio (default) -- for Claude Desktop, Claude Code, and other MCP clients
- HTTP/SSE -- Streamable HTTP with server-sent events (MCP 2025-11-25 spec)
# stdio (default)
cratesio-mcp
# HTTP
cratesio-mcp --transport http --port 3000
The HTTP transport includes a tower middleware stack: timeout, rate limiting, bulkhead concurrency control, optional response caching, and structured tracing.
Library usage
The crate also exposes a typed async client for the crates.io API:
use std::time::Duration;
use cratesio_mcp::client::{CratesIoClient, CratesQuery, Sort};
let client = CratesIoClient::new("my-app", Duration::from_secs(1))?;
// Search for crates
let query = CratesQuery::builder()
.search("tower")
.sort(Sort::Downloads)
.build();
let results = client.crates(query).await?;
// Get crate details
let info = client.get_crate("tower-mcp").await?;
The client covers 46 endpoints across crates, versions, owners, categories, keywords, users, teams, tokens, publishing, and trusted publishing.
License
MIT OR Apache-2.0
Verwandte Server
Alpha Vantage MCP Server
SponsorAccess financial market data: realtime & historical stock, ETF, options, forex, crypto, commodities, fundamentals, technical indicators, & more
shadcn/ui MCP
Provides context about shadcn/ui components, including structure, usage, and installation for React, Svelte, and Vue.
debug-mcp
MCP server exposing .NET debugging as 34 AI-accessible tools via ICorDebug APIs — breakpoints, stepping, inspection, exception autopsy, and code analysis.
FastMCP-Scala
A Scala 3 library for building Model Context Protocol (MCP) servers.
Mindpilot MCP
Visualize legacy code and inspect complex flows to understand your agent's operations.
Snowfort Circuit MCP
Automate web browsers and Electron desktop applications for AI coding agents.
Basalt
Design system MCP server — query tokens, components, icons, and WCAG contrast data from Git-backed design systems.
ToolRank
Score and optimize MCP tool definitions for AI agent discovery. Analyzes Findability, Clarity, Precision, and Efficiency.
Stackzero Labs MCP
A server for generating Stackzero Labs UI components.
ClipToWSL
Enables AI coding agents to read Windows clipboard contents, including text and images, from within the Windows Subsystem for Linux (WSL).
Intlayer
A MCP Server that enhance your IDE with AI-powered assistance for Intlayer i18n / CMS tool: smart CLI access, versioned docs.