Taskweft.MCP.PeerBehaviour behaviour (taskweft_mcp_client v0.2.0-dev.0)

Copy Markdown View Source

Contract for a peer MCP server connection.

Implement this behaviour to swap the concrete peer (e.g. replace a real peer MCP server with a test double via mox).

Summary

Callbacks

call_tool(t, t, map, keyword)

@callback call_tool(
  Taskweft.MCP.Client.t(),
  String.t(),
  map(),
  keyword()
) :: {:ok, [map()]} | {:error, term()}

connect(connection_spec, keyword)

@callback connect(
  Taskweft.MCP.Client.connection_spec(),
  keyword()
) :: {:ok, Taskweft.MCP.Client.t()} | {:error, term()}

disconnect(t)

@callback disconnect(Taskweft.MCP.Client.t()) :: :ok