syntax = "proto3";
package gateway;

import "google/protobuf/timestamp.proto";
import "google/protobuf/struct.proto";


service ExternalToolService {
  rpc HandleExternalToolRequest (ExternalToolRequest) returns (ExternalToolReply);
}

message ExternalToolRequest {
  google.protobuf.Timestamp req_datetime = 1;
  string tool_name = 2;
  map<string, string> params = 3; //per-model parameters (e.g. thresholds, intensities, temperature, etc)
  repeated bytes payload = 4;
}

message ExternalToolReply {
  google.protobuf.Struct results = 1; //JSON-like payload
}