Interface McpClient

All Superinterfaces:
AutoCloseable
All Known Implementing Classes:
DefaultMcpClient

public interface McpClient extends AutoCloseable
Represents a client that can communicate with an MCP server over a given transport protocol, retrieve and execute tools using the server.
  • Method Details

    • listTools

      List<ToolSpecification> listTools()
      Obtains a list of tools from the MCP server.
    • executeTool

      String executeTool(ToolExecutionRequest executionRequest)
      Executes a tool on the MCP server and returns the result as a String. Currently, this expects a tool execution to only contain text-based results.
    • listResources

      List<McpResource> listResources()
      Obtains the current list of resources available on the MCP server.
    • listResourceTemplates

      List<McpResourceTemplate> listResourceTemplates()
      Obtains the current list of resource templates (dynamic resources) available on the MCP server.
    • readResource

      McpReadResourceResult readResource(String uri)
      Retrieves the contents of the resource with the specified URI. This also works for dynamic resources (templates).
    • listPrompts

      List<McpPrompt> listPrompts()
      Obtain a list of prompts available on the MCP server.
    • getPrompt

      McpGetPromptResult getPrompt(String name, Map<String,Object> arguments)
      Render the contents of a prompt.
    • checkHealth

      void checkHealth()
      Performs a health check that returns normally if the MCP server is reachable and properly responding to ping requests. If this method throws an exception, the health of this MCP client is considered degraded.