io.github.B0ydT/r-packagedev-mcp
NPM · R-PACKAGEDEV-MCP · SCANNED AUG 3
MCP server for R package development using usethis, devtools, renv, and testthat
Available components
How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score →
Supply Chain Security86
- No malware found by supply-chain analysis.Pass
- Only part of the dependency tree could be resolved (94 of 98), so this covers what we could see, not the whole tree.Partial
- No install/post-install scripts declared.Pass
- Only part of the dependency tree could be resolved (94 of 98), so this covers what we could see, not the whole tree. View diagnostics → Partial
Provenance & Transparency6
- Repository check failed: no source repository is declared. See how to fix → View diagnostics → Fail
- Provenance check failed: no build-provenance attestation is published. See how to fix → View diagnostics → Fail
- License check failed: the license (CC-BY-4.0) isn't a recognized OSI-approved license. See how to fix → Fail
- Actively maintained (last published 133 days ago).Pass
- Disclosure check failed: no security disclosure policy was found in the source repository. See how to fix → Fail
Schema Quality & AI Usability77
- AI-judged instruction clarity (excellent).Pass
- Tool/resource definitions use about 2475 tokens (~82/item across 30 items; 30 tools + 0 resources), lean.Pass
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management27
- Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.
npm · r-packagedev-mcp
claude mcp add b0ydt-r-packagedev-mcp -- npx -y r-packagedev-mcp
codex mcp add b0ydt-r-packagedev-mcp -- npx -y r-packagedev-mcp
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"b0ydt-r-packagedev-mcp": {
"type": "local",
"command": [
"npx",
"-y",
"r-packagedev-mcp"
],
"enabled": true
}
}
} openclaw mcp add b0ydt-r-packagedev-mcp --command npx --arg -y --arg r-packagedev-mcp
mcp_servers:
b0ydt-r-packagedev-mcp:
command: "npx"
args: ["-y", "r-packagedev-mcp"] {
"mcpServers": {
"b0ydt-r-packagedev-mcp": {
"command": "npx",
"args": [
"-y",
"r-packagedev-mcp"
]
}
}
} Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 2 Aug 26 +40
- Provenance: unverified → fail ▼ security
- Install scripts: unverified → pass ▲ security
- Known CVEs: unverified → partial ▲ security
- Malware scan: unverified → pass ▲ security
- Security disclosure: unverified → fail ▼ functional
- License: unverified → fail ▼ functional
- Schema quality: unverified → excellent ▲ functional
- Dependency health: unverified → partial ▲ functional
- Maintenance: unverified → pass ▲ functional
- Stability: unverified → 0.23 ▲ functional
- Licence: CC-BY-4.0 functional
- 1 Aug 26 +5
- Stability: Stability not yet verified: not enough scan history yet (needs a 30-day window). security
- MCP protocol: unverified → pass ▲ functional
- 31 Jul 26 −24
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 27 Jul 26 40
First indexed and scored.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 3 Aug 2026 · Analysed npm/[email protected]
Provenance none
Ecosystem: npm · Outcome: none
Dependencies 94 packages
94 packages in the resolved dependency tree · 94 deprecated · 29 stale.
The dependency tree was only partially resolved, so these counts may be incomplete.
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.
build ~102
Build a source (or binary) package tarball using devtools::build().
| Name | Type | Req | Description |
|---|---|---|---|
| binary | boolean | — | Whether to build a binary package instead of source (default false). |
| path | string | — | Destination directory for the built tarball/zip (defaults to the parent of the package directory). |
| project_path | string | yes | Absolute path to the root of the R package. |
| vignettes | boolean | — | Whether to build vignettes (default true). |
No output schema declared.
No examples provided.
build_readme ~46
Render README.Rmd to README.md and update GitHub preview using devtools::build_readme().
| Name | Type | Req | Description |
|---|---|---|---|
| project_path | string | yes | Absolute path to the root of the R package. |
No output schema declared.
No examples provided.
check ~122
Run R CMD check on the package using devtools::check(). Identifies errors, warnings, and notes that would prevent CRAN submission.
| Name | Type | Req | Description |
|---|---|---|---|
| cran | boolean | — | Whether to use CRAN-specific settings (default false). |
| document | boolean | — | Whether to run devtools::document() before checking (default true). |
| error_on | string | — | Minimum check severity that causes an error: 'never', 'note', 'warning', or 'error' (default 'warning'). |
| project_path | string | yes | Absolute path to the root of the R package. |
No output schema declared.
No examples provided.
create_package ~118
Create a new R package skeleton at the specified path using usethis::create_package(). Sets up DESCRIPTION, NAMESPACE, and the R/ directory.
| Name | Type | Req | Description |
|---|---|---|---|
| fields | object | — | Named list of extra DESCRIPTION fields, e.g. {Author: 'Jane Doe', Version: '0.1.0'}. |
| open | boolean | — | Whether to open the new package in RStudio (default false). |
| path | string | yes | Absolute path where the new package directory should be created (e.g. '/home/user/mypackage'). |
No output schema declared.
No examples provided.
document ~82
Generate roxygen2 documentation and update NAMESPACE using devtools::document(). Reads @-tags from R source and creates man/*.Rd files.
| Name | Type | Req | Description |
|---|---|---|---|
| project_path | string | yes | Absolute path to the root of the R package. |
| roclets | array | — | Character vector of roclet names to use (e.g. ['rd', 'namespace']). Defaults to all. |
No output schema declared.
No examples provided.
install ~75
Install the package into the local R library using devtools::install().
| Name | Type | Req | Description |
|---|---|---|---|
| dependencies | boolean | — | Whether to install package dependencies (default TRUE for Imports/Depends/Suggests). |
| project_path | string | yes | Absolute path to the root of the R package. |
| upgrade | string | — | Whether to upgrade dependencies (default 'default'). |
No output schema declared.
No examples provided.
load_all ~91
Simulate installing and attaching the package using devtools::load_all(). Makes all functions available in the current R session for interactive testing.
| Name | Type | Req | Description |
|---|---|---|---|
| project_path | string | yes | Absolute path to the root of the R package. |
| recompile | boolean | — | Whether to recompile C/C++/Fortran code (default false). |
| reset | boolean | — | Whether to reset the namespace before loading (default false). |
No output schema declared.
No examples provided.
renv_clean ~61
Remove unused packages or temporary files from the renv library using renv::clean().
| Name | Type | Req | Description |
|---|---|---|---|
| actions | array | — | Specific cleaning actions to perform (default: all applicable actions). |
| project_path | string | yes | Absolute path to the renv-managed project root. |
No output schema declared.
No examples provided.
renv_init ~102
Initialise an renv project-local library for the project using renv::init(). Creates renv/ and renv.lock, and updates .Rprofile.
| Name | Type | Req | Description |
|---|---|---|---|
| bare | boolean | — | If TRUE, initialise without installing any packages into the new library (default false). |
| project_path | string | yes | Absolute path to the project root where renv should be initialised. |
| restart | boolean | — | Whether to restart the R session after initialising (default false). |
No output schema declared.
No examples provided.
renv_install ~112
Install packages into the renv project library using renv::install(). Supports CRAN packages, GitHub (user/repo), or version-pinned installs.
| Name | Type | Req | Description |
|---|---|---|---|
| packages | array | yes | Package names (and optional version specifiers) to install, e.g. ['ggplot2', '[email protected]']. |
| project_path | string | yes | Absolute path to the renv-managed project root. |
| rebuild | boolean | — | Whether to rebuild packages from source (default false). |
No output schema declared.
No examples provided.
renv_restore ~59
Restore packages from renv.lock to recreate the recorded environment using renv::restore().
| Name | Type | Req | Description |
|---|---|---|---|
| project_path | string | yes | Absolute path to the renv-managed project root. |
| rebuild | boolean | — | Whether to rebuild packages from source (default false). |
No output schema declared.
No examples provided.
renv_snapshot ~81
Record the current package dependencies into renv.lock using renv::snapshot().
| Name | Type | Req | Description |
|---|---|---|---|
| project_path | string | yes | Absolute path to the renv-managed project root. |
| type | string | — | Snapshot type: 'implicit' (DESCRIPTION), 'explicit' (renv.lock packages), 'all' (everything installed), or 'custom' (default 'implicit'). |
No output schema declared.
No examples provided.
renv_status ~44
Report whether the project library is synchronised with renv.lock using renv::status().
| Name | Type | Req | Description |
|---|---|---|---|
| project_path | string | yes | Absolute path to the renv-managed project root. |
No output schema declared.
No examples provided.
renv_update ~72
Update packages in the renv project library using renv::update(). If no package names are given, all outdated packages are updated.
| Name | Type | Req | Description |
|---|---|---|---|
| packages | array | — | Package names to update. If omitted, all packages are updated. |
| project_path | string | yes | Absolute path to the renv-managed project root. |
No output schema declared.
No examples provided.
spell_check ~60
Spell-check the package documentation and vignettes using devtools::spell_check().
| Name | Type | Req | Description |
|---|---|---|---|
| project_path | string | yes | Absolute path to the root of the R package. |
| vignettes | boolean | — | Whether to spell-check vignettes (default true). |
No output schema declared.
No examples provided.
test ~99
Run the package's test suite (or a filtered subset) using devtools::test(). Reports test results in the chosen format.
| Name | Type | Req | Description |
|---|---|---|---|
| filter | string | — | Regex pattern to restrict which test files are run (e.g. 'my_func'). |
| project_path | string | yes | Absolute path to the root of the R package. |
| reporter | string | — | testthat reporter to use (e.g. 'progress', 'summary'). Defaults to 'progress'. |
No output schema declared.
No examples provided.
test_dir ~126
Run all test files in a directory (optionally filtered) using testthat::test_dir(). Returns a summary of pass/fail/skip counts.
| Name | Type | Req | Description |
|---|---|---|---|
| filter | string | — | Regex pattern to restrict which test files are run (e.g. 'my_func'). |
| path | string | yes | Absolute path to the directory containing test files. |
| reporter | string | — | testthat reporter to use (e.g. 'progress', 'summary', 'tap'). Defaults to 'progress'. |
| stop_on_failure | boolean | — | Whether to stop immediately on the first test failure (default false). |
No output schema declared.
No examples provided.
test_file ~131
Run a single testthat test file using testthat::test_file(). Useful for rapid iteration on a specific file.
| Name | Type | Req | Description |
|---|---|---|---|
| file | string | yes | Absolute path to the test file to run (e.g. '/path/to/tests/testthat/test-utils.R'). |
| project_path | string | — | Optional absolute path to the package root (used to set the working directory). |
| reporter | string | — | testthat reporter to use (e.g. 'progress', 'summary', 'tap'). Defaults to 'progress'. |
| stop_on_failure | boolean | — | Whether to stop immediately on the first test failure (default false). |
No output schema declared.
No examples provided.
use_data ~96
Export one or more R objects as package data files under data/ using usethis::use_data(). The objects must already be loaded in the R environment.
| Name | Type | Req | Description |
|---|---|---|---|
| object_names | array | yes | Character vector of R object names already loaded in the workspace to export as package data. |
| overwrite | boolean | — | Overwrite existing data files (default false). |
| project_path | string | yes | Absolute path to the root of the R package. |
No output schema declared.
No examples provided.
use_git ~63
Initialise a Git repository in the package and make an initial commit using usethis::use_git().
| Name | Type | Req | Description |
|---|---|---|---|
| message | string | — | Message for the initial commit (default: 'Initial commit'). |
| project_path | string | yes | Absolute path to the root of the R package. |
No output schema declared.
No examples provided.
use_github ~96
Create a GitHub remote for the package and push using usethis::use_github(). Requires a GitHub PAT configured via GITHUB_PAT or gh_token().
| Name | Type | Req | Description |
|---|---|---|---|
| organisation | string | — | GitHub organisation to create the repo under (optional, defaults to personal account). |
| private | boolean | — | Create as a private repository (default false). |
| project_path | string | yes | Absolute path to the root of the R package. |
No output schema declared.
No examples provided.
use_gpl3_license ~51
Add a GPL-3 LICENSE file and update DESCRIPTION License field using usethis::use_gpl3_license().
| Name | Type | Req | Description |
|---|---|---|---|
| project_path | string | yes | Absolute path to the root of the R package. |
No output schema declared.
No examples provided.
use_mit_license ~67
Add an MIT LICENSE file and update DESCRIPTION License field using usethis::use_mit_license().
| Name | Type | Req | Description |
|---|---|---|---|
| copyright_holder | string | — | Name to include in the copyright notice (defaults to package author). |
| project_path | string | yes | Absolute path to the root of the R package. |
No output schema declared.
No examples provided.
use_package ~86
Add a package dependency to DESCRIPTION using usethis::use_package(). Supports Imports, Suggests, Depends, LinkingTo, and Enhances.
| Name | Type | Req | Description |
|---|---|---|---|
| package | string | yes | Name of the R package to add as a dependency. |
| project_path | string | yes | Absolute path to the root of the R package. |
| type | string | — | Dependency type in DESCRIPTION (default 'Imports'). |
No output schema declared.
No examples provided.
use_pipe ~71
Add the magrittr pipe (%>%) to the package via usethis::use_pipe(). Creates utils-pipe.R and updates NAMESPACE.
| Name | Type | Req | Description |
|---|---|---|---|
| export | boolean | — | Whether to export the pipe operator (default true). |
| project_path | string | yes | Absolute path to the root of the R package. |
No output schema declared.
No examples provided.
use_r ~76
Add a new R source file under R/ in an existing package using usethis::use_r(). Creates 'R/<name>.R' with minimal boilerplate.
| Name | Type | Req | Description |
|---|---|---|---|
| name | string | yes | Name of the R script (without .R extension). |
| project_path | string | yes | Absolute path to the root of the R package. |
No output schema declared.
No examples provided.
use_readme_md ~45
Add a README.md to the package root using usethis::use_readme_md().
| Name | Type | Req | Description |
|---|---|---|---|
| project_path | string | yes | Absolute path to the root of the R package. |
No output schema declared.
No examples provided.
use_test ~78
Create a matching test file under tests/testthat/ for a given function or module using usethis::use_test(). Automatically sets up testthat if not already configured.
| Name | Type | Req | Description |
|---|---|---|---|
| name | string | yes | Name of the function or module to create a test file for. |
| project_path | string | yes | Absolute path to the root of the R package. |
No output schema declared.
No examples provided.
use_testthat ~81
Configure the testthat testing infrastructure for a package using usethis::use_testthat(). Creates tests/testthat/ and adds testthat to Suggests.
| Name | Type | Req | Description |
|---|---|---|---|
| edition | integer | — | testthat edition to use (e.g. 3). Defaults to latest stable edition. |
| project_path | string | yes | Absolute path to the root of the R package. |
No output schema declared.
No examples provided.
use_vignette ~82
Create a new vignette stub (Rmd file) under vignettes/ using usethis::use_vignette().
| Name | Type | Req | Description |
|---|---|---|---|
| name | string | yes | Short name/identifier for the vignette. |
| project_path | string | yes | Absolute path to the root of the R package. |
| title | string | — | Human-readable title of the vignette. |
No output schema declared.
No examples provided.