aide

Types

pub type Server(tool, prompt) {
  Server(
    implementation: definitions.Implementation,
    tools: List(#(definitions.Tool, decode.Decoder(tool))),
    resources: List(definitions.Resource),
    resource_templates: List(definitions.ResourceTemplate),
    prompts: List(#(definitions.Prompt, decode.Decoder(prompt))),
  )
}

Constructors

pub type ServerResult {
  InitializeResult(definitions.InitializeResult)
  PingResponse
  ListResourcesResult(definitions.ListResourcesResult)
  ListResourceTemplatesResult(
    definitions.ListResourceTemplatesResult,
  )
  ReadResourceResult(definitions.ReadResourceResult)
  ListPromptsResult(definitions.ListPromptsResult)
  GetPromptResult(definitions.GetPromptResult)
  ListToolsResult(definitions.ListToolsResult)
  CallToolResult(definitions.CallToolResult)
  CompleteResult(definitions.CompleteResult)
}

Constructors

Values

pub fn get_prompt_by_name(
  server: Server(a, b),
  name: String,
) -> Result(#(definitions.Prompt, decode.Decoder(b)), Nil)
pub fn get_tool_by_name(
  server: Server(a, b),
  name: String,
) -> Result(#(definitions.Tool, decode.Decoder(a)), Nil)
pub fn handle_notification(
  notification: ClientNotification,
  server: a,
) -> Nil
pub fn handle_request(
  of: ClientRequest,
  server: Server(a, b),
) -> effect.Effect(
  Result(ServerResult, json_rpc.ErrorObject),
  a,
  b,
)
pub fn notification_method(
  notification: ClientNotification,
) -> String
pub fn request_method(request: ClientRequest) -> String
pub fn response_encode(
  response: json_rpc.Response(ServerResult),
) -> json.Json
Search Document