Files
fil/docs/snippets/r/mcp/mcp_custom_client.md
Henrik Jess Nielsen b4c07d3693
All checks were successful
Deploy fil (kreuzberg) / deploy (push) Successful in 49s
Nomad changes
2026-06-01 23:40:55 +02:00

678 B

# The kreuzberg R bindings ship no MCP client. Drive the kreuzberg CLI's
# stdio MCP transport from R using a piped subprocess.
mcp <- pipe("kreuzberg mcp", open = "w+")
on.exit(close(mcp), add = TRUE)

request <- list(
  method = "tools/call",
  params = list(
    name = "extract_file",
    arguments = list(
      path = "document.pdf",
      async = TRUE
    )
  )
)

writeLines(jsonlite::toJSON(request, auto_unbox = TRUE), con = mcp)
flush(mcp)

response_line <- readLines(mcp, n = 1L)
cat(response_line, "\n")
The R bindings have no MCP client; this snippet drives the MCP CLI over stdio. Requires the `jsonlite` package.