bsm-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| BSM_URL | No | Base URL of your Bedrock Server Manager web instance | http://localhost:8000 |
| BSM_TOKEN | No | Optional pre-existing JWT access token | |
| BSM_TIMEOUT | No | Request timeout in seconds | 30.0 |
| BSM_PASSWORD | No | Password for the user account | |
| BSM_USERNAME | No | BSM user account with appropriate permissions | admin |
| BSM_VERIFY_SSL | No | Verify SSL certificates when connecting over HTTPS | true |
| BSM_OPENAPI_PATH | No | Path or URL to OpenAPI spec (if using local file) |
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
} |
| logging | {} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| obtain_tokenB | Authenticate using username and password to receive a Bearer JWT access token. |
| list_all_serversA | Retrieve overview and operational status for all managed Minecraft Bedrock servers. |
| get_system_infoA | Retrieve host system resource usage, OS details, and BSM application version. |
| get_server_statusB | Get detailed runtime status, CPU/RAM usage, and active player counts for a specific server. |
| start_serverB | Start a stopped Minecraft Bedrock Dedicated Server. |
| stop_serverB | Gracefully stop a running Minecraft Bedrock Dedicated Server. |
| restart_serverB | Restart a running Minecraft Bedrock Dedicated Server. |
| send_commandB | Execute a console command on a running Minecraft server (e.g. 'say Hello', 'whitelist on', 'time set day'). |
| create_backupC | Create a hot backup of the specified Minecraft server's world and configuration. |
| list_backupsC | List all available backup archives for a specific server. |
| get_allowlistC | Get the allowlist (whitelist) of players permitted to join the server. |
| add_to_allowlistC | Add a player by gamertag and optional XUID to the server allowlist. |
| remove_from_allowlistB | Remove a player from the server allowlist by gamertag. |
| get_permissionsB | Get player permission levels (visitor, member, operator) configured for the server. |
| set_permissionC | Set a player's permission level by XUID. |
| get_propertiesC | Retrieve key-value settings from server.properties (e.g. gamemode, difficulty, max-players, port). |
| list_addonsC | List all behavior and resource packs installed on the server. |
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 17 tools
Each tool targets a distinct resource or action: auth, host info, server listing, per-server status, lifecycle, console, backups, allowlist, permissions, properties, and addons. Overlaps like list_all_servers versus get_server_status are differentiated by scope (all servers vs one server) and descriptions clarify intent. No two tools appear to do the same thing.
Names follow a consistent snake_case verb_noun pattern (get_, list_, start_, stop_, add_, remove_, set_, create_). Minor variations like obtain_token versus get_* and get_permissions versus set_permission are still predictable. Overall naming is highly consistent.
17 tools is slightly above the typical 3-15 sweet spot but each tool maps to a distinct capability in server management. No obvious redundant tools exist, though the count is on the heavier side.
Core read and lifecycle coverage exists, but notable gaps remain: properties can be read (get_properties) but not written (no set_properties), backups can be created and listed but not restored or deleted, and there is no server create/delete. These missing operations create dead ends for common administrative workflows.