@react-native-nitro-device-info/mcp-server 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +220 -0
- package/dist/cli/init.d.ts +12 -0
- package/dist/cli/init.d.ts.map +1 -0
- package/dist/cli/init.js +153 -0
- package/dist/cli/init.js.map +1 -0
- package/dist/index.d.ts +14 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +375 -0
- package/dist/index.js.map +1 -0
- package/dist/indexer/api-parser.d.ts +23 -0
- package/dist/indexer/api-parser.d.ts.map +1 -0
- package/dist/indexer/api-parser.js +404 -0
- package/dist/indexer/api-parser.js.map +1 -0
- package/dist/indexer/doc-parser.d.ts +38 -0
- package/dist/indexer/doc-parser.d.ts.map +1 -0
- package/dist/indexer/doc-parser.js +359 -0
- package/dist/indexer/doc-parser.js.map +1 -0
- package/dist/indexer/index.d.ts +54 -0
- package/dist/indexer/index.d.ts.map +1 -0
- package/dist/indexer/index.js +151 -0
- package/dist/indexer/index.js.map +1 -0
- package/dist/indexer/search.d.ts +36 -0
- package/dist/indexer/search.d.ts.map +1 -0
- package/dist/indexer/search.js +511 -0
- package/dist/indexer/search.js.map +1 -0
- package/dist/tools/get-api.d.ts +26 -0
- package/dist/tools/get-api.d.ts.map +1 -0
- package/dist/tools/get-api.js +229 -0
- package/dist/tools/get-api.js.map +1 -0
- package/dist/tools/list-apis.d.ts +32 -0
- package/dist/tools/list-apis.d.ts.map +1 -0
- package/dist/tools/list-apis.js +210 -0
- package/dist/tools/list-apis.js.map +1 -0
- package/dist/tools/search-docs.d.ts +32 -0
- package/dist/tools/search-docs.d.ts.map +1 -0
- package/dist/tools/search-docs.js +148 -0
- package/dist/tools/search-docs.js.map +1 -0
- package/dist/types/index.d.ts +166 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +9 -0
- package/dist/types/index.js.map +1 -0
- package/package.json +59 -0
package/README.md
ADDED
|
@@ -0,0 +1,220 @@
|
|
|
1
|
+
# @react-native-nitro-device-info/mcp-server
|
|
2
|
+
|
|
3
|
+
MCP (Model Context Protocol) server for react-native-nitro-device-info that enables AI tools like Claude, Cursor, and Copilot to accurately access library documentation and API information.
|
|
4
|
+
|
|
5
|
+
## Prerequisites
|
|
6
|
+
|
|
7
|
+
| Requirement | Version | Notes |
|
|
8
|
+
|-------------|---------|-------|
|
|
9
|
+
| Node.js | ≥20.0.0 | LTS recommended. Check with `node --version` |
|
|
10
|
+
| npm | ≥10.0.0 | Bundled with Node.js 20+ |
|
|
11
|
+
|
|
12
|
+
## Installation
|
|
13
|
+
|
|
14
|
+
### Option 1: npx (Recommended)
|
|
15
|
+
|
|
16
|
+
No installation required. Configure your AI tool to run directly:
|
|
17
|
+
|
|
18
|
+
```bash
|
|
19
|
+
npx @react-native-nitro-device-info/mcp-server
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
**Advantages**:
|
|
23
|
+
- Always uses latest version
|
|
24
|
+
- No global installation needed
|
|
25
|
+
- Works immediately after npm registry access
|
|
26
|
+
|
|
27
|
+
### Option 2: Global Install
|
|
28
|
+
|
|
29
|
+
```bash
|
|
30
|
+
npm install -g @react-native-nitro-device-info/mcp-server
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
Then run:
|
|
34
|
+
|
|
35
|
+
```bash
|
|
36
|
+
nitro-device-info-mcp
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
## Quick Setup (Recommended)
|
|
40
|
+
|
|
41
|
+
Run the `init` command in your React Native project to automatically configure MCP for Cursor and Claude Code:
|
|
42
|
+
|
|
43
|
+
```bash
|
|
44
|
+
cd your-react-native-project
|
|
45
|
+
npx @react-native-nitro-device-info/mcp-server init
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
This creates:
|
|
49
|
+
- `.cursor/mcp.json` - Cursor IDE configuration
|
|
50
|
+
- `.mcp.json` - Claude Code project configuration
|
|
51
|
+
|
|
52
|
+
Then restart your IDE and start asking questions!
|
|
53
|
+
|
|
54
|
+
## Manual Configuration
|
|
55
|
+
|
|
56
|
+
### Claude Desktop (macOS)
|
|
57
|
+
|
|
58
|
+
**Configuration file**: `~/Library/Application Support/Claude/claude_desktop_config.json`
|
|
59
|
+
|
|
60
|
+
**Windows path**: `%APPDATA%\Claude\claude_desktop_config.json`
|
|
61
|
+
|
|
62
|
+
```json
|
|
63
|
+
{
|
|
64
|
+
"mcpServers": {
|
|
65
|
+
"nitro-device-info": {
|
|
66
|
+
"command": "npx",
|
|
67
|
+
"args": ["@react-native-nitro-device-info/mcp-server"]
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
**Steps**:
|
|
74
|
+
1. Open the configuration file (create if doesn't exist)
|
|
75
|
+
2. Add the `mcpServers` entry above
|
|
76
|
+
3. Restart Claude Desktop completely (Cmd+Q, then reopen)
|
|
77
|
+
4. Verify: Ask "What battery APIs does react-native-nitro-device-info have?"
|
|
78
|
+
|
|
79
|
+
### Cursor IDE
|
|
80
|
+
|
|
81
|
+
**Configuration file**: `.cursor/mcp.json` (in your project root)
|
|
82
|
+
|
|
83
|
+
```json
|
|
84
|
+
{
|
|
85
|
+
"mcpServers": {
|
|
86
|
+
"nitro-device-info": {
|
|
87
|
+
"command": "npx",
|
|
88
|
+
"args": ["@react-native-nitro-device-info/mcp-server"]
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
### Generic MCP Client
|
|
95
|
+
|
|
96
|
+
For any MCP-compatible client using stdio transport:
|
|
97
|
+
|
|
98
|
+
```json
|
|
99
|
+
{
|
|
100
|
+
"command": "npx",
|
|
101
|
+
"args": ["@react-native-nitro-device-info/mcp-server"],
|
|
102
|
+
"transport": "stdio"
|
|
103
|
+
}
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
## Verification
|
|
107
|
+
|
|
108
|
+
### Step 1: Check Server Loading
|
|
109
|
+
|
|
110
|
+
In Claude Desktop or your AI tool, ask:
|
|
111
|
+
|
|
112
|
+
> "What tools does the nitro-device-info MCP server provide?"
|
|
113
|
+
|
|
114
|
+
**Expected response**: Should mention `search_docs`, `get_api`, and `list_apis`.
|
|
115
|
+
|
|
116
|
+
### Step 2: Test API Lookup
|
|
117
|
+
|
|
118
|
+
> "Show me the getBatteryLevel API from react-native-nitro-device-info"
|
|
119
|
+
|
|
120
|
+
### Step 3: Test Search
|
|
121
|
+
|
|
122
|
+
> "How do I check if headphones are connected?"
|
|
123
|
+
|
|
124
|
+
### Step 4: Test List
|
|
125
|
+
|
|
126
|
+
> "List all battery-related APIs"
|
|
127
|
+
|
|
128
|
+
## Available Tools
|
|
129
|
+
|
|
130
|
+
| Tool | Purpose | Example Query |
|
|
131
|
+
|------|---------|---------------|
|
|
132
|
+
| `search_docs` | Search documentation with natural language | "how to get device model" |
|
|
133
|
+
| `get_api` | Get detailed info about a specific API | "show me getBatteryLevel" |
|
|
134
|
+
| `list_apis` | List APIs by category, platform, or type | "list all network APIs" |
|
|
135
|
+
|
|
136
|
+
## Usage Examples
|
|
137
|
+
|
|
138
|
+
### Basic Questions
|
|
139
|
+
|
|
140
|
+
> "How do I get the device's battery level?"
|
|
141
|
+
|
|
142
|
+
The AI will query the MCP server and provide accurate API information:
|
|
143
|
+
|
|
144
|
+
```typescript
|
|
145
|
+
import { NitroModules } from 'react-native-nitro-modules';
|
|
146
|
+
import type { DeviceInfo } from 'react-native-nitro-device-info';
|
|
147
|
+
|
|
148
|
+
const deviceInfo = NitroModules.createHybridObject<DeviceInfo>('DeviceInfo');
|
|
149
|
+
|
|
150
|
+
// Get battery level (0.0 to 1.0)
|
|
151
|
+
const batteryLevel = deviceInfo.getBatteryLevel();
|
|
152
|
+
console.log(`Battery: ${Math.round(batteryLevel * 100)}%`);
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
### API Discovery
|
|
156
|
+
|
|
157
|
+
> "What APIs are available for network information?"
|
|
158
|
+
|
|
159
|
+
### Troubleshooting Questions
|
|
160
|
+
|
|
161
|
+
> "Why does getIpAddress return empty on iOS simulator?"
|
|
162
|
+
|
|
163
|
+
## Troubleshooting
|
|
164
|
+
|
|
165
|
+
### Server Not Loading
|
|
166
|
+
|
|
167
|
+
**Symptom**: AI doesn't recognize react-native-nitro-device-info questions
|
|
168
|
+
|
|
169
|
+
**Diagnostic steps**:
|
|
170
|
+
|
|
171
|
+
1. **Check Node.js version**:
|
|
172
|
+
```bash
|
|
173
|
+
node --version # Must be v20.0.0 or higher
|
|
174
|
+
```
|
|
175
|
+
|
|
176
|
+
2. **Verify npx works**:
|
|
177
|
+
```bash
|
|
178
|
+
npx --version
|
|
179
|
+
```
|
|
180
|
+
|
|
181
|
+
3. **Test server directly**:
|
|
182
|
+
```bash
|
|
183
|
+
npx @react-native-nitro-device-info/mcp-server --help
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
4. **Check Claude Desktop logs** (macOS):
|
|
187
|
+
```bash
|
|
188
|
+
tail -f ~/Library/Logs/Claude/mcp*.log
|
|
189
|
+
```
|
|
190
|
+
|
|
191
|
+
### Common Issues
|
|
192
|
+
|
|
193
|
+
| Issue | Cause | Solution |
|
|
194
|
+
|-------|-------|----------|
|
|
195
|
+
| "command not found" | Node.js not in PATH | Reinstall Node.js or add to PATH |
|
|
196
|
+
| "npm ERR! 404" | Package not published | Wait for npm publish or build from source |
|
|
197
|
+
| JSON parse error | Invalid config syntax | Check for trailing commas, quotes |
|
|
198
|
+
| Server timeout | Slow network/registry | Use global install for offline use |
|
|
199
|
+
|
|
200
|
+
## Development
|
|
201
|
+
|
|
202
|
+
### Run from Source
|
|
203
|
+
|
|
204
|
+
```bash
|
|
205
|
+
git clone https://github.com/l2hyunwoo/react-native-nitro-device-info.git
|
|
206
|
+
cd react-native-nitro-device-info
|
|
207
|
+
yarn install
|
|
208
|
+
yarn workspace @react-native-nitro-device-info/mcp-server build
|
|
209
|
+
yarn workspace @react-native-nitro-device-info/mcp-server start
|
|
210
|
+
```
|
|
211
|
+
|
|
212
|
+
### Run Tests
|
|
213
|
+
|
|
214
|
+
```bash
|
|
215
|
+
yarn workspace @react-native-nitro-device-info/mcp-server test
|
|
216
|
+
```
|
|
217
|
+
|
|
218
|
+
## License
|
|
219
|
+
|
|
220
|
+
MIT
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CLI init command - generates MCP configuration files
|
|
3
|
+
*
|
|
4
|
+
* Supports:
|
|
5
|
+
* - .cursor/mcp.json for Cursor IDE
|
|
6
|
+
* - .mcp.json for Claude Code (project-level)
|
|
7
|
+
*/
|
|
8
|
+
/**
|
|
9
|
+
* Run the init command
|
|
10
|
+
*/
|
|
11
|
+
export declare function runInit(): Promise<void>;
|
|
12
|
+
//# sourceMappingURL=init.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/cli/init.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAyGH;;GAEG;AACH,wBAAsB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAkC7C"}
|
package/dist/cli/init.js
ADDED
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* CLI init command - generates MCP configuration files
|
|
4
|
+
*
|
|
5
|
+
* Supports:
|
|
6
|
+
* - .cursor/mcp.json for Cursor IDE
|
|
7
|
+
* - .mcp.json for Claude Code (project-level)
|
|
8
|
+
*/
|
|
9
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
12
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
13
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
14
|
+
}
|
|
15
|
+
Object.defineProperty(o, k2, desc);
|
|
16
|
+
}) : (function(o, m, k, k2) {
|
|
17
|
+
if (k2 === undefined) k2 = k;
|
|
18
|
+
o[k2] = m[k];
|
|
19
|
+
}));
|
|
20
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
21
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
22
|
+
}) : function(o, v) {
|
|
23
|
+
o["default"] = v;
|
|
24
|
+
});
|
|
25
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
26
|
+
var ownKeys = function(o) {
|
|
27
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
28
|
+
var ar = [];
|
|
29
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
30
|
+
return ar;
|
|
31
|
+
};
|
|
32
|
+
return ownKeys(o);
|
|
33
|
+
};
|
|
34
|
+
return function (mod) {
|
|
35
|
+
if (mod && mod.__esModule) return mod;
|
|
36
|
+
var result = {};
|
|
37
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
38
|
+
__setModuleDefault(result, mod);
|
|
39
|
+
return result;
|
|
40
|
+
};
|
|
41
|
+
})();
|
|
42
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
43
|
+
exports.runInit = runInit;
|
|
44
|
+
const fs = __importStar(require("fs"));
|
|
45
|
+
const path = __importStar(require("path"));
|
|
46
|
+
const MCP_SERVER_CONFIG = {
|
|
47
|
+
command: 'npx',
|
|
48
|
+
args: ['@react-native-nitro-device-info/mcp-server'],
|
|
49
|
+
};
|
|
50
|
+
const SERVER_NAME = 'nitro-device-info';
|
|
51
|
+
/**
|
|
52
|
+
* Merge MCP server config into existing config
|
|
53
|
+
*/
|
|
54
|
+
function mergeConfig(existing) {
|
|
55
|
+
if (!existing) {
|
|
56
|
+
return {
|
|
57
|
+
mcpServers: {
|
|
58
|
+
[SERVER_NAME]: MCP_SERVER_CONFIG,
|
|
59
|
+
},
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
return {
|
|
63
|
+
...existing,
|
|
64
|
+
mcpServers: {
|
|
65
|
+
...existing.mcpServers,
|
|
66
|
+
[SERVER_NAME]: MCP_SERVER_CONFIG,
|
|
67
|
+
},
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Read existing JSON config file
|
|
72
|
+
*/
|
|
73
|
+
function readJsonFile(filePath) {
|
|
74
|
+
try {
|
|
75
|
+
if (fs.existsSync(filePath)) {
|
|
76
|
+
const content = fs.readFileSync(filePath, 'utf-8');
|
|
77
|
+
return JSON.parse(content);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
catch {
|
|
81
|
+
// File doesn't exist or invalid JSON
|
|
82
|
+
}
|
|
83
|
+
return null;
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Write JSON config file
|
|
87
|
+
*/
|
|
88
|
+
function writeJsonFile(filePath, config) {
|
|
89
|
+
const dir = path.dirname(filePath);
|
|
90
|
+
if (!fs.existsSync(dir)) {
|
|
91
|
+
fs.mkdirSync(dir, { recursive: true });
|
|
92
|
+
}
|
|
93
|
+
fs.writeFileSync(filePath, JSON.stringify(config, null, 2) + '\n');
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Initialize Cursor MCP configuration
|
|
97
|
+
*/
|
|
98
|
+
function initCursor(projectRoot) {
|
|
99
|
+
const configPath = path.join(projectRoot, '.cursor', 'mcp.json');
|
|
100
|
+
const existing = readJsonFile(configPath);
|
|
101
|
+
const merged = mergeConfig(existing);
|
|
102
|
+
// Check if already configured
|
|
103
|
+
if (existing?.mcpServers?.[SERVER_NAME]) {
|
|
104
|
+
return { created: false, path: configPath };
|
|
105
|
+
}
|
|
106
|
+
writeJsonFile(configPath, merged);
|
|
107
|
+
return { created: true, path: configPath };
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Initialize Claude Code MCP configuration (.mcp.json)
|
|
111
|
+
*/
|
|
112
|
+
function initClaudeCode(projectRoot) {
|
|
113
|
+
const configPath = path.join(projectRoot, '.mcp.json');
|
|
114
|
+
const existing = readJsonFile(configPath);
|
|
115
|
+
const merged = mergeConfig(existing);
|
|
116
|
+
// Check if already configured
|
|
117
|
+
if (existing?.mcpServers?.[SERVER_NAME]) {
|
|
118
|
+
return { created: false, path: configPath };
|
|
119
|
+
}
|
|
120
|
+
writeJsonFile(configPath, merged);
|
|
121
|
+
return { created: true, path: configPath };
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Run the init command
|
|
125
|
+
*/
|
|
126
|
+
async function runInit() {
|
|
127
|
+
const projectRoot = process.cwd();
|
|
128
|
+
console.log('Initializing MCP configuration for react-native-nitro-device-info...\n');
|
|
129
|
+
// Initialize Cursor
|
|
130
|
+
const cursorResult = initCursor(projectRoot);
|
|
131
|
+
if (cursorResult.created) {
|
|
132
|
+
console.log(`✓ Created ${path.relative(projectRoot, cursorResult.path)}`);
|
|
133
|
+
}
|
|
134
|
+
else {
|
|
135
|
+
console.log(`• ${path.relative(projectRoot, cursorResult.path)} (already configured)`);
|
|
136
|
+
}
|
|
137
|
+
// Initialize Claude Code
|
|
138
|
+
const claudeResult = initClaudeCode(projectRoot);
|
|
139
|
+
if (claudeResult.created) {
|
|
140
|
+
console.log(`✓ Created ${path.relative(projectRoot, claudeResult.path)}`);
|
|
141
|
+
}
|
|
142
|
+
else {
|
|
143
|
+
console.log(`• ${path.relative(projectRoot, claudeResult.path)} (already configured)`);
|
|
144
|
+
}
|
|
145
|
+
console.log('\nMCP configuration complete!\n');
|
|
146
|
+
console.log('Next steps:');
|
|
147
|
+
console.log(' • Cursor IDE: Restart Cursor to load the MCP server');
|
|
148
|
+
console.log(' • Claude Code: The MCP server will be available in your project');
|
|
149
|
+
console.log('\nYou can now ask AI assistants about react-native-nitro-device-info:');
|
|
150
|
+
console.log(' "How do I get the device\'s battery level?"');
|
|
151
|
+
console.log(' "What network APIs are available?"');
|
|
152
|
+
}
|
|
153
|
+
//# sourceMappingURL=init.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/cli/init.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* MCP Server for react-native-nitro-device-info
|
|
4
|
+
*
|
|
5
|
+
* Enables AI tools like Claude, Cursor, and Copilot to access
|
|
6
|
+
* accurate API documentation for the react-native-nitro-device-info library.
|
|
7
|
+
*
|
|
8
|
+
* Usage:
|
|
9
|
+
* npx @react-native-nitro-device-info/mcp-server # Start MCP server
|
|
10
|
+
* npx @react-native-nitro-device-info/mcp-server init # Initialize config files
|
|
11
|
+
* npx @react-native-nitro-device-info/mcp-server --help # Show help
|
|
12
|
+
*/
|
|
13
|
+
export {};
|
|
14
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;;;;;;;;;GAUG"}
|