cxxmcp 1.1.6
C++ MCP SDK
Loading...
Searching...
No Matches
resource.hpp File Reference

Resource listing, template, subscription, and read payloads. More...

#include <cstdint>
#include <limits>
#include <optional>
#include <string>
#include <utility>
#include <vector>
#include "cxxmcp/core/result.hpp"
#include "cxxmcp/protocol/reflect.hpp"
#include "cxxmcp/protocol/types.hpp"
#include "cxxmcp/protocol/types_reflect.hpp"

Go to the source code of this file.

Classes

struct  mcp::protocol::Resource
 Concrete resource advertised by resources/list. More...
 
class  mcp::protocol::ResourceBuilder
 Fluent builder for concrete resource descriptors. More...
 
struct  mcp::protocol::ResourcesListResult
 Result object for resources/list. More...
 
struct  mcp::protocol::ResourceTemplate
 URI template advertised by resources/templates/list. More...
 
class  mcp::protocol::ResourceTemplateBuilder
 Fluent builder for resource-template descriptors. More...
 
struct  mcp::protocol::ResourceTemplatesListResult
 Result object for resources/templates/list. More...
 
struct  mcp::protocol::ResourcesReadParams
 Parameters for resources/read. More...
 
struct  mcp::protocol::ResourcesSubscribeParams
 Parameters for resources/subscribe. More...
 
struct  mcp::protocol::ResourceContents
 One content part returned by resources/read. More...
 
struct  mcp::protocol::Reflect< ResourceContents >
 
struct  mcp::protocol::ResourcesReadResult
 Result object for resources/read. More...
 
struct  mcp::protocol::ResourceUpdatedNotificationParams
 Parameters for notifications/resources/updated. More...
 
struct  mcp::protocol::Reflect< ResourceUpdatedNotificationParams >
 

Typedefs

using mcp::protocol::ResourcesUnsubscribeParams = ResourcesSubscribeParams
 Parameters for resources/unsubscribe.
 

Functions

ResourceBuilder mcp::protocol::resource_definition (std::string uri, std::string name)
 Creates a fluent builder for advertised MCP resource metadata.
 
ResourceTemplateBuilder mcp::protocol::resource_template_definition (std::string uri_template, std::string name)
 Creates a fluent builder for advertised resource-template metadata.
 
 mcp::protocol::CXXMCP_REFLECT_CHECK (ResourceContents, 6)
 
core::Error mcp::protocol::resource_json_error (std::string message)
 Builds an InvalidRequest error for resource JSON validation failures.
 
core::Result< std::int64_t > mcp::protocol::resource_size_from_json (const Json &json, std::string_view context)
 
Json mcp::protocol::resource_to_json (const Resource &resource)
 Serializes a resource descriptor.
 
core::Result< Resourcemcp::protocol::resource_from_json (const Json &json)
 Parses a resource descriptor.
 
Json mcp::protocol::resource_template_to_json (const ResourceTemplate &resource_template)
 Serializes a resource template descriptor.
 
core::Result< ResourceTemplatemcp::protocol::resource_template_from_json (const Json &json)
 Parses a resource template descriptor.
 
Json mcp::protocol::resources_list_result_to_json (const ResourcesListResult &result)
 Serializes a resources/list result.
 
core::Result< ResourcesListResultmcp::protocol::resources_list_result_from_json (const Json &json)
 Parses a resources/list result.
 
Json mcp::protocol::resource_templates_list_result_to_json (const ResourceTemplatesListResult &result)
 Serializes a resources/templates/list result.
 
core::Result< ResourceTemplatesListResultmcp::protocol::resource_templates_list_result_from_json (const Json &json)
 Parses a resources/templates/list result.
 
Json mcp::protocol::resources_read_params_to_json (const ResourcesReadParams &params)
 Serializes resources/read params.
 
core::Result< ResourcesReadParamsmcp::protocol::resources_read_params_from_json (const Json &json)
 Parses resources/read params.
 
Json mcp::protocol::resources_subscribe_params_to_json (const ResourcesSubscribeParams &params)
 Serializes resources/subscribe params.
 
core::Result< ResourcesSubscribeParamsmcp::protocol::resources_subscribe_params_from_json (const Json &json)
 Parses resources/subscribe params.
 
Json mcp::protocol::resources_unsubscribe_params_to_json (const ResourcesUnsubscribeParams &params)
 Serializes resources/unsubscribe params.
 
core::Result< ResourcesUnsubscribeParamsmcp::protocol::resources_unsubscribe_params_from_json (const Json &json)
 Parses resources/unsubscribe params.
 
Json mcp::protocol::resource_contents_to_json (const ResourceContents &contents)
 Serializes resource contents.
 
core::Result< ResourceContentsmcp::protocol::resource_contents_from_json (const Json &json)
 Parses resource contents.
 
Json mcp::protocol::resources_read_result_to_json (const ResourcesReadResult &result)
 Serializes a resources/read result.
 
core::Result< ResourcesReadResultmcp::protocol::resources_read_result_from_json (const Json &json)
 Parses a resources/read result.
 
Json mcp::protocol::resource_updated_notification_params_to_json (const ResourceUpdatedNotificationParams &params)
 Serializes notifications/resources/updated params.
 
core::Result< ResourceUpdatedNotificationParamsmcp::protocol::resource_updated_notification_params_from_json (const Json &json)
 Parses notifications/resources/updated params.
 

Detailed Description

Resource listing, template, subscription, and read payloads.

Resources are server-exposed context items addressed by URI. Listing methods advertise resources and templates, read methods return contents, and subscription methods allow clients to receive update notifications when the server advertises resource subscription support.

Function Documentation

◆ resource_contents_from_json()

core::Result< ResourceContents > mcp::protocol::resource_contents_from_json ( const Json json)
inline

Parses resource contents.

Returns
Parsed contents or validation error.
Note
A valid contents object must include either text or blob.

◆ resource_from_json()

core::Result< Resource > mcp::protocol::resource_from_json ( const Json json)
inline

Parses a resource descriptor.

Returns
Parsed resource or validation error.

◆ resource_template_from_json()

core::Result< ResourceTemplate > mcp::protocol::resource_template_from_json ( const Json json)
inline

Parses a resource template descriptor.

Returns
Parsed resource template or validation error.

◆ resource_templates_list_result_from_json()

core::Result< ResourceTemplatesListResult > mcp::protocol::resource_templates_list_result_from_json ( const Json json)
inline

Parses a resources/templates/list result.

Returns
Parsed result or validation error.

◆ resources_list_result_from_json()

core::Result< ResourcesListResult > mcp::protocol::resources_list_result_from_json ( const Json json)
inline

Parses a resources/list result.

Returns
Parsed result or validation error.

◆ resources_read_params_from_json()

core::Result< ResourcesReadParams > mcp::protocol::resources_read_params_from_json ( const Json json)
inline

Parses resources/read params.

Returns
Parsed params or validation error.

◆ resources_read_result_from_json()

core::Result< ResourcesReadResult > mcp::protocol::resources_read_result_from_json ( const Json json)
inline

Parses a resources/read result.

Returns
Parsed result or validation error.

◆ resources_subscribe_params_from_json()

core::Result< ResourcesSubscribeParams > mcp::protocol::resources_subscribe_params_from_json ( const Json json)
inline

Parses resources/subscribe params.

Returns
Parsed params or validation error.

◆ resources_unsubscribe_params_from_json()

core::Result< ResourcesUnsubscribeParams > mcp::protocol::resources_unsubscribe_params_from_json ( const Json json)
inline

Parses resources/unsubscribe params.

Returns
Parsed params or validation error.