ExMCP.ACP.LifecycleParams (ex_mcp v1.0.0-rc.0)

View Source

Pure normalization and validation for ACP session lifecycle parameters.

Summary

Functions

absolute_path?(path)

@spec absolute_path?(any()) :: boolean()

additional_directories(opts)

@spec additional_directories(keyword() | map() | nil) :: any()

client_opts(opts)

@spec client_opts(keyword()) :: keyword()

mcp_servers(opts)

@spec mcp_servers(keyword() | map() | nil) :: list()

normalize(params, opts)

@spec normalize(map(), keyword() | map() | nil) :: map()

valid_additional_directories?(directories)

@spec valid_additional_directories?(any()) :: boolean()

validate(opts, capabilities)

@spec validate(
  keyword(),
  map() | nil
) :: :ok | {:error, term()}

validate_additional_directories!(opts)

@spec validate_additional_directories!(keyword() | map() | nil | [String.t()]) ::
  [String.t()] | nil

validate_cwd(cwd)

@spec validate_cwd(any()) :: :ok | {:error, {:invalid_params, :cwd_must_be_absolute}}