discoverMcpService method

Future<ServiceSpec> discoverMcpService({
  1. required String url,
})

Corresponds to: POST /mcp/discover

Implementation

Future<ServiceSpec> discoverMcpService({required String url}) async {
  final uri = Uri.parse('$baseUrl/mcp/discover');

  final response = await httpClient.post(uri, body: jsonEncode({"url": url, "format": "service"}));

  if (response.statusCode >= 400) {
    throw MeshagentException(
      'Failed to discover MCP service. '
      'Status code: ${response.statusCode}, body: ${response.body}',
    );
  }

  return ServiceSpec.fromJson(jsonDecode(response.body));
}