retroachievements-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| RA_API_KEY | No | Your Web API key from https://retroachievements.org/controlpanel.php. | |
| RA_USERNAME | No | Your RetroAchievements username. |
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 | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| ra_statusA | Reports whether RetroAchievements credentials are configured and where they came from (env vars or saved file). Call this first if you're unsure whether the server is ready to use. |
| ra_save_credentialsA | Validate a RetroAchievements username + Web API key against the live API, then persist them to a local config file so future tool calls work without env vars. USE ONLY with values the user typed in chat themselves — never guess or fabricate an API key. If the user does not have a key, point them at https://retroachievements.org/controlpanel.php first. |
| ra_user_profileB | Retrieve summary profile data for a RetroAchievements user (points, rank, motto, member-since, avatar). |
| ra_user_summaryB | Fuller summary for a user: recent games, recent achievements, last activity, rank, awards count. |
| ra_user_recent_achievementsA | Achievements a user has unlocked in the last N minutes (default 60). Useful for 'what did they just play?' queries. |
| ra_user_recently_played_gamesA | List of games the user has touched most recently, with last-played timestamps and per-game progress. |
| ra_user_completion_progressC | All games the user has earned at least one achievement in, with completion %, hardcore status, and award level. |
| ra_user_awardsB | Site awards the user has earned (mastery, beaten, event awards) with dates. |
| ra_user_achievements_betweenB | All achievements a user unlocked between two ISO dates. Powerful for weekly/monthly recaps. |
| ra_gameB | Basic metadata for a game by ID: title, console, developer, publisher, genre, release date, box art. |
| ra_game_extendedA | Full game info including the achievement list (id, title, description, points, badge, unlock counts). |
| ra_achievement_of_the_weekA | The currently featured achievement-of-the-week, plus the leaderboard of users who have already unlocked it. |
| ra_top_ten_usersA | The site's current top-ten ranked users by hardcore points. |
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 13 tools
Each tool has a clearly distinct purpose, targeting different entities (game, user, credentials) or aspects (basic vs. extended game info, profile vs. summary vs. recent activity). No two tools appear to overlap in functionality.
All tool names follow a consistent pattern: the prefix 'ra_' followed by the entity and optional descriptor (e.g., ra_game, ra_game_extended, ra_user_profile, ra_user_summary). All lowercase with underscores, no mixed conventions.
With 13 tools, the server is well-scoped for the RetroAchievements domain. It covers game lookups, user data (profile, summary, recent activity, progress), leaderboards, and credential management without being excessive or sparse.
The surface covers most common operations: game metadata, user stats, achievements, and progress. Minor gaps exist (e.g., no tool for game search or specific achievement details), but these are not critical for typical workflows.