@venizia/ignis-docs 0.0.1-1
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/mcp-server/dist/common/config.d.ts +27 -0
- package/mcp-server/dist/common/config.d.ts.map +1 -0
- package/mcp-server/dist/common/config.js +27 -0
- package/mcp-server/dist/common/config.js.map +1 -0
- package/mcp-server/dist/common/index.d.ts +3 -0
- package/mcp-server/dist/common/index.d.ts.map +1 -0
- package/mcp-server/dist/common/index.js +19 -0
- package/mcp-server/dist/common/index.js.map +1 -0
- package/mcp-server/dist/common/paths.d.ts +13 -0
- package/mcp-server/dist/common/paths.d.ts.map +1 -0
- package/mcp-server/dist/common/paths.js +23 -0
- package/mcp-server/dist/common/paths.js.map +1 -0
- package/mcp-server/dist/helpers/docs.helper.d.ts +81 -0
- package/mcp-server/dist/helpers/docs.helper.d.ts.map +1 -0
- package/mcp-server/dist/helpers/docs.helper.js +171 -0
- package/mcp-server/dist/helpers/docs.helper.js.map +1 -0
- package/mcp-server/dist/helpers/index.d.ts +3 -0
- package/mcp-server/dist/helpers/index.d.ts.map +1 -0
- package/mcp-server/dist/helpers/index.js +19 -0
- package/mcp-server/dist/helpers/index.js.map +1 -0
- package/mcp-server/dist/helpers/logger.helper.d.ts +7 -0
- package/mcp-server/dist/helpers/logger.helper.d.ts.map +1 -0
- package/mcp-server/dist/helpers/logger.helper.js +22 -0
- package/mcp-server/dist/helpers/logger.helper.js.map +1 -0
- package/mcp-server/dist/index.d.ts +3 -0
- package/mcp-server/dist/index.d.ts.map +1 -0
- package/mcp-server/dist/index.js +62 -0
- package/mcp-server/dist/index.js.map +1 -0
- package/mcp-server/dist/tools/base.tool.d.ts +98 -0
- package/mcp-server/dist/tools/base.tool.d.ts.map +1 -0
- package/mcp-server/dist/tools/base.tool.js +47 -0
- package/mcp-server/dist/tools/base.tool.js.map +1 -0
- package/mcp-server/dist/tools/get-doc-content.tool.d.ts +30 -0
- package/mcp-server/dist/tools/get-doc-content.tool.d.ts.map +1 -0
- package/mcp-server/dist/tools/get-doc-content.tool.js +127 -0
- package/mcp-server/dist/tools/get-doc-content.tool.js.map +1 -0
- package/mcp-server/dist/tools/get-doc-metadata.tool.d.ts +40 -0
- package/mcp-server/dist/tools/get-doc-metadata.tool.d.ts.map +1 -0
- package/mcp-server/dist/tools/get-doc-metadata.tool.js +121 -0
- package/mcp-server/dist/tools/get-doc-metadata.tool.js.map +1 -0
- package/mcp-server/dist/tools/index.d.ts +8 -0
- package/mcp-server/dist/tools/index.d.ts.map +1 -0
- package/mcp-server/dist/tools/index.js +18 -0
- package/mcp-server/dist/tools/index.js.map +1 -0
- package/mcp-server/dist/tools/list-categories.tool.d.ts +20 -0
- package/mcp-server/dist/tools/list-categories.tool.d.ts.map +1 -0
- package/mcp-server/dist/tools/list-categories.tool.js +105 -0
- package/mcp-server/dist/tools/list-categories.tool.js.map +1 -0
- package/mcp-server/dist/tools/list-docs.tool.d.ts +32 -0
- package/mcp-server/dist/tools/list-docs.tool.d.ts.map +1 -0
- package/mcp-server/dist/tools/list-docs.tool.js +121 -0
- package/mcp-server/dist/tools/list-docs.tool.js.map +1 -0
- package/mcp-server/dist/tools/search-docs.tool.d.ts +32 -0
- package/mcp-server/dist/tools/search-docs.tool.d.ts.map +1 -0
- package/mcp-server/dist/tools/search-docs.tool.js +120 -0
- package/mcp-server/dist/tools/search-docs.tool.js.map +1 -0
- package/package.json +102 -0
- package/wiki/get-started/5-minute-quickstart.md +266 -0
- package/wiki/get-started/best-practices/api-usage-examples.md +222 -0
- package/wiki/get-started/best-practices/architectural-patterns.md +129 -0
- package/wiki/get-started/best-practices/code-style-standards.md +122 -0
- package/wiki/get-started/best-practices/common-pitfalls.md +136 -0
- package/wiki/get-started/best-practices/contribution-workflow.md +145 -0
- package/wiki/get-started/best-practices/deployment-strategies.md +121 -0
- package/wiki/get-started/best-practices/performance-optimization.md +88 -0
- package/wiki/get-started/best-practices/security-guidelines.md +97 -0
- package/wiki/get-started/best-practices/troubleshooting-tips.md +100 -0
- package/wiki/get-started/building-a-crud-api.md +717 -0
- package/wiki/get-started/core-concepts/application.md +168 -0
- package/wiki/get-started/core-concepts/components.md +96 -0
- package/wiki/get-started/core-concepts/controllers.md +441 -0
- package/wiki/get-started/core-concepts/dependency-injection.md +160 -0
- package/wiki/get-started/core-concepts/persistent.md +591 -0
- package/wiki/get-started/core-concepts/services.md +88 -0
- package/wiki/get-started/index.md +65 -0
- package/wiki/get-started/mcp-docs-server.md +840 -0
- package/wiki/get-started/philosophy.md +123 -0
- package/wiki/get-started/prerequisites.md +113 -0
- package/wiki/get-started/quickstart.md +382 -0
- package/wiki/index.md +48 -0
- package/wiki/references/base/application.md +67 -0
- package/wiki/references/base/components.md +80 -0
- package/wiki/references/base/controllers.md +361 -0
- package/wiki/references/base/datasources.md +105 -0
- package/wiki/references/base/dependency-injection.md +83 -0
- package/wiki/references/base/models.md +104 -0
- package/wiki/references/base/repositories.md +118 -0
- package/wiki/references/base/services.md +97 -0
- package/wiki/references/components/authentication.md +224 -0
- package/wiki/references/components/health-check.md +190 -0
- package/wiki/references/components/index.md +61 -0
- package/wiki/references/components/request-tracker.md +35 -0
- package/wiki/references/components/socket-io.md +127 -0
- package/wiki/references/components/swagger.md +175 -0
- package/wiki/references/helpers/cron.md +94 -0
- package/wiki/references/helpers/crypto.md +117 -0
- package/wiki/references/helpers/env.md +67 -0
- package/wiki/references/helpers/error.md +80 -0
- package/wiki/references/helpers/index.md +21 -0
- package/wiki/references/helpers/inversion.md +141 -0
- package/wiki/references/helpers/logger.md +98 -0
- package/wiki/references/helpers/network.md +143 -0
- package/wiki/references/helpers/queue.md +131 -0
- package/wiki/references/helpers/redis.md +121 -0
- package/wiki/references/helpers/socket-io.md +103 -0
- package/wiki/references/helpers/storage.md +130 -0
- package/wiki/references/helpers/testing.md +115 -0
- package/wiki/references/helpers/worker-thread.md +162 -0
- package/wiki/references/src-details/core.md +249 -0
- package/wiki/references/src-details/dev-configs.md +302 -0
- package/wiki/references/src-details/docs.md +61 -0
- package/wiki/references/src-details/helpers.md +211 -0
- package/wiki/references/src-details/inversion.md +345 -0
- package/wiki/references/src-details/mcp-server.md +726 -0
- package/wiki/references/utilities/crypto.md +39 -0
- package/wiki/references/utilities/date.md +72 -0
- package/wiki/references/utilities/index.md +12 -0
- package/wiki/references/utilities/module.md +40 -0
- package/wiki/references/utilities/parse.md +68 -0
- package/wiki/references/utilities/performance.md +64 -0
- package/wiki/references/utilities/promise.md +83 -0
- package/wiki/references/utilities/request.md +66 -0
- package/wiki/references/utilities/schema.md +88 -0
|
@@ -0,0 +1,840 @@
|
|
|
1
|
+
# Getting Started with Ignis Docs MCP Server
|
|
2
|
+
|
|
3
|
+
> **What is this?** An MCP (Model Context Protocol) server that lets AI assistants access Ignis framework documentation in real-time. Your AI gets the latest docs instead of outdated training data.
|
|
4
|
+
|
|
5
|
+
## What You'll Need
|
|
6
|
+
|
|
7
|
+
Before starting, ensure you have:
|
|
8
|
+
- **Node.js** or **Bun** installed (for running the MCP server)
|
|
9
|
+
- **An AI tool** that supports MCP (Claude Code CLI, VS Code with MCP extensions, etc.)
|
|
10
|
+
|
|
11
|
+
## Quick Start (5 minutes)
|
|
12
|
+
|
|
13
|
+
### Step 1: Choose Your AI Tool
|
|
14
|
+
|
|
15
|
+
Pick which AI assistant you're using:
|
|
16
|
+
|
|
17
|
+
| Tool | Best For |
|
|
18
|
+
|------|----------|
|
|
19
|
+
| [Claude Code](#claude-code-cli-setup) | Terminal users, developers (Recommended) |
|
|
20
|
+
| [Gemini CLI](#gemini-cli-setup) | Google AI users |
|
|
21
|
+
| [VS Code](#vs-code-setup) | VS Code with MCP extensions |
|
|
22
|
+
| [Cursor](#cursor-setup) | AI-first code editor |
|
|
23
|
+
| [Windsurf](#windsurf-setup) | Codeium's AI editor |
|
|
24
|
+
| [JetBrains IDEs](#jetbrains-setup) | IntelliJ, PyCharm, WebStorm |
|
|
25
|
+
|
|
26
|
+
### Step 2: Install the MCP Server
|
|
27
|
+
|
|
28
|
+
Choose one installation method:
|
|
29
|
+
|
|
30
|
+
#### Option A: NPM (Recommended)
|
|
31
|
+
|
|
32
|
+
```bash
|
|
33
|
+
# Global installation
|
|
34
|
+
npm install -g @venizia/ignis-docs
|
|
35
|
+
|
|
36
|
+
# Or use npx (no installation needed)
|
|
37
|
+
npx @venizia/ignis-docs
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
#### Option B: Bun
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
# Global installation
|
|
44
|
+
bun add -g @venizia/ignis-docs
|
|
45
|
+
|
|
46
|
+
# Or use bunx (no installation needed)
|
|
47
|
+
bunx @venizia/ignis-docs
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
#### Option C: Yarn
|
|
51
|
+
|
|
52
|
+
```bash
|
|
53
|
+
# Global installation
|
|
54
|
+
yarn global add @venizia/ignis-docs
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
#### Option D: pnpm
|
|
58
|
+
|
|
59
|
+
```bash
|
|
60
|
+
# Global installation
|
|
61
|
+
pnpm add -g @venizia/ignis-docs
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
### Step 3: Configure Your AI Tool
|
|
65
|
+
|
|
66
|
+
Choose your tool below and follow the specific instructions.
|
|
67
|
+
|
|
68
|
+
## Claude Code CLI Setup
|
|
69
|
+
|
|
70
|
+
**What is Claude Code?** A command-line interface for Claude that you're likely using right now if you're reading this in a terminal.
|
|
71
|
+
|
|
72
|
+
### Prerequisites
|
|
73
|
+
|
|
74
|
+
1. **Install Claude Code CLI** (if not already installed):
|
|
75
|
+
```bash
|
|
76
|
+
# macOS/Linux
|
|
77
|
+
curl -fsSL https://code.claude.ai/install.sh | sh
|
|
78
|
+
|
|
79
|
+
# Or download from: https://claude.ai/claude-code
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
2. **Verify installation:**
|
|
83
|
+
```bash
|
|
84
|
+
claude --version
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
### Setup Steps
|
|
88
|
+
|
|
89
|
+
#### 1. Find your Claude Code config directory
|
|
90
|
+
|
|
91
|
+
```bash
|
|
92
|
+
# The config file location:
|
|
93
|
+
# macOS/Linux: ~/.config/claude-code/config.json
|
|
94
|
+
# Windows: %USERPROFILE%\.config\claude-code\config.json
|
|
95
|
+
|
|
96
|
+
# Check if it exists:
|
|
97
|
+
ls ~/.config/claude-code/config.json
|
|
98
|
+
|
|
99
|
+
# If the directory doesn't exist, create it:
|
|
100
|
+
mkdir -p ~/.config/claude-code
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
#### 2. Edit the config file
|
|
104
|
+
|
|
105
|
+
**Option A: Using npx (Recommended - no global install needed):**
|
|
106
|
+
|
|
107
|
+
```bash
|
|
108
|
+
# Open config in your editor
|
|
109
|
+
nano ~/.config/claude-code/config.json
|
|
110
|
+
# Or: vim, code, etc.
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
Add this configuration:
|
|
114
|
+
|
|
115
|
+
```json
|
|
116
|
+
{
|
|
117
|
+
"mcpServers": {
|
|
118
|
+
"ignis-docs": {
|
|
119
|
+
"command": "npx",
|
|
120
|
+
"args": ["-y", "@venizia/ignis-docs"]
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
**Option B: Using global install:**
|
|
127
|
+
|
|
128
|
+
First install globally:
|
|
129
|
+
```bash
|
|
130
|
+
npm install -g @venizia/ignis-docs
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
Then configure:
|
|
134
|
+
```json
|
|
135
|
+
{
|
|
136
|
+
"mcpServers": {
|
|
137
|
+
"ignis-docs": {
|
|
138
|
+
"command": "ignis-docs-mcp"
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
**Option C: Using bunx:**
|
|
145
|
+
|
|
146
|
+
```json
|
|
147
|
+
{
|
|
148
|
+
"mcpServers": {
|
|
149
|
+
"ignis-docs": {
|
|
150
|
+
"command": "bunx",
|
|
151
|
+
"args": ["@venizia/ignis-docs"]
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
#### 3. Verify the setup
|
|
158
|
+
|
|
159
|
+
Restart your Claude Code session (close terminal and reopen), then test:
|
|
160
|
+
|
|
161
|
+
```bash
|
|
162
|
+
# In your Claude Code session, ask:
|
|
163
|
+
Can you search the Ignis docs for "dependency injection"?
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
**Expected behavior:**
|
|
167
|
+
- Claude Code should use the `searchDocs` tool
|
|
168
|
+
- You'll see a message like: `[Using tool: searchDocs]`
|
|
169
|
+
- Results from Ignis documentation appear
|
|
170
|
+
|
|
171
|
+
**If it doesn't work:**
|
|
172
|
+
- Check the config file has valid JSON: `cat ~/.config/claude-code/config.json | python -m json.tool`
|
|
173
|
+
- Check MCP server is accessible: `npx @venizia/ignis-docs` (should show "MCP Server running...")
|
|
174
|
+
- Check logs: `claude --debug` to see MCP initialization logs
|
|
175
|
+
|
|
176
|
+
#### 4. Example usage
|
|
177
|
+
|
|
178
|
+
Once working, try these queries:
|
|
179
|
+
|
|
180
|
+
```
|
|
181
|
+
# Search documentation
|
|
182
|
+
"How do I create a controller in Ignis?"
|
|
183
|
+
|
|
184
|
+
# Get specific guide
|
|
185
|
+
"Show me the complete Building a CRUD API guide"
|
|
186
|
+
|
|
187
|
+
# Browse topics
|
|
188
|
+
"What helpers are available in Ignis?"
|
|
189
|
+
|
|
190
|
+
# Get code examples
|
|
191
|
+
"Show me an example of dependency injection in Ignis"
|
|
192
|
+
```
|
|
193
|
+
|
|
194
|
+
## Gemini CLI Setup
|
|
195
|
+
|
|
196
|
+
> **Important:** As of December 2024, Google's official Gemini CLI has limited MCP support. This setup is **experimental** and may require custom configuration.
|
|
197
|
+
|
|
198
|
+
### Prerequisites
|
|
199
|
+
|
|
200
|
+
1. **Install Google AI CLI tools:**
|
|
201
|
+
```bash
|
|
202
|
+
# Option 1: Using pip (Python)
|
|
203
|
+
pip install google-generativeai
|
|
204
|
+
|
|
205
|
+
# Option 2: Using Node.js wrapper
|
|
206
|
+
npm install -g @google/generative-ai
|
|
207
|
+
```
|
|
208
|
+
|
|
209
|
+
2. **Get your API key:**
|
|
210
|
+
- Visit [Google AI Studio](https://makersuite.google.com/app/apikey)
|
|
211
|
+
- Create a new API key
|
|
212
|
+
- Save it securely
|
|
213
|
+
|
|
214
|
+
### Setup Steps
|
|
215
|
+
|
|
216
|
+
#### 1. Configure environment
|
|
217
|
+
|
|
218
|
+
```bash
|
|
219
|
+
# Set your API key
|
|
220
|
+
export GOOGLE_API_KEY="your-api-key-here"
|
|
221
|
+
|
|
222
|
+
# Or add to your shell config (~/.bashrc, ~/.zshrc):
|
|
223
|
+
echo 'export GOOGLE_API_KEY="your-api-key-here"' >> ~/.bashrc
|
|
224
|
+
source ~/.bashrc
|
|
225
|
+
```
|
|
226
|
+
|
|
227
|
+
#### 2. Create MCP config directory
|
|
228
|
+
|
|
229
|
+
```bash
|
|
230
|
+
# Create config directory
|
|
231
|
+
mkdir -p ~/.config/gemini
|
|
232
|
+
|
|
233
|
+
# The config file location:
|
|
234
|
+
# macOS/Linux: ~/.config/gemini/mcp_servers.json
|
|
235
|
+
# Windows: %USERPROFILE%\.config\gemini\mcp_servers.json
|
|
236
|
+
```
|
|
237
|
+
|
|
238
|
+
#### 3. Add MCP Server Configuration
|
|
239
|
+
|
|
240
|
+
Create `~/.config/gemini/mcp_servers.json`:
|
|
241
|
+
|
|
242
|
+
**Recommended: Using npx**
|
|
243
|
+
```json
|
|
244
|
+
{
|
|
245
|
+
"mcpServers": {
|
|
246
|
+
"ignis-docs": {
|
|
247
|
+
"command": "npx",
|
|
248
|
+
"args": ["-y", "@venizia/ignis-docs"],
|
|
249
|
+
"env": {}
|
|
250
|
+
}
|
|
251
|
+
}
|
|
252
|
+
}
|
|
253
|
+
```
|
|
254
|
+
|
|
255
|
+
**Alternative: Global install**
|
|
256
|
+
```bash
|
|
257
|
+
# First install globally
|
|
258
|
+
npm install -g @venizia/ignis-docs
|
|
259
|
+
```
|
|
260
|
+
|
|
261
|
+
Then configure:
|
|
262
|
+
```json
|
|
263
|
+
{
|
|
264
|
+
"mcpServers": {
|
|
265
|
+
"ignis-docs": {
|
|
266
|
+
"command": "ignis-docs-mcp",
|
|
267
|
+
"env": {}
|
|
268
|
+
}
|
|
269
|
+
}
|
|
270
|
+
}
|
|
271
|
+
```
|
|
272
|
+
|
|
273
|
+
#### 4. Test manually first
|
|
274
|
+
|
|
275
|
+
Before integrating with Gemini, test the MCP server works:
|
|
276
|
+
|
|
277
|
+
```bash
|
|
278
|
+
# Test the MCP server can start
|
|
279
|
+
npx @venizia/ignis-docs
|
|
280
|
+
|
|
281
|
+
# Expected output:
|
|
282
|
+
# "MCP Server listening on stdio..."
|
|
283
|
+
# (Press Ctrl+C to stop)
|
|
284
|
+
```
|
|
285
|
+
|
|
286
|
+
#### 5. Use with Gemini (if supported)
|
|
287
|
+
|
|
288
|
+
**⚠️ Note:** MCP support in Gemini CLI is limited. Alternative approaches:
|
|
289
|
+
|
|
290
|
+
**Option A: Use Google AI Python SDK with custom MCP wrapper**
|
|
291
|
+
```python
|
|
292
|
+
# This requires writing custom integration code
|
|
293
|
+
# See: https://github.com/modelcontextprotocol/python-sdk
|
|
294
|
+
```
|
|
295
|
+
|
|
296
|
+
**Option B: Use via Claude Code CLI instead**
|
|
297
|
+
- Gemini CLI MCP support is experimental
|
|
298
|
+
- Claude Code has better MCP support out of the box
|
|
299
|
+
- Recommendation: Use [Claude Code CLI setup](#claude-code-cli-setup) for Ignis docs
|
|
300
|
+
|
|
301
|
+
#### Troubleshooting
|
|
302
|
+
|
|
303
|
+
**❌ "Command not found: gemini"**
|
|
304
|
+
- Google doesn't have an official "gemini" CLI command
|
|
305
|
+
- Use `gcloud ai` or Python SDK instead
|
|
306
|
+
- Consider using Claude Code CLI for better MCP support
|
|
307
|
+
|
|
308
|
+
**❌ MCP server not loading**
|
|
309
|
+
- Gemini CLI MCP support is experimental
|
|
310
|
+
- Check if your Gemini CLI version supports MCP:
|
|
311
|
+
```bash
|
|
312
|
+
gemini --version
|
|
313
|
+
gemini mcp list # If this command doesn't exist, MCP isn't supported
|
|
314
|
+
```
|
|
315
|
+
|
|
316
|
+
**✅ Recommended Alternative:**
|
|
317
|
+
Use Claude Code CLI (see setup above) - it has full MCP support and works reliably.
|
|
318
|
+
|
|
319
|
+
## VS Code Setup
|
|
320
|
+
|
|
321
|
+
VS Code supports MCP through various extensions. The setup process is similar to Microsoft's Playwright MCP integration.
|
|
322
|
+
|
|
323
|
+
### Prerequisites
|
|
324
|
+
|
|
325
|
+
Install an MCP-compatible extension from the VS Code marketplace:
|
|
326
|
+
- **[Continue](https://marketplace.visualstudio.com/items?itemName=Continue.continue)** - AI assistant with MCP support
|
|
327
|
+
- **[Cline](https://marketplace.visualstudio.com/items?itemName=saoudrizwan.claude-dev)** - Claude-powered autonomous coding agent
|
|
328
|
+
- Or any other VS Code extension that supports the Model Context Protocol
|
|
329
|
+
|
|
330
|
+
### Configuration
|
|
331
|
+
|
|
332
|
+
The configuration location depends on which extension you're using:
|
|
333
|
+
|
|
334
|
+
**For Continue extension:**
|
|
335
|
+
- **macOS/Linux:** `~/.continue/config.json`
|
|
336
|
+
- **Windows:** `%USERPROFILE%\.continue\config.json`
|
|
337
|
+
|
|
338
|
+
**For Cline extension:**
|
|
339
|
+
- **macOS/Linux:** `~/.cline/config.json`
|
|
340
|
+
- **Windows:** `%USERPROFILE%\.cline\config.json`
|
|
341
|
+
|
|
342
|
+
**For other MCP extensions:**
|
|
343
|
+
- Check the extension's documentation for the config file location
|
|
344
|
+
|
|
345
|
+
### Add MCP Server Configuration
|
|
346
|
+
|
|
347
|
+
Open the config file for your extension and add the Ignis docs server:
|
|
348
|
+
|
|
349
|
+
**If you installed globally:**
|
|
350
|
+
```json
|
|
351
|
+
{
|
|
352
|
+
"mcpServers": {
|
|
353
|
+
"ignis-docs": {
|
|
354
|
+
"command": "ignis-docs-mcp"
|
|
355
|
+
}
|
|
356
|
+
}
|
|
357
|
+
}
|
|
358
|
+
```
|
|
359
|
+
|
|
360
|
+
**If using npx (recommended for most users):**
|
|
361
|
+
```json
|
|
362
|
+
{
|
|
363
|
+
"mcpServers": {
|
|
364
|
+
"ignis-docs": {
|
|
365
|
+
"command": "npx",
|
|
366
|
+
"args": ["-y", "@venizia/ignis-docs"]
|
|
367
|
+
}
|
|
368
|
+
}
|
|
369
|
+
}
|
|
370
|
+
```
|
|
371
|
+
|
|
372
|
+
**If using bunx:**
|
|
373
|
+
```json
|
|
374
|
+
{
|
|
375
|
+
"mcpServers": {
|
|
376
|
+
"ignis-docs": {
|
|
377
|
+
"command": "bunx",
|
|
378
|
+
"args": ["@venizia/ignis-docs"]
|
|
379
|
+
}
|
|
380
|
+
}
|
|
381
|
+
}
|
|
382
|
+
```
|
|
383
|
+
|
|
384
|
+
### Restart VS Code
|
|
385
|
+
|
|
386
|
+
Reload the window: `Cmd/Ctrl + Shift + P` → "Developer: Reload Window"
|
|
387
|
+
|
|
388
|
+
### Verify it's working
|
|
389
|
+
|
|
390
|
+
Open your AI assistant in VS Code and ask:
|
|
391
|
+
```
|
|
392
|
+
Can you search the Ignis docs for "dependency injection"?
|
|
393
|
+
```
|
|
394
|
+
|
|
395
|
+
The assistant should use the MCP tools to access and return documentation.
|
|
396
|
+
|
|
397
|
+
## Cursor Setup
|
|
398
|
+
|
|
399
|
+
### Prerequisites
|
|
400
|
+
- Install the MCP extension from Cursor's extension marketplace
|
|
401
|
+
|
|
402
|
+
### Configuration
|
|
403
|
+
|
|
404
|
+
**Config File:** Check Cursor's MCP settings (usually `.cursor/mcp_config.json`)
|
|
405
|
+
|
|
406
|
+
```json
|
|
407
|
+
{
|
|
408
|
+
"mcpServers": {
|
|
409
|
+
"ignis-docs": {
|
|
410
|
+
"command": "ignis-docs-mcp"
|
|
411
|
+
}
|
|
412
|
+
}
|
|
413
|
+
}
|
|
414
|
+
```
|
|
415
|
+
|
|
416
|
+
### Restart Cursor
|
|
417
|
+
|
|
418
|
+
## Windsurf Setup
|
|
419
|
+
|
|
420
|
+
### Prerequisites
|
|
421
|
+
- Download and install [Windsurf](https://codeium.com/windsurf) by Codeium
|
|
422
|
+
|
|
423
|
+
### Configuration
|
|
424
|
+
|
|
425
|
+
**Config File:**
|
|
426
|
+
- **macOS:** `~/Library/Application Support/Windsurf/mcp_config.json`
|
|
427
|
+
- **Windows:** `%APPDATA%\Windsurf\mcp_config.json`
|
|
428
|
+
- **Linux:** `~/.config/Windsurf/mcp_config.json`
|
|
429
|
+
|
|
430
|
+
```json
|
|
431
|
+
{
|
|
432
|
+
"mcpServers": {
|
|
433
|
+
"ignis-docs": {
|
|
434
|
+
"command": "ignis-docs-mcp"
|
|
435
|
+
}
|
|
436
|
+
}
|
|
437
|
+
}
|
|
438
|
+
```
|
|
439
|
+
|
|
440
|
+
**If using npx:**
|
|
441
|
+
```json
|
|
442
|
+
{
|
|
443
|
+
"mcpServers": {
|
|
444
|
+
"ignis-docs": {
|
|
445
|
+
"command": "npx",
|
|
446
|
+
"args": ["-y", "@venizia/ignis-docs"]
|
|
447
|
+
}
|
|
448
|
+
}
|
|
449
|
+
}
|
|
450
|
+
```
|
|
451
|
+
|
|
452
|
+
### Restart Windsurf
|
|
453
|
+
|
|
454
|
+
## JetBrains Setup
|
|
455
|
+
|
|
456
|
+
### Prerequisites
|
|
457
|
+
- IntelliJ IDEA, PyCharm, WebStorm, or any JetBrains IDE with AI Assistant plugin
|
|
458
|
+
- Install the [MCP Support Plugin](https://plugins.jetbrains.com/plugin/mcp-support) (check JetBrains marketplace)
|
|
459
|
+
|
|
460
|
+
### Configuration
|
|
461
|
+
|
|
462
|
+
**Config File Location:**
|
|
463
|
+
- **macOS:** `~/Library/Application Support/JetBrains/<IDE>/mcp_config.json`
|
|
464
|
+
- **Windows:** `%APPDATA%\JetBrains\<IDE>\mcp_config.json`
|
|
465
|
+
- **Linux:** `~/.config/JetBrains/<IDE>/mcp_config.json`
|
|
466
|
+
|
|
467
|
+
Replace `<IDE>` with your IDE name (e.g., `IntelliJIdea2024.1`, `PyCharm2024.1`).
|
|
468
|
+
|
|
469
|
+
```json
|
|
470
|
+
{
|
|
471
|
+
"mcpServers": {
|
|
472
|
+
"ignis-docs": {
|
|
473
|
+
"command": "ignis-docs-mcp"
|
|
474
|
+
}
|
|
475
|
+
}
|
|
476
|
+
}
|
|
477
|
+
```
|
|
478
|
+
|
|
479
|
+
**If using npx:**
|
|
480
|
+
```json
|
|
481
|
+
{
|
|
482
|
+
"mcpServers": {
|
|
483
|
+
"ignis-docs": {
|
|
484
|
+
"command": "npx",
|
|
485
|
+
"args": ["-y", "@venizia/ignis-docs"]
|
|
486
|
+
}
|
|
487
|
+
}
|
|
488
|
+
}
|
|
489
|
+
```
|
|
490
|
+
|
|
491
|
+
### Restart Your IDE
|
|
492
|
+
|
|
493
|
+
## Usage Examples
|
|
494
|
+
|
|
495
|
+
Once configured, you can ask your AI assistant:
|
|
496
|
+
|
|
497
|
+
### Example 1: Search Documentation
|
|
498
|
+
```
|
|
499
|
+
You: "How do I set up dependency injection in Ignis?"
|
|
500
|
+
AI: [Uses searchDocs tool, finds relevant pages]
|
|
501
|
+
AI: "Based on the Ignis documentation..."
|
|
502
|
+
```
|
|
503
|
+
|
|
504
|
+
### Example 2: Get Specific Guide
|
|
505
|
+
```
|
|
506
|
+
You: "Show me the full Quickstart guide"
|
|
507
|
+
AI: [Uses listDocs to find ID, then getDocContent]
|
|
508
|
+
AI: "Here's the complete Quickstart guide..."
|
|
509
|
+
```
|
|
510
|
+
|
|
511
|
+
### Example 3: Browse by Category
|
|
512
|
+
```
|
|
513
|
+
You: "What documentation is available for helpers?"
|
|
514
|
+
AI: [Uses listCategories, then listDocs with category filter]
|
|
515
|
+
AI: "The Helpers category contains: Redis, Logger, Queue..."
|
|
516
|
+
```
|
|
517
|
+
|
|
518
|
+
---
|
|
519
|
+
|
|
520
|
+
## Local Development Setup
|
|
521
|
+
|
|
522
|
+
For contributors or those developing Ignis itself:
|
|
523
|
+
|
|
524
|
+
### 1. Clone the Ignis repository
|
|
525
|
+
|
|
526
|
+
```bash
|
|
527
|
+
git clone https://github.com/venizia-ai/ignis.git
|
|
528
|
+
cd ignis
|
|
529
|
+
```
|
|
530
|
+
|
|
531
|
+
### 2. Install dependencies
|
|
532
|
+
|
|
533
|
+
```bash
|
|
534
|
+
bun install
|
|
535
|
+
```
|
|
536
|
+
|
|
537
|
+
### 3. Run the MCP server in dev mode
|
|
538
|
+
|
|
539
|
+
```bash
|
|
540
|
+
bun run docs:mcp:dev
|
|
541
|
+
```
|
|
542
|
+
|
|
543
|
+
### 4. Configure your AI tool
|
|
544
|
+
|
|
545
|
+
Use absolute paths in your config:
|
|
546
|
+
|
|
547
|
+
**macOS/Linux:**
|
|
548
|
+
```json
|
|
549
|
+
{
|
|
550
|
+
"mcpServers": {
|
|
551
|
+
"ignis-docs-dev": {
|
|
552
|
+
"command": "bun",
|
|
553
|
+
"args": [
|
|
554
|
+
"run",
|
|
555
|
+
"/absolute/path/to/ignis/packages/docs/mcp-server/index.ts"
|
|
556
|
+
]
|
|
557
|
+
}
|
|
558
|
+
}
|
|
559
|
+
}
|
|
560
|
+
```
|
|
561
|
+
|
|
562
|
+
**Windows:**
|
|
563
|
+
```json
|
|
564
|
+
{
|
|
565
|
+
"mcpServers": {
|
|
566
|
+
"ignis-docs-dev": {
|
|
567
|
+
"command": "bun",
|
|
568
|
+
"args": [
|
|
569
|
+
"run",
|
|
570
|
+
"C:\\absolute\\path\\to\\ignis\\packages\\docs\\mcp-server\\index.ts"
|
|
571
|
+
]
|
|
572
|
+
}
|
|
573
|
+
}
|
|
574
|
+
}
|
|
575
|
+
```
|
|
576
|
+
|
|
577
|
+
---
|
|
578
|
+
|
|
579
|
+
## Comprehensive Troubleshooting Guide
|
|
580
|
+
|
|
581
|
+
### Testing Your Setup (Start Here!)
|
|
582
|
+
|
|
583
|
+
Before troubleshooting, run these quick tests:
|
|
584
|
+
|
|
585
|
+
**✅ Test 1: MCP server runs**
|
|
586
|
+
```bash
|
|
587
|
+
npx @venizia/ignis-docs
|
|
588
|
+
# Expected: "MCP Server listening on stdio..."
|
|
589
|
+
# Press Ctrl+C to stop
|
|
590
|
+
```
|
|
591
|
+
|
|
592
|
+
**✅ Test 2: Config file exists and is valid JSON**
|
|
593
|
+
```bash
|
|
594
|
+
# Claude Code:
|
|
595
|
+
cat ~/.config/claude-code/config.json | python -m json.tool
|
|
596
|
+
```
|
|
597
|
+
|
|
598
|
+
**✅ Test 3: AI tool recognizes MCP server**
|
|
599
|
+
- Restart your AI tool COMPLETELY (quit and reopen)
|
|
600
|
+
- Ask: `Can you search the Ignis docs for "controller"?`
|
|
601
|
+
- Look for: `[Using tool: searchDocs]`
|
|
602
|
+
|
|
603
|
+
---
|
|
604
|
+
|
|
605
|
+
### Common Issues and Solutions
|
|
606
|
+
|
|
607
|
+
#### ❌ Issue #1: "Command not found: ignis-docs-mcp"
|
|
608
|
+
|
|
609
|
+
**When it happens:** Starting AI tool or running `ignis-docs-mcp` manually
|
|
610
|
+
|
|
611
|
+
**Why:** Global npm package not in your system PATH
|
|
612
|
+
|
|
613
|
+
**Solutions (try in order):**
|
|
614
|
+
|
|
615
|
+
1. **Use npx instead** (recommended):
|
|
616
|
+
```json
|
|
617
|
+
{
|
|
618
|
+
"mcpServers": {
|
|
619
|
+
"ignis-docs": {
|
|
620
|
+
"command": "npx",
|
|
621
|
+
"args": ["-y", "@venizia/ignis-docs"]
|
|
622
|
+
}
|
|
623
|
+
}
|
|
624
|
+
}
|
|
625
|
+
```
|
|
626
|
+
|
|
627
|
+
2. **Check if installed:**
|
|
628
|
+
```bash
|
|
629
|
+
npm list -g @venizia/ignis-docs
|
|
630
|
+
# Should show: @venizia/ignis-docs@x.x.x
|
|
631
|
+
```
|
|
632
|
+
|
|
633
|
+
3. **Find executable location:**
|
|
634
|
+
```bash
|
|
635
|
+
# macOS/Linux:
|
|
636
|
+
which ignis-docs-mcp
|
|
637
|
+
# Windows:
|
|
638
|
+
where ignis-docs-mcp
|
|
639
|
+
```
|
|
640
|
+
|
|
641
|
+
4. **Reinstall:**
|
|
642
|
+
```bash
|
|
643
|
+
npm uninstall -g @venizia/ignis-docs
|
|
644
|
+
npm install -g @venizia/ignis-docs
|
|
645
|
+
```
|
|
646
|
+
|
|
647
|
+
---
|
|
648
|
+
|
|
649
|
+
#### ❌ Issue #2: AI assistant doesn't use MCP tools
|
|
650
|
+
|
|
651
|
+
**When it happens:** AI responds normally but never uses `searchDocs` or other tools
|
|
652
|
+
|
|
653
|
+
**Diagnosis:**
|
|
654
|
+
|
|
655
|
+
1. **Wrong config file location**
|
|
656
|
+
```bash
|
|
657
|
+
# Verify you edited the right file:
|
|
658
|
+
# Claude Code:
|
|
659
|
+
ls -la ~/.config/claude-code/config.json
|
|
660
|
+
```
|
|
661
|
+
|
|
662
|
+
2. **Invalid JSON syntax**
|
|
663
|
+
```bash
|
|
664
|
+
# Test JSON validity:
|
|
665
|
+
cat ~/.config/claude-code/config.json | python -m json.tool
|
|
666
|
+
# If error: Fix the JSON syntax
|
|
667
|
+
```
|
|
668
|
+
|
|
669
|
+
**Common JSON mistakes:**
|
|
670
|
+
```json
|
|
671
|
+
// ❌ WRONG: Missing comma
|
|
672
|
+
{
|
|
673
|
+
"mcpServers": {
|
|
674
|
+
"ignis-docs": {
|
|
675
|
+
"command": "npx" // Missing comma!
|
|
676
|
+
"args": ["-y", "@venizia/ignis-docs"]
|
|
677
|
+
}
|
|
678
|
+
}
|
|
679
|
+
}
|
|
680
|
+
|
|
681
|
+
// ✅ CORRECT:
|
|
682
|
+
{
|
|
683
|
+
"mcpServers": {
|
|
684
|
+
"ignis-docs": {
|
|
685
|
+
"command": "npx",
|
|
686
|
+
"args": ["-y", "@venizia/ignis-docs"]
|
|
687
|
+
}
|
|
688
|
+
}
|
|
689
|
+
}
|
|
690
|
+
```
|
|
691
|
+
|
|
692
|
+
3. **AI tool not restarted properly**
|
|
693
|
+
- **Claude Code:** Close terminal, open new one
|
|
694
|
+
- **VS Code:** Cmd/Ctrl+Shift+P → "Developer: Reload Window"
|
|
695
|
+
|
|
696
|
+
4. **MCP server doesn't start**
|
|
697
|
+
```bash
|
|
698
|
+
# Test manually:
|
|
699
|
+
npx @venizia/ignis-docs
|
|
700
|
+
# Should NOT error. Press Ctrl+C to stop.
|
|
701
|
+
```
|
|
702
|
+
|
|
703
|
+
---
|
|
704
|
+
|
|
705
|
+
#### ❌ Issue #3: "Module not found" errors
|
|
706
|
+
|
|
707
|
+
**When it happens:** MCP server starts but crashes immediately
|
|
708
|
+
|
|
709
|
+
**Solutions:**
|
|
710
|
+
|
|
711
|
+
1. **Update package:**
|
|
712
|
+
```bash
|
|
713
|
+
npm update -g @venizia/ignis-docs
|
|
714
|
+
```
|
|
715
|
+
|
|
716
|
+
2. **Clear cache and reinstall:**
|
|
717
|
+
```bash
|
|
718
|
+
npm cache clean --force
|
|
719
|
+
npm uninstall -g @venizia/ignis-docs
|
|
720
|
+
npm install -g @venizia/ignis-docs
|
|
721
|
+
```
|
|
722
|
+
|
|
723
|
+
3. **Check Node.js version:**
|
|
724
|
+
```bash
|
|
725
|
+
node --version
|
|
726
|
+
# Must be v18.0.0 or higher
|
|
727
|
+
```
|
|
728
|
+
|
|
729
|
+
4. **Try Bun instead:**
|
|
730
|
+
```bash
|
|
731
|
+
bunx @venizia/ignis-docs
|
|
732
|
+
```
|
|
733
|
+
|
|
734
|
+
---
|
|
735
|
+
|
|
736
|
+
#### ❌ Issue #4: First search takes 10+ seconds
|
|
737
|
+
|
|
738
|
+
**When it happens:** First query is slow, subsequent queries are fast
|
|
739
|
+
|
|
740
|
+
**This is NORMAL!** Here's why:
|
|
741
|
+
- **First search:** Loads all docs into memory (~3-5 seconds)
|
|
742
|
+
- **Later searches:** Uses cache (~0.5 seconds)
|
|
743
|
+
|
|
744
|
+
**Not an error - just one-time startup cost.**
|
|
745
|
+
|
|
746
|
+
---
|
|
747
|
+
|
|
748
|
+
#### ❌ Issue #5: Config file doesn't exist
|
|
749
|
+
|
|
750
|
+
**When it happens:** `cat ~/.config/claude-code/config.json` says "No such file"
|
|
751
|
+
|
|
752
|
+
**Solution:** Create it manually
|
|
753
|
+
|
|
754
|
+
```bash
|
|
755
|
+
# Claude Code:
|
|
756
|
+
mkdir -p ~/.config/claude-code
|
|
757
|
+
cat > ~/.config/claude-code/config.json <<'EOF'
|
|
758
|
+
{
|
|
759
|
+
"mcpServers": {
|
|
760
|
+
"ignis-docs": {
|
|
761
|
+
"command": "npx",
|
|
762
|
+
"args": ["-y", "@venizia/ignis-docs"]
|
|
763
|
+
}
|
|
764
|
+
}
|
|
765
|
+
}
|
|
766
|
+
EOF
|
|
767
|
+
```
|
|
768
|
+
|
|
769
|
+
---
|
|
770
|
+
|
|
771
|
+
### 🐛 Advanced Troubleshooting
|
|
772
|
+
|
|
773
|
+
If none of the above worked:
|
|
774
|
+
|
|
775
|
+
**1. Enable debug mode:**
|
|
776
|
+
```bash
|
|
777
|
+
DEBUG=1 npx @venizia/ignis-docs
|
|
778
|
+
```
|
|
779
|
+
|
|
780
|
+
**2. Check AI tool logs:**
|
|
781
|
+
- **Claude Code:** Run with `claude --debug`
|
|
782
|
+
|
|
783
|
+
**3. Test with minimal config:**
|
|
784
|
+
```json
|
|
785
|
+
{
|
|
786
|
+
"mcpServers": {
|
|
787
|
+
"test-echo": {
|
|
788
|
+
"command": "echo",
|
|
789
|
+
"args": ["Hello from MCP"]
|
|
790
|
+
}
|
|
791
|
+
}
|
|
792
|
+
}
|
|
793
|
+
```
|
|
794
|
+
If this works, the issue is specific to `@venizia/ignis-docs`.
|
|
795
|
+
|
|
796
|
+
**4. Report the bug:**
|
|
797
|
+
- GitHub: https://github.com/venizia-ai/ignis/issues
|
|
798
|
+
- Include:
|
|
799
|
+
- OS and version
|
|
800
|
+
- Node.js version: `node --version`
|
|
801
|
+
- Error messages
|
|
802
|
+
- Your config file (remove secrets)
|
|
803
|
+
|
|
804
|
+
---
|
|
805
|
+
|
|
806
|
+
## What's Next?
|
|
807
|
+
|
|
808
|
+
- **Learn the Tools:** Read the [Deep Dive Guide](/references/src-details/mcp-server) to understand all 5 available tools
|
|
809
|
+
- **Advanced Usage:** Explore how to chain tools for complex documentation queries
|
|
810
|
+
- **Contribute:** Help improve the docs or add new features
|
|
811
|
+
|
|
812
|
+
---
|
|
813
|
+
|
|
814
|
+
## FAQ
|
|
815
|
+
|
|
816
|
+
### Do I need to install anything besides the npm package?
|
|
817
|
+
|
|
818
|
+
No. The package includes everything needed. Just configure your AI tool.
|
|
819
|
+
|
|
820
|
+
### Does this work offline?
|
|
821
|
+
|
|
822
|
+
Yes, once installed. The documentation is bundled with the package.
|
|
823
|
+
|
|
824
|
+
### How often is the documentation updated?
|
|
825
|
+
|
|
826
|
+
When you update the package (`npm update -g @venizia/ignis-docs`), you get the latest docs.
|
|
827
|
+
|
|
828
|
+
### Can I use multiple MCP servers?
|
|
829
|
+
|
|
830
|
+
Yes! Add more servers to the `mcpServers` object in your config file.
|
|
831
|
+
|
|
832
|
+
### What's the difference between the tools?
|
|
833
|
+
|
|
834
|
+
| Tool | Use When |
|
|
835
|
+
|------|----------|
|
|
836
|
+
| `searchDocs` | You know a keyword but not the page |
|
|
837
|
+
| `getDocContent` | You know the exact page you need |
|
|
838
|
+
| `listDocs` | You want to browse available docs |
|
|
839
|
+
| `listCategories` | You want to explore by topic |
|
|
840
|
+
| `getDocMetadata` | You need doc stats (length, last updated) |
|