File R-mcptools.spec of Package R-mcptools
# Automatically generated by CRAN2OBS
#
# Spec file for package mcptools
# This file is auto-generated using information in the package source,
# esp. Description and Summary. Improvements in that area should be
# discussed with upstream.
#
# Copyright (c) 2026 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
#
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
%global packname mcptools
%global rlibdir %{_libdir}/R/library
Name: R-%{packname}
Version: 0.2.1
Release: 0
Summary: Model Context Protocol Servers and Clients
Group: Development/Libraries/Other
License: MIT + file LICENSE
URL: http://cran.r-project.org/web/packages/%{packname}
Source: mcptools_0.2.1.tar.gz
Requires: R-base
Requires: R-cli
Requires: R-ellmer
Requires: R-httpuv
Requires: R-httr2
Requires: R-jsonlite
Requires: R-nanonext
Requires: R-processx
Requires: R-promises
Requires: R-rlang
Requires: R-coro
Requires: R-glue
Requires: R-later
Requires: R-lifecycle
Requires: R-R6
Requires: R-S7
Requires: R-tibble
Requires: R-vctrs
Requires: R-Rcpp
Requires: R-curl
Requires: R-magrittr
Requires: R-openssl
Requires: R-rappdirs
Requires: R-withr
Requires: R-ps
Requires: R-fastmap
Requires: R-otel
Requires: R-askpass
Requires: R-pillar
Requires: R-pkgconfig
Requires: R-sys
Requires: R-utf8
# %%if 0%%{?sle_version} > 120400 || 0%%{?is_opensuse}
# # Three others commonly needed
# BuildRequires: tex(ae.sty)
# BuildRequires: tex(fancyvrb.sty)
# BuildRequires: tex(inconsolata.sty)
# BuildRequires: tex(natbib.sty)
# %else
# BuildRequires: texlive
# %endif
# BuildRequires: texinfo
BuildRequires: fdupes
BuildRequires: R-base
BuildRequires: R-cli
BuildRequires: R-ellmer
BuildRequires: R-httpuv
BuildRequires: R-httr2
BuildRequires: R-jsonlite
BuildRequires: R-nanonext
BuildRequires: R-processx
BuildRequires: R-promises
BuildRequires: R-rlang
BuildRequires: R-coro
BuildRequires: R-glue
BuildRequires: R-later
BuildRequires: R-lifecycle
BuildRequires: R-R6
BuildRequires: R-S7
BuildRequires: R-tibble
BuildRequires: R-vctrs
BuildRequires: R-Rcpp-devel
BuildRequires: R-curl
BuildRequires: R-magrittr
BuildRequires: R-openssl
BuildRequires: R-rappdirs
BuildRequires: R-withr
BuildRequires: R-ps
BuildRequires: R-fastmap
BuildRequires: R-otel
BuildRequires: R-askpass
BuildRequires: R-pillar
BuildRequires: R-pkgconfig
BuildRequires: R-sys
BuildRequires: R-utf8
Suggests: R-knitr
Suggests: R-rmarkdown
Suggests: R-testthat
Suggests: R-withr
%description
Implements the Model Context Protocol (MCP). Users can start 'R'-based
servers, serving functions as tools for large language models to call
before responding to the user in MCP-compatible apps like 'Claude
Desktop' and 'Claude Code', with options to run those tools inside of
interactive 'R' sessions. On the other end, when 'R' is the client via
the 'ellmer' package, users can register tools from third-party MCP
servers to integrate additional context into chats.
%prep
%setup -q -c -n %{packname}
# the next line is needed, because we build without --clean in between two packages
rm -rf ~/.R
%build
%install
mkdir -p %{buildroot}%{rlibdir}
%{_bindir}/R CMD INSTALL -l %{buildroot}%{rlibdir} %{packname}
test -d %{packname}/src && (cd %{packname}/src; rm -f *.o *.so)
rm -f %{buildroot}%{rlibdir}/R.css
%fdupes -s %{buildroot}%{rlibdir}
#%%check
#%%{_bindir}/R CMD check %%{packname}
%files
%dir %{rlibdir}/%{packname}
%doc %{rlibdir}/%{packname}/DESCRIPTION
%{rlibdir}/%{packname}/INDEX
%license %{rlibdir}/%{packname}/LICENSE
%{rlibdir}/%{packname}/Meta
%{rlibdir}/%{packname}/NAMESPACE
%doc %{rlibdir}/%{packname}/NEWS.md
%{rlibdir}/%{packname}/R
%doc %{rlibdir}/%{packname}/doc
%{rlibdir}/%{packname}/example-config-remote.json
%{rlibdir}/%{packname}/example-config.json
%{rlibdir}/%{packname}/example-ellmer-tools.R
%doc %{rlibdir}/%{packname}/help
%doc %{rlibdir}/%{packname}/html
%changelog