All Classes and Interfaces

Class
Description
Registers built-in MCP resources and URI templates for filesystem read/list and player snapshots.
Canonical URIs for built-in MCP resources.
Central list of built-in McpToolDefinitions.
Dependencies shared by built-in tool handlers: the MCP plugin, ServerFilePaths, and a live PluginSettings supplier.
String constants for built-in MCP surface area.
Factory for McpToolDefinition instances used by built-in tool classes (*ToolSpec).
Narrow view of Bukkit services used during MCP plugin lifecycle.
Evaluates whether a path relative to the server root is allowed by ToolAccessConfig file/folder lists.
MCP tool that writes or appends raw bytes to a path under the server root.
Extracts the MCP access token from HTTP requests in two supported shapes: Authorization: Bearer &lt;token&gt; HttpTokenSupport.HEADER_MCP_TOKEN: <token> (plain header value) The servlet variant reads HttpServletRequest headers; the map variant supports the MCP transport's header map during the security validation callback (header names matched case-insensitively).
Builds a ServerConnector for HTTPS using a keystore from SslSettings.
Reads the tail of a UTF-8 text file without loading the whole file into memory.
In-game admin command: reload config.yml without restarting the server or dropping MCP tools.
Embeds Jetty and the MCP SDK's streamable HTTP servlet so clients connect to http://host:port plus the configured servlet path (see PluginSettings.mcpPath()).
Shared Reactor Scheduler for blocking file I/O used by filesystem tools, so work stays off the game thread without unbounded thread creation.
Describes one MCP tool: a stable id, the metadata clients see in tools/list, and an asynchronous handler for tools/call.
Everything a tool handler needs for one tools/call: the raw MCP request, the authenticated access profile, and the effective policy for this tool id.
Immutable record holding all fields for McpToolInvocation; constructed by ToolInvocationGate after the token and tool policy have been validated.
Public extension point for registering MCP tools from other Bukkit plugins.
Spigot plugin entry point: setups the bootstrap class
Service implementation registered under MinecraftServerMcp: tools are added through ToolInvocationGate, while built-in resources are registered separately in McpHttpServer using ResourceInvocationGate.
Bootstrap class; Loads config.yml, starts the embedded MCP HTTP (and optional HTTPS) server, and registers MinecraftServerMcp in the Bukkit ServicesManager.
Normalizes user-provided path fragments so comparisons use forward slashes regardless of OS separator.
Serializes live Player data into ordered maps and JSON strings for the players_list and player_get MCP resources.
Immutable snapshot of the MCP plugin's config.yml: HTTP listen options, global limits, and the mapping from secret tokens to access profiles.
Applies the same bearer-token and ToolAccessConfig checks as ToolInvocationGate, but for MCP resources/read requests.
Callback executed after ResourceInvocationGate has resolved the token profile and confirmed that the policy id is enabled.
MCP tool that runs a command as the server console, subject to CommandPolicy for the caller's token.
Canonical Minecraft server root directory and helpers to resolve user-supplied relative paths safely.
MCP tool that returns a bounded tail of logs/latest.log under the server root.
Production BukkitAccess backed by Spigot's Bukkit static facade.
Optional TLS (HTTPS) listener for the embedded MCP server.
Constant-time comparisons for secret strings (e.g.
One named entry under access in config.yml: a shared secret token and a map of ToolAccessConfig keyed by MCP tool id.
Policy for a single MCP tool id under access.&lt;profile&gt;.tools.&lt;toolId&gt;.
Helpers for reading string-keyed maps: MCP McpSchema.CallToolRequest.arguments() (client JSON) and ToolAccessConfig.extra() (YAML).
Bridges MCP McpToolDefinition instances to the SDK's McpServerFeatures.AsyncToolSpecification by enforcing access control before the handler runs.
JSON envelopes for MCP McpSchema.CallToolResult payloads and for resource bodies that reuse the same shape.
String keys used in McpTransportContext.get(String) metadata.