{"id":"emillindfors-language-server-mcp-rs","name":"language-server-mcp-rs","homepage":null,"repo_url":"https://github.com/EmilLindfors/language-server-mcp-rs","category":"devtools","subcategories":[],"tags":["mcp","rust","language-server","lsp","code-assistant","refactoring"],"what_it_does":"An MCP server that exposes rust-analyzer capabilities (via MCP tools) so AI assistants can query Rust code for types, diagnostics, completions, definitions, references, formatting, refactors, and macro expansion in a workspace.","use_cases":["Ask an AI assistant for Rust type info at a file position (hover-like queries)","Get compiler diagnostics for a Rust file via MCP tools","Request code completions, inlay hints, and macro expansions for Rust projects","Perform navigation/refactoring tasks such as goto definition, find references, and safe symbol rename across a workspace"],"not_for":["Production web/API use without running a local process (it is intended to be launched by a desktop/assistant host)","Use as a general-purpose code search/indexer for non-Rust projects","Use where enterprise auth, audit logging, or managed hosting requirements mandate a hosted API"],"best_when":"You want an AI assistant to interact with a local Rust codebase using rust-analyzer features through MCP/stdio.","avoid_when":"You cannot run local processes, need strong centralized access control/authentication, or require documented retry/idempotency guarantees for all tools.","alternatives":["Use rust-analyzer directly with an LSP-capable editor or extension","Use other MCP servers that wrap LSP functionality for languages (if available)","Build a custom MCP wrapper around rust-analyzer/rustc tooling"],"af_score":60.2,"security_score":21.2,"reliability_score":23.8,"package_type":"mcp_server","discovery_source":["github"],"priority":"low","status":"evaluated","version_evaluated":null,"last_evaluated":"2026-04-04T21:22:43.272143+00:00","interface":{"has_rest_api":false,"has_graphql":false,"has_grpc":false,"has_mcp_server":true,"mcp_server_url":null,"has_sdk":false,"sdk_languages":[],"openapi_spec_url":null,"webhooks":false},"auth":{"methods":[],"oauth":false,"scopes":false,"notes":"The README shows stdio-based MCP usage and does not describe any authentication mechanism. Access is implicitly local/host-controlled."},"pricing":{"model":null,"free_tier_exists":false,"free_tier_limits":null,"paid_tiers":[],"requires_credit_card":false,"estimated_workload_costs":null,"notes":"No pricing information provided; appears to be a self-hosted open-source tool."},"requirements":{"requires_signup":false,"requires_credit_card":false,"domain_verification":false,"data_residency":[],"compliance":[],"min_contract":null},"agent_readiness":{"af_score":60.2,"security_score":21.2,"reliability_score":23.8,"mcp_server_quality":78.0,"documentation_accuracy":72.0,"error_message_quality":0.0,"error_message_notes":null,"auth_complexity":95.0,"rate_limit_clarity":5.0,"tls_enforcement":20.0,"auth_strength":10.0,"scope_granularity":0.0,"dependency_hygiene":45.0,"secret_handling":40.0,"security_notes":"No authentication described; stdio/local deployment implies trust in the local host/assistant integration. The README does not mention TLS (not applicable to stdio) or secret handling. Dependency hygiene and secure error handling cannot be assessed from the provided README/metadata.","uptime_documented":0.0,"version_stability":35.0,"breaking_changes_history":30.0,"error_recovery":30.0,"idempotency_support":"false","idempotency_notes":"No explicit idempotency guarantees are documented for tools like rename/format/code actions; some operations may change the workspace and should be treated as non-idempotent.","pagination_style":"none","retry_guidance_documented":false,"known_agent_gotchas":["Some tools (e.g., rename, code_actions) may modify workspace state; an agent should confirm before applying changes.","All coordinates (line/column) are 0-indexed per the README; mismatched indexing can lead to incorrect results.","Relies on a running rust-analyzer subprocess and correct workspace path; misconfiguration will prevent tool functionality."]}}