template<class Params, class Result>
struct mcp::protocol::CustomRequest< Params, Result >
Generic typed MCP request for extension methods.
- Template Parameters
-
| Params | A struct with a to_json() free function. |
| Result | A struct with a from_json(const Json&) -> Result<T> free function. |
Example:
struct MyParams { int value; };
Json my_params_to_json(
const MyParams& p) {
return {{
"value", p.value}}; }
struct MyResult { int answer; };
Json my_result_to_json(const MyResult& r) {
return {{"answer", r.answer}};
}
core::Result<MyResult> my_result_from_json(const Json& j) { ... }
using MyRequest = CustomRequest<MyParams, MyResult>;
constexpr auto method = MyRequest::method_name(
"my/extension");
nlohmann::json Json
JSON value type used by all protocol DTOs.
Definition types.hpp:28
std::string method
Method name on the wire.
Definition custom_methods.hpp:45