NodeJS API Docs MCP Server
Provides access to Node.js API documentation, allowing AI agents to look up and reference official Node.js API specifications and documentation for development assistance.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@NodeJS API Docs MCP Serverexplain the fs.readFileSync method"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Usage: Generic CLI
npx mcp-server-nodejs-api-docsYou can debug calls for the MCP Server by inspecting the file mcp-server-nodejs-docs.log in your system's temporary directory (e.g., /tmp on Unix-like systems or %TEMP% on Windows) which this MCP Server writes to.
Related MCP server: PyMCP
Usage: as a Docker container
You can run this MCP Server as a Docker container by using the following command:
docker pull ghcr.io/lirantal/mcp-server-nodejs-api-docs:latestYou can also use the Docker image directly in your MCP Server configuration for various applications, see examples below.
Usage for Claude Desktop:
Edit your Claude Desktop MCP Servers configuration file (located on macOS here: ~/Library/Application Support/Claude/claude_desktop_config.json) and add the following:
on macOS or Linux:
{
"mcpServers": {
"nodejs-api-docs": {
"command": "npx",
"args": ["-y", "mcp-server-nodejs-api-docs"]
}
}
}for Windows users:
{
"mcpServers": {
"nodejs-api-docs": {
"command": "cmd",
"args": ["/c", "npx", "-y", "mcp-server-nodejs-api-docs"]
}
}
}or with the Docker image:
{
"mcpServers": {
"nodejs-api-docs": {
"command": "docker",
"args": ["run", "-i", "--rm", "--init", "-e", "DOCKER_CONTAINER=true", "ghcr.io/lirantal/mcp-server-nodejs-api-docs:latest"]
}
}
}Usage for Cursor AI:
Edit your Cursor AI MCP file (located at ~/.cursor/mcp.json) and add the following:
{
"mcpServers": {
"nodejs-api-docs": {
"command": "npx",
"args": ["-y", "mcp-server-nodejs-api-docs"]
}
}
}Development
To build the project with Docker locally run:
docker build -t mcp-server-nodejs-api-docs .Then run the container as follows for your MCP Server configuration:
docker run -i --rm --init -e DOCKER_CONTAINER=true mcp-server-nodejs-api-docsDocumentation
Project documentation - development, testing, architecture, and conventions.
Contributing
Please consult CONTRIBUTING for guidelines on contributing to this project.
Author
mcp-server-nodejs-api-docs © Liran Tal, Released under the Apache-2.0 License.
Available Tools
2 toolsretrieve-nodejs-modules-api-documentationA
Retrieve, fetch, and get Node.js API documentation for a specific module or class.
You call the `retrieve-nodejs-modules-api-documentation` MCP tool with the following parameters:
```json
{
"module": "util",
"method": "styleText"
}
```
| Name | Required | Description | Default |
|---|---|---|---|
| method | No | The method name to retrieve Node.js API documentation for | |
| module | Yes | The module or class name to retrieve Node.js API documentation for |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It states it retrieves and returns documentation, but does not explicitly mention that it is read-only, any side effects, or authentication needs. The behavior is implied but not fully disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with clear sections (use_case, example, important_notes). Every sentence adds value, no fluff, and it is appropriately sized for the tool's complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description explains that it returns documentation including methods and properties. It also provides context with sibling tool and an example, making it complete for a retrieval tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds an example showing actual values ('util' and 'styleText') and context about using search for unknown modules, but does not significantly enhance parameter understanding beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it retrieves Node.js API documentation for a specific module or class, with a use case and example. It distinguishes from the sibling tool 'search-nodejs-modules-api-documentation' by advising to use search first if module is unknown.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states when to use this tool (to retrieve documentation for a known module) and when not (if module unknown, use search first). Provides an example and important notes with clear guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search-nodejs-modules-api-documentationA
<use_case>
Use this tool to search across all Node.js built-in core modules API documentation and get back a list of core modules and their methods when you want to search and look-up Node.js API support
</use_case>
<important_notes>
1. HIGH PRIORITY: *ALWAYS* use this tool first so that you can search for Node.js modules and their methods
2. Ideally you want to suggest users the use of built-in Node.js API rather than third-party libraries
3. This tool will return a list of all Node.js core modules and their methods
</important_notes>
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations present, so description bears full burden. It does not disclose behavioral traits such as read-only nature, side effects, or any limitations. The description only states priority but omits safety or idempotency information.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description uses XML-like tags and includes redundant emphasis ('HIGH PRIORITY', underlining). While informative, it could be more concise and structured without the extra formatting.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema and zero parameters, the description adequately explains the tool's behavior: searching core modules and returning a list. It lacks details on result format or pagination, but for a simple listing tool, it is reasonably complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0 parameters and 100% schema coverage, the description adds value by explaining the output: 'returns a list of all Node.js core modules and their methods'. This contextualizes the tool's purpose beyond the empty schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it searches Node.js core modules API documentation and returns a list of modules and methods. The verb 'search' and resource 'core modules API documentation' are specific, but the lack of input parameters makes the behavior ambiguous (always returns all). It distinguishes from sibling 'retrieve' but not explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states 'ALWAYS use this tool first' and advises suggesting built-in Node.js API over third-party libraries. This provides strong guidance on when and how to use the tool, with clear priority and exclusion of alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
2 tool updates
v1.1.3- First observed
retrieve-nodejs-modules-api-documentation - First observed
search-nodejs-modules-api-documentation
TDQS
The two tools have clearly distinct purposes: one searches across all Node.js modules to find relevant documentation, and the other retrieves detailed documentation for a specific module or class. There is no overlap or ambiguity.
Both tools follow a consistent snake_case pattern with a verb prefix ('search-' and 'retrieve-') followed by the domain ('nodejs-modules-api-documentation'). The structure is uniform and predictable.
With only two tools, the set is minimal but covers the core workflow of searching and retrieving documentation. However, for a domain as broad as all Node.js core modules, a few more tools (e.g., listing all modules without a search) might improve completeness.
The search tool effectively serves as both a search and listing function, returning all modules and their methods. The retrieve tool provides detailed documentation for a specific module. Together, they cover the essential documentation needs, but there is no explicit tool for browsing modules by category or method signatures.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
MCP server for doc2mcp documentation, generated by doc2mcp.
MCP server for tabletopsimulator documentation, generated by doc2mcp.
MCP server for developer documentation, generated by doc2mcp.
The official MCP Server for the Mux API
Related MCP Servers
- MIT
- AlicenseBqualityBmaintenancePrimarily to be used as a template for developing MCP servers with FastMCP in Python, PyMCP is somewhat inspired by the official everything MCP server in Typescript.78MIT
- FlicenseNot gradedqualityCmaintenanceA Model Context Protocol (MCP) server designed for learning and experimentation. It provides a foundational setup for developers to build, run, and debug MCP server implementations using Node.js.-
- AGPL 3.0
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/lirantal/mcp-server-nodejs-api-docs'
If you have feedback or need assistance with the MCP directory API, please join our Discord server