mcp-roadmapsh
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| GITHUB_TOKEN | No | Optional, raises GitHub API rate limit | |
| ROADMAPSH_OWNER | No | GitHub owner of the developer-roadmap repo | nilbuild |
| ROADMAPSH_BRANCH | No | developer-roadmap branch | master |
| ROADMAPSH_CACHE_DIR | No | HTTP cache directory | ~/.cache/mcp-roadmapsh |
| ROADMAPSH_STATE_DIR | No | Progress state directory | ~/.local/state/mcp-roadmapsh |
| ROADMAPSH_TIMEOUT_MS | No | HTTP timeout in milliseconds | 20000 |
| ROADMAPSH_CACHE_TTL_MS | No | Cache TTL in milliseconds | 86400000 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| roadmap_diagnoseA | Check connectivity to roadmap.sh and GitHub, and report cache/state status. |
| roadmap_listA | List all available roadmap slugs (role-based and skill-based). |
| roadmap_getA | Get a roadmap by slug. format=outline returns a readable topic plan with node ids; format=raw returns the full graph JSON. |
| roadmap_topicA | Get the markdown content and curated links for one topic of a roadmap (by nodeId from the outline, or by query). |
| roadmap_searchA | Search roadmap.sh slugs by keyword within a scope (roadmaps, best-practices, question-groups, projects, videos). |
| roadmap_exportA | Export an entire roadmap as a single markdown document (all topics' content concatenated). includeContent=false returns structure only; maxTopics caps the count. |
| best_practices_listA | List all best-practice slugs. |
| best_practices_getA | Get a best-practice guide by slug (outline or raw graph). |
| questions_listA | List all interview question-group slugs. |
| questions_getA | Get the interview questions markdown for a question-group slug. |
| projects_listA | List all practice-project slugs. |
| project_getA | Get the markdown brief for one practice project by slug. |
| videos_listA | List all video resource slugs. |
| progress_markA | Mark a roadmap topic as learning, done, or skip (stored locally). |
| progress_statusB | Get local progress for a roadmap: counts and completion percent. |
| progress_nextA | Recommend the next unlearned topic for a roadmap based on local progress. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 16 tools
Each tool targets a distinct resource type or action: list tools are clearly separated by resource (projects, roadmaps, best-practices, questions, videos), and roadmap_get, roadmap_topic, roadmap_export, and roadmap_search each serve unique purposes. Even the progress tools are distinct (mark, status, next).
Most tools follow a noun_verb pattern (e.g., projects_list, roadmap_get, best_practices_get). However, a few deviate: roadmap_topic uses a noun, progress_status and progress_next are noun_noun/noun_adjective. Overall, the pattern is mostly consistent with minor exceptions.
With 16 tools, the count slightly exceeds the typical 15-tool high-water mark, but the server covers multiple content domains (roadmaps, best practices, questions, projects, videos) plus progress tracking, so each tool earns its place. The scope justifies the number.
The surface provides list and get operations for all resource types, plus roadmap-specific features (topic retrieval, export, search) and progress tracking. Minor gaps exist: no per-topic content tool for best practices, and search is limited to slugs rather than full content, but these are workable.