Skip to main content
Glama
cristminix

React Native SME Documentation MCP Server

by cristminix

πŸš€ React Native SME Documentation MCP Server

A powerful Model Context Protocol (MCP) server that gives your AI assistants instant access to comprehensive React Native SME documentation with smart fuzzy search capabilities and fast retrieval for an enhanced mobile development workflow.

πŸ“Š Coverage: 3,090+ sections | πŸ“¦ Documentation Source: Local docs/llms-full.txt (3.9MB)


✨ Key Features

🎯 Feature

πŸ“ Description

πŸš€ Benefits

πŸ” Smart Search

Fuzzy search through 3,090+ documentation sections powered by Fuse.js

Find solutions, components, hooks, and guides even with partial queries

πŸ“– Precise Retrieval

Retrieve exact sections by title or path identifier

Get targeted documentation without cluttering AI context

πŸ“‹ Section Listing

List available sections with optional category filtering

Explore topics, modules, and architecture guides

⚑ Fast & Lightweight

TypeScript-powered running over stdio

Zero-lag responses for AI code assistants

πŸ“¦ Zero External Dependency

Bundled with local documentation

Operates completely offline without external API keys


Related MCP server: expo-docs

πŸ“‹ Prerequisites


πŸ›  Installation & Setup

1. Clone and Install

# Clone the repository
git clone https://github.com/cristminix/react-native-sme-docs-mcp.git
cd react-native-sme-docs-mcp

# Install dependencies using Yarn
yarn install

# Build the TypeScript code
yarn build

2. Documentation

Documentation files are located in ./docs/:

  • docs/llms-full.txt (default full documentation, ~3.9MB, 3,090+ sections)

  • docs/llms.txt (summary documentation)

Optional: Point to a custom documentation file using an environment variable:

export LLM_DOCS_PATH="/absolute/path/to/your/documentation.txt"

βš™οΈ Configuration for AI Assistants

Replace /absolute/path/to/react-native-sme-docs-mcp with your actual project location.

🟒 Claude Code CLI

Add to your ~/.claude/claude_code_config.json or project-level .claude/mcp.json:

{
  "mcpServers": {
    "react-native-sme-docs": {
      "command": "node",
      "args": ["/absolute/path/to/react-native-sme-docs-mcp/dist/index.js"],
      "env": {
        "LLM_DOCS_PATH": "/absolute/path/to/react-native-sme-docs-mcp/docs/llms-full.txt"
      }
    }
  }
}

πŸ”· Cursor IDE

Add to your Cursor settings (settings.json):

{
  "mcp": {
    "mcpServers": {
      "react-native-sme-docs": {
        "command": "node",
        "args": ["/absolute/path/to/react-native-sme-docs-mcp/dist/index.js"],
        "env": {
          "LLM_DOCS_PATH": "/absolute/path/to/react-native-sme-docs-mcp/docs/llms-full.txt"
        }
      }
    }
  }
}

🌊 Windsurf

Add to ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "react-native-sme-docs": {
      "command": "node",
      "args": ["/absolute/path/to/react-native-sme-docs-mcp/dist/index.js"],
      "env": {
        "LLM_DOCS_PATH": "/absolute/path/to/react-native-sme-docs-mcp/docs/llms-full.txt"
      }
    }
  }
}

πŸ”§ Available MCP Tools

This MCP server provides 3 core tools:

πŸ” 1. search_docs - Fuzzy Documentation Search

Searches documentation sections using fuzzy matching.

Parameters:

  • query (string, required): The search query (e.g. "navigation", "flatlist performance", "reanimated")

  • limit (number, optional): Maximum results to return (default: 5)

Example Input:

{
  "name": "search_docs",
  "arguments": {
    "query": "state management hooks",
    "limit": 3
  }
}

πŸ“– 2. get_section - Precise Section Retrieval

Retrieves the full content of a specific documentation section matching the title or path identifier.

Parameters:

  • identifier (string, required): Section title or path identifier

Example Input:

{
  "name": "get_section",
  "arguments": {
    "identifier": "Performance Optimization"
  }
}

πŸ“‹ 3. list_sections - Browse Documentation Sections

Lists available sections, optionally filtered by keyword or category.

Parameters:

  • category (string, optional): Filter sections by specific keyword or path prefix

Example Input:

{
  "name": "list_sections",
  "arguments": {
    "category": "components"
  }
}

🎯 Natural Language Prompts for AI

After configuring the MCP server, you can ask your AI assistant questions naturally:

  • πŸ’¬ "Search React Native SME docs for FlatList performance optimization techniques."

  • πŸ’¬ "Look up best practices for custom hooks in React Native."

  • πŸ’¬ "Get the documentation section for deep linking and navigation."

  • πŸ’¬ "List all documentation sections related to state management."


πŸ“ Project Structure

react-native-sme-docs-mcp/
β”œβ”€β”€ .agents/plugins/          # Agent plugin configuration
β”œβ”€β”€ docs/
β”‚   β”œβ”€β”€ llms-full.txt         # Complete React Native documentation (3,090+ sections)
β”‚   └── llms.txt              # Documentation overview
β”œβ”€β”€ mcp-config-files/         # MCP sample configuration templates
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ config.ts             # Configuration loader
β”‚   β”œβ”€β”€ doc-loader.ts         # Markdown & txt documentation parser
β”‚   β”œβ”€β”€ index.ts              # Entrypoint
β”‚   β”œβ”€β”€ search.ts             # Fuse.js search engine
β”‚   β”œβ”€β”€ server.ts             # MCP server setup & lifecycle
β”‚   β”œβ”€β”€ tools.ts              # MCP tool definitions & handlers
β”‚   └── types.ts              # TypeScript interfaces & types
β”œβ”€β”€ config.json               # Server configuration defaults
β”œβ”€β”€ package.json              # Project dependencies & scripts
β”œβ”€β”€ tsconfig.json             # TypeScript compiler settings
β”œβ”€β”€ LICENSE                   # License file
└── README.md                 # Project documentation

βš™οΈ Configuration (config.json)

Customize server behavior via config.json:

{
  "searchDefaults": {
    "maxResults": 5,
    "threshold": 0.4,
    "minMatchCharLength": 3
  },
  "listDefaults": {
    "maxSections": 50
  },
  "server": {
    "name": "react-native-sme-docs-mcp",
    "version": "1.0.0"
  },
  "documentation": {
    "previewLength": 500,
    "fallbackPaths": [
      "docs/llms-full.txt",
      "docs/llms.txt"
    ]
  }
}

🚧 Development

# Run in development mode
yarn dev

# Run in watch mode (auto-reload on changes)
yarn watch

# Build TypeScript to dist/
yarn build

# Test MCP server manually via stdin
echo '{"jsonrpc":"2.0","method":"tools/list","id":1}' | node dist/index.js

πŸ“ License

This project is licensed under the MIT License.

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    Provides AI agents with accurate, version-aware documentation for React Native, Expo, React Navigation, and Ignite by automatically detecting project dependencies and fetching matching documentation.
    12
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables fast, offline search and retrieval of Expo documentation from local .mdx files, with tools for searching, getting content, listing sections, API references, and quick start guides.
    76 npm
    17
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to search and read offline documentation from synced libraries via MCP tools, providing hybrid keyword and semantic search without network calls.
    18 npm
    1
    MIT