npm is the default package manager for JavaScript and Node.js, facilitating the sharing and reuse of code, managing dependencies, and streamlining project workflows.
npm is the default package manager for JavaScript and Node.js, facilitating the sharing and reuse of code, managing dependencies, and streamlining project workflows. On Nagent, Npm is exposed as a fully-configurable developer tools integration that any agent can call — 12 actions, and API key authentication. No code is required to wire Npm into your workflow — connect it once via the External Integrations panel and reuse it across every agent you build.
Agent builders use Npm to automate the kinds of tasks developer tools teams previously handled manually. Concrete examples — each one is a single agent step in Nagent — include:
Every action and trigger is paired with a structured input/output schema (visible in the sections below), so when you wire Npm into Helix — our agentic agent builder — the editor knows exactly what each step expects and produces. Configure once, deploy anywhere across your Nagent agents.
Every operation an agent can call against Npm, with input parameters and output schema. Drop these into any step of an agent built in Helix.
NPM_DELETE_USER_TOKEN_LEGACYTool to delete a user authentication token using the legacy endpoint. Use when you need to revoke or remove a specific token from the npm registry.
Input parameters
Token UUID/key to delete (e.g., 'a1df1599-b022-4f1b-86c5-ee7a1df48f48'). This is the token identifier returned by the list tokens endpoint.
One-time password for two-factor authentication, if required by the user account.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
NPM_GET_ALL_PACKAGES_DOWNLOAD_POINTGet total npm registry download statistics for all packages for a specified time period. Returns aggregate download counts across the entire npm registry with start/end dates. Supports preset periods (last-day, last-week, last-month, last-year) or custom date ranges (YYYY-MM-DD:YYYY-MM-DD).
Input parameters
Time period for downloads. Supported formats: (1) Preset periods: 'last-day', 'last-week', 'last-month', 'last-year'. (2) Explicit date range: 'YYYY-MM-DD:YYYY-MM-DD' (max 365 days). Data available from 2015-01-10 onwards.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
NPM_GET_DOWNLOAD_COUNTS_POINTGet npm package download statistics for a specified time period. Returns total download counts with start/end dates for single packages, scoped packages, or bulk queries (up to 128 packages). Supports preset periods (last-day, last-week, last-month, last-year) or custom date ranges (YYYY-MM-DD:YYYY-MM-DD).
Input parameters
Time period for downloads. Supported formats: (1) Preset periods: 'last-day', 'last-week', 'last-month', 'last-year'. (2) Explicit date range: 'YYYY-MM-DD:YYYY-MM-DD' (max 365 days for bulk queries, 18 months otherwise). Data available from 2015-01-10 onwards.
Name of the npm package to fetch download counts for. Supports single packages (e.g., 'express') and scoped packages (e.g., '@babel/core'). For multiple packages, query them individually as the bulk query format returns a different response structure.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
NPM_GET_DOWNLOAD_COUNTS_RANGE_PACKAGETool to get download counts for an npm package over a specified date range. Use when you need historical daily download data.
Input parameters
End date (inclusive) in YYYY-MM-DD format; must be the same or after start date
Start date (inclusive) in YYYY-MM-DD format
Name of the npm package, including optional scope (e.g., '@babel/core')
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
NPM_GET_DOWNLOAD_RANGE_ALLTool to get daily download counts for all npm packages over a specified period. Use when you need aggregate download statistics across the entire npm registry.
Input parameters
Time period for downloads. Supported formats: (1) Preset periods: 'last-day', 'last-week', 'last-month', 'last-year'. (2) Explicit date range: 'YYYY-MM-DD:YYYY-MM-DD' (e.g., '2023-01-01:2023-01-31'). Data available from 2015-01-10 onwards.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
NPM_GET_REGISTRY_CHANGESTool to get a stream of registry changes for replication purposes. Returns CouchDB-style change feed for following registry updates.
Input parameters
Maximum number of changes to return. Default is 1000, maximum is 10000.
Sequence number to start from when retrieving changes. Use to continue from a previous position in the feed.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
NPM_GET_REGISTRY_METARetrieves npm registry metadata via meta endpoints. Use 'ping' to verify registry connectivity or 'whoami' to get the authenticated username.
Input parameters
Meta subpath to call; either 'ping' (check registry connectivity) or 'whoami' (get authenticated username).
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
NPM_GET_VERSION_DOWNLOADSTool to get download counts for specific versions of a package over the last 7 days. Use when you need to understand which versions are most popular.
Input parameters
Name of the npm package, including optional scope (e.g., '@babel/core'). For scoped packages, the '/' will be automatically encoded.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
NPM_QUERY_BULK_SECURITY_ADVISORIESTool to bulk query security advisories for multiple npm packages. Use when you need to check vulnerability information for multiple packages and versions at once.
Input parameters
JSON object mapping package names to arrays of version strings. Example: {"express": \["4.17.1"\], "lodash": \["4.17.20"\]}
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
NPM_REGISTRY_GET_PACKAGETool to fetch metadata for a specified npm package. Use after confirming the exact package name, including scope. Responses can be large; prefer reading top-level fields like 'dist-tags', 'description', and 'license' rather than scanning the entire object.
Input parameters
Name of the npm package to fetch, including optional scope (e.g., '@babel/core').
Specific version or dist-tag to fetch (e.g., 'latest', '1.2.3'). If omitted, returns abbreviated metadata for all versions. Use 'dist-tags.latest' as the authoritative stable version; do not infer it from 'versions' or 'time' maps, which may include pre-releases or deprecated entries.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
NPM_REGISTRY_GET_ROOTFetches npm registry root metadata including total package count and update sequence. Returns database statistics from the npm replication service. No parameters required. Use this to get current registry statistics like the total number of packages available.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
NPM_REGISTRY_SEARCH_PACKAGESTool to search for packages in the npm registry. Use when you need to find packages matching a search term. Results are returned in an 'objects' array; each element contains package metadata under a 'package' field and weekly download estimates under 'downloads.weekly'.
Input parameters
Number of results to return (1-250). Default is 20.
Search query for packages (name, keywords, or description). Combine specific keywords (e.g., 'react cli', 'testing framework') to avoid loosely related results from broad queries.
Offset for pagination. Default is 0.
Quality weight (0.0-1.0). Default is 1.0.
Popularity weight (0.0-1.0). Default is 1.0.
Maintenance weight (0.0-1.0). Default is 1.0.
Output
Data from the action execution
Error if any occurred during the execution of the action
Whether or not the action execution was successful or not
No publicly available marketplace agent is found using this tool yet. There are 51 agents privately built on Nagent that already use Npm.
Build on Nagent
Connect Npm to any Nagent agent in minutes — no API key management, no boilerplate. Just configure and deploy.
The five questions agent builders ask before adopting a new integration.
Open the External Integrations panel inside Nagent (app.nagent.ai/externalIntegration), find Npm, and click "Connect Now." You'll authenticate with an API key — Nagent handles credential storage and refresh automatically. Once connected, Npm is available to any agent in your workspace.
No. Nagent provides no-code integration for every tool. Once Npm is connected, you configure its 12 actions directly in the agent builder UI — no API calls, no boilerplate, no schema management.
Helix — Nagent's agentic agent builder — lets you drop Npm steps into any workflow visually. Pick an action (e.g., one of those listed above), fill in the inputs (Helix knows the required vs. optional schema for each parameter), and connect it to upstream/downstream steps. Triggers run as the entry point of an agent, so when a Npm event fires, the agent kicks off automatically.
Every Npm action and trigger ships with a fully-typed schema — input parameters with name, type, required flag, and description, plus the output payload shape. The schemas are documented in the sections above. Helix uses these schemas to validate your configuration at build time and to type-check the data flowing between steps.
Yes. While Npm ships with 12 pre-built developer tools actions, you can layer custom logic around them inside Helix — pre/post-processing steps, conditional branches, retries, or stitching Npm together with other connected tools. For deeper customization, talk to our team about Nagent's Agentic AI Lab — forward-deployed engineers who build Npm-based workflows tailored to your business.