react-docs
Provides AI assistants with access to documentation, TypeScript types, and source code of @gaddario98 React packages, enabling them to retrieve package docs, types, and search source files.
Click on "Deploy 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., "@react-docsShow me the types for react-core"
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.
@gaddario98/mcp-react-docs
MCP (Model Context Protocol) server che fornisce ad AI coding assistants la documentazione e il codice sorgente dei package React @gaddario98.
Packages serviti
Package | Descrizione |
| Framework React modulare: state, forms, queries, pages, auth |
| Form builder dinamico su TanStack Form + Jotai |
| Data fetching su TanStack Query + Jotai |
| Page orchestrator: forms + queries + SEO + lazy loading |
Related MCP server: daisyui-mcp-server
Tools disponibili
Tool | Descrizione |
| Elenca tutti i package con versione e descrizione |
| Ritorna il README.md completo di un package |
| Ritorna le definizioni TypeScript ( |
| Legge qualsiasi file sorgente di un package |
| Cerca un pattern (regex) nei file sorgente |
Configurazione per AI Tools
Gemini Code Assist
Aggiungi al file .gemini/settings.json del tuo workspace:
{
"mcpServers": {
"react-docs": {
"command": "npx",
"args": ["-y", "github:gaddario98/mcp-react-docs"],
"env": {
"GITHUB_TOKEN": "ghp_il_tuo_token_qui"
}
}
}
}Claude Code / Claude Desktop
Aggiungi a ~/.claude/claude_desktop_config.json:
{
"mcpServers": {
"react-docs": {
"command": "npx",
"args": ["-y", "github:gaddario98/mcp-react-docs"],
"env": {
"GITHUB_TOKEN": "ghp_il_tuo_token_qui"
}
}
}
}Cursor
In Cursor Settings → MCP Servers → Add:
Name:
react-docsCommand:
npx -y github:gaddario98/mcp-react-docs
VS Code + Copilot (settings.json)
{
"mcp": {
"servers": {
"react-docs": {
"command": "npx",
"args": ["-y", "github:gaddario98/mcp-react-docs"],
"env": {
"GITHUB_TOKEN": "ghp_il_tuo_token_qui"
}
}
}
}
}🔑 Come ottenere il GITHUB_TOKEN
Dato che l'MCP invia richieste direttamente a GitHub, senza un token incapperai nel limite di 60 richieste all'ora, limitando pesantemente o bloccando strumenti come search_source.
Per generare un Token:
Accedi a GitHub e vai in Settings > Developer Settings > Personal access tokens > Tokens (classic) (o usa i Fine-grained tokens se preferisci).
Clicca su Generate new token (classic).
Assegna un nome (es.
local_mcp_server).Nessuno scope particolare è obbligatorio se i repo (
gaddario98/react-core, ecc.) sono pubblici. Se in futuro i repo diverranno privati, spunta l'accessorepo.Clicca generate e copia il token (inizierà con
ghp_...).Aggiungilo all'interno dell'oggetto
"env"in tutte le configurazioni del tuo Editor come mostrato negli esempi sopra. In Cursor puoi configurarlo dal setup dell'MCP Server nelle Settings UI.
Test con MCP Inspector
npx @modelcontextprotocol/inspector npx -y github:gaddario98/mcp-react-docsSviluppo
# Avvia il server in modalità watch
yarn dev
# Avvia normalmente
yarn startAvailable Tools
5 toolsget_package_docsB
Get the full README.md documentation for a specific @gaddario98 React package
| Name | Required | Description | Default |
|---|---|---|---|
| packageId | Yes | Package identifier: 'react-core', 'react-form', 'react-queries', or 'react-pages' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden, and it does disclose the return artifact ('full README.md'). However, it omits what happens for an unknown packageId, whether output is truncated or paginated, and any read-only/error semantics.
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?
A single front-loaded sentence with the resource stated immediately and no filler. It is appropriately sized, though it could have used its remaining length to add routing or error context.
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?
For a single-parameter lookup with no output schema, naming the exact returned artifact (README.md) is nearly enough. Only the absence of invalid-input behavior and sibling routing keeps it from being fully 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?
Schema description coverage is 100% and the packageId field already enumerates the four valid values, so the description adds no meaning beyond the schema. Baseline 3 is appropriate when the schema does the work.
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?
States a specific verb (Get) and resource (full README.md documentation) for a scoped target (@gaddario98 React package). It is distinguishable from get_package_types and get_package_source by naming the docs artifact, though it does not explicitly contrast itself with those siblings.
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?
No when-to-use guidance, prerequisites, or alternatives are given. With siblings like get_package_source and get_package_types available, the agent must infer on its own that this tool is for prose documentation rather than code or type definitions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_package_sourceA
Read the contents of a specific source file from a @gaddario98 React package. Use list_packages first to see available packages, then explore files.
| Name | Required | Description | Default |
|---|---|---|---|
| filePath | No | Relative path to the file within the package directory (e.g., 'hooks/useFormManager.tsx'). Omit to list all source files. | |
| packageId | Yes | Package identifier: 'react-core', 'react-form', 'react-queries', or 'react-pages' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the behavioral burden. 'Read the contents' implies a safe read-only operation, which is useful, but there is no disclosure of truncation limits for large files, permission requirements, or what a listing looks like when filePath is omitted. Adequate but thin for a tool with zero annotation coverage.
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?
Two short sentences, front-loaded with the core action before the prerequisite hint. Nothing is wasted, though it is very brief for a tool whose behavior is otherwise undocumented.
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?
With no output schema and no annotations, the description should ideally state what is returned (file contents vs. a file listing when filePath is omitted). It covers the basics but leaves the return shape and large-file behavior to inference.
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 description coverage is 100%, with filePath and packageId fully documented including an example path and the enumeration of package identifiers. The description adds no syntax or format detail beyond the schema, so the baseline of 3 applies.
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?
States a specific verb and resource: 'Read the contents of a specific source file from a @gaddario98 React package.' This is clear and actionable. It does not explicitly contrast itself with siblings like search_source or get_package_types, which would be needed for a 5.
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?
Provides clear sequencing: 'Use list_packages first to see available packages, then explore files.' That is real usage context. It stops short of distinguishing when to use this tool versus search_source or get_package_docs, so no exclusions or alternatives are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_package_typesB
Get the TypeScript type definitions (types.ts) for a specific @gaddario98 React package
| Name | Required | Description | Default |
|---|---|---|---|
| packageId | Yes | Package identifier: 'react-form', 'react-queries', or 'react-pages' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the full behavioral burden. It implies a read-only operation (getting type definitions) and doesn't mention any side effects or permissions, but it fails to disclose any behavioral traits like caching, rate limits, or output format. It's adequate but minimal.
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 a single, clear sentence that is front-loaded and contains no extraneous information. It efficiently communicates the tool's purpose.
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 the simplicity (one parameter, no output schema) and the fact that the schema fully describes the parameter, the description is largely complete for an agent to call it correctly. However, it could benefit from explicit usage guidelines or behavioral notes, so it's not perfect.
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 description coverage is 100%, so the schema already fully documents the single parameter with a list of allowed values. The description adds no extra meaning about the parameter. Baseline 3 is appropriate.
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 the verb (Get) and the resource (TypeScript type definitions for a specific React package). It is reasonably specific, mentioning the file name types.ts. However, it doesn't explicitly distinguish itself from siblings like get_package_source, which might also retrieve files. Without that differentiation, it's a 4 rather than a 5.
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?
The description provides no guidance on when to use this tool versus alternatives such as get_package_docs, get_package_source, or search_source. It merely states what it does, leaving the agent to infer the appropriate context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_packagesA
List all available @gaddario98 React packages with their descriptions and GitHub links
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It does disclose the return shape (descriptions and GitHub links), which is useful, but says nothing about read-only safety, pagination, ordering, or what happens when no packages exist.
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?
A single front-loaded sentence naming the verb, the resource, and the payload. Nothing is wasted and nothing is buried.
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?
For a zero-parameter discovery tool with no output schema, the description tells the agent what it gets back and roughly when to reach for it. Only the routing relative to the get_*/search siblings is left unstated.
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?
The tool takes zero parameters, so there is nothing for the description to disambiguate; the baseline of 4 applies. The description correctly implies the call is argument-free.
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?
States a specific verb (List) and a scoped resource (@gaddario98 React packages), plus what each entry contains. It does not explicitly contrast itself with siblings like get_package_docs or get_package_source, so the differentiation is only implicit from the verb.
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?
Usage is implied: 'list all' signals a discovery/browse step, contrasting naturally with the get_* siblings that operate on a single package. However, no explicit when-to-use guidance or named alternatives are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_sourceA
Search for a pattern across all source files of a @gaddario98 React package using GitHub Code Search. Requires GITHUB_TOKEN environment variable for best results.
| Name | Required | Description | Default |
|---|---|---|---|
| pattern | Yes | Search text to find in source files (GitHub Search syntax is supported) | |
| packageId | Yes | Package identifier, or 'all' to search across all packages |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It discloses that GitHub Code Search is used and that a GITHUB_TOKEN is required for best results, but it omits read-only nature, return format, result limits, pagination, and rate-limit behavior.
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?
Two tightly written sentences front-load the core purpose and follow with the key prerequisite. No sentence is wasted or redundant.
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?
For a simple two-parameter search tool with no annotations and no output schema, the description covers purpose and auth context. However, it leaves gaps around result behavior, output shape, and sibling-tool alternatives that would help an agent call it correctly.
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 description coverage is 100%, so both parameters are already documented in the schema. The description adds no syntax or format details beyond what the schema provides, which is the expected baseline when the schema does the heavy lifting.
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?
States a specific verb and resource: search for a pattern across all source files of a package, using GitHub Code Search. This distinguishes it from retrieval-oriented siblings like get_package_source, but it does not explicitly name or contrast with any sibling tool.
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?
The description implies when the tool is useful (finding a pattern across source files) but provides no explicit when-not conditions or alternative tools to use instead. It mentions a prerequisite (GITHUB_TOKEN) but not as usage guidance.
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.
5 tool updates
v1.0.0- First observed
get_package_docs - First observed
get_package_source - First observed
get_package_types - First observed
list_packages - First observed
search_source
TDQS
Scored across 5 tools
Tools are largely distinct: list_packages for enumeration, get_package_docs for README, get_package_source for arbitrary files, search_source for pattern search. However, get_package_types overlaps with get_package_source since both can retrieve types.ts, which may cause occasional confusion.
All tool names follow a consistent snake_case verb_noun pattern (list_, get_, search_), with clear and predictable wording.
Five tools is well-scoped for a documentation retrieval server, covering listing, fetching docs/types/source, and search without redundancy.
Core operations are present, but there is no tool to list files within a package, making get_package_source difficult to use without guessing file paths. This notable gap limits exploratory workflows.
Maintenance
Related MCP Connectors
An MCP server that gives your AI access to the source code and docs of all public github repos
Augments MCP Server - A comprehensive framework documentation provider for Claude Code
Driflyte MCP server which lets AI assistants query topic-specific knowledge from web and GitHub.
MCP server for stocksense-ai documentation, generated by doc2mcp.
Related MCP Servers
- AlicenseAqualityAmaintenanceMCP server for the ReactUse library. Exposes 110+ React Hook signatures, examples, and API metadata so AI coding assistants can discover and use any hook from @reactuses/core directly.31,054-
- AlicenseAqualityAmaintenanceMCP server for daisyUI React components that enables AI coding assistants to search documentation, look up props, and retrieve code examples.55 npm2MIT
- AlicenseNot gradedqualityDmaintenanceAn MCP server that provides tools to fetch live, version-accurate documentation, changelogs, examples, and method signatures for npm and PyPI packages, preventing AI coding agents from hallucinating stale APIs.5 npmISC
- AlicenseAqualityCmaintenanceMCP server for querying Preact documentation and ecosystem, including tools to search docs, get READMEs, and list packages.311 npm2MIT