Public API for calling MCP servers through direct Anubis client integration.
Summary
Functions
Ensures an endpoint client is started and MCP initialization is complete.
Types
Functions
@spec await_endpoint_ready( endpoint_id(), keyword() ) :: :ok | {:error, term()}
Ensures an endpoint client is started and MCP initialization is complete.
This is intended for flows that must guarantee server readiness before subsequent operations (for example runtime tool synchronization).
@spec call_tool(endpoint_id(), String.t(), map(), keyword()) :: result()
@spec endpoint_status(endpoint_id()) :: {:ok, map()} | {:error, term()}
@spec get_prompt(endpoint_id(), String.t(), map(), keyword()) :: result()
@spec list_prompts( endpoint_id(), keyword() ) :: result()
@spec list_resource_templates( endpoint_id(), keyword() ) :: result()
@spec list_resources( endpoint_id(), keyword() ) :: result()
@spec list_tools( endpoint_id(), keyword() ) :: result()
@spec read_resource(endpoint_id(), String.t(), keyword()) :: result()
@spec refresh_endpoint(endpoint_id()) :: {:ok, Jido.MCP.Endpoint.t(), Jido.MCP.ClientPool.client_ref()} | {:error, term()}
@spec register_endpoint(Jido.MCP.Endpoint.t()) :: {:ok, Jido.MCP.Endpoint.t()} | {:error, {:endpoint_already_registered, atom()} | {:invalid_endpoint, term()}}
@spec unregister_endpoint(endpoint_id()) :: {:ok, Jido.MCP.Endpoint.t()} | {:error, :unknown_endpoint}