diff --git a/DESCRIPTION b/DESCRIPTION index 0d4aeff..3d1cbdc 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,6 +1,6 @@ Package: mcptools Title: Model Context Protocol Servers and Clients -Version: 0.1.1.9001 +Version: 0.2.0 Authors@R: c( person("Simon", "Couch", , "simon.couch@posit.co", role = c("aut", "cre"), comment = c(ORCID = "0000-0001-5676-5107")), diff --git a/NEWS.md b/NEWS.md index 3f37c99..b589a8e 100644 --- a/NEWS.md +++ b/NEWS.md @@ -1,18 +1,25 @@ -# mcptools (development version) +# mcptools 0.2.0 -* `mcp_tools()` now errors more informatively when an MCP server process exits unexpectedly (#82). +## Server * `mcp_server()` now supports HTTP transport in addition to stdio. Use `type = "http"` to start an HTTP server, with optional `host` and `port` arguments. For now, the implementation is authless. -* JSON-RPC responses now retain an explicit `id = NULL` value, ensuring parse-error replies conform to the MCP specification. - * `mcp_server()` now formats tool results in the same way as ellmer (#78 by @gadenbuie). -* `mcp_tools()` now sends and receives a `"notifications/initialized"` (#77 by @galachad). +* `mcp_server()` gains logical argument `session_tools`, allowing users to opt-out of presenting R session tools (that make it possible to communicate with `mcp_session()`s) to clients. + +* Several tightenings-up of the implementation: + - JSON-RPC responses now retain an explicit `id = NULL` value, ensuring parse-error replies conform to the MCP specification. + - `mcp_tools()` now sends and receives a `"notifications/initialized"` (#77 by @galachad). + - The implementation now supports the 2025-06-18 protocol version, updated from 2024-11-05. -* `mcp_session()` now returns invisibly the nanonext socket used for communicating with the server. +* `mcp_session()` now invisibly returns the nanonext socket used for communicating with the server. -* `mcp_server()` gains logical argument `session_tools`, allowing users to opt-out of presenting R sessions tools to clients. +## Client + +- Notably, `mcp_tools()` did not gain an implementation of the HTTP transport. Instead, we now recommend the [mcp-remote](https://www.npmjs.com/package/mcp-remote) tool for serving local MCP servers via the HTTP transport in the documentation. + +* `mcp_tools()` now errors more informatively when an MCP server process exits unexpectedly (#82). # mcptools 0.1.1 diff --git a/README.md b/README.md index eb450b7..0d3f51a 100644 --- a/README.md +++ b/README.md @@ -7,6 +7,8 @@ [![Lifecycle: experimental](https://img.shields.io/badge/lifecycle-experimental-orange.svg)](https://lifecycle.r-lib.org/articles/stages.html#experimental) +[![CRAN +status](https://www.r-pkg.org/badges/version/mcptools)](https://CRAN.R-project.org/package=mcptools) [![R-CMD-check](https://github.com/posit-dev/mcptools/actions/workflows/R-CMD-check.yaml/badge.svg)](https://github.com/posit-dev/mcptools/actions/workflows/R-CMD-check.yaml)