Expose R functions as MCP tools to external clients.
nameServer name
versionServer version
toolsRegistered tools
resourcesRegistered resources
new()Create a new MCP Server
McpServer$new(name = "r-mcp-server", version = "0.1.0")nameServer name
versionServer version
A new McpServer object
add_tool()Add a tool to the server
McpServer$add_tool(tool)toolA Tool object from the SDK
self (for chaining)
add_resource()Add a resource to the server
McpServer$add_resource(
uri,
name,
description = "",
mime_type = "text/plain",
read_fn
)uriResource URI
nameResource name
descriptionResource description
mime_typeMIME type
read_fnFunction that returns the resource content
self (for chaining)
listen()Start listening for MCP requests on stdin/stdout This is a blocking call.
McpServer$listen()
process_message()Process a single MCP message (for testing)
McpServer$process_message(json_str)json_strThe JSON-RPC message
The response, or NULL for notifications
clone()The objects of this class are cloneable with this method.
McpServer$clone(deep = FALSE)deepWhether to make a deep clone.
Serves R tools and resources via MCP protocol over stdio.