Skip to content

Commit b1518f1

Browse files
xplusplusaiclaude
andcommitted
Release: v2.0.8 - Enhanced README with npm/npx installation options
- Added comprehensive installation section with 3 options: - Option A: npx (recommended - always latest, no installation) - Option B: Global npm install (for version control) - Option C: Manual GitHub download (for developers) - Added detailed troubleshooting section - Updated "What's New" to reflect v2.0.7+ improvements - Improved configuration examples for all platforms - Enhanced guidance for Windows, macOS, and Linux users - Single README works for both npm and GitHub - Better user experience with clear benefits for each method 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
1 parent 2fafda3 commit b1518f1

File tree

4 files changed

+220
-42
lines changed

4 files changed

+220
-42
lines changed

README.md

Lines changed: 216 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -55,29 +55,27 @@ Ensure you have **Node.js** installed:
5555
- Download from: https://nodejs.org/
5656
- Minimum version: Node.js 18+
5757

58-
### 2. Download & Setup
59-
60-
1. Download the latest release and extract it anywhere on your system
61-
2. The package includes pre-compiled server files
62-
3. Run `npm install` in the extracted folder to install dependencies
63-
64-
### 3. Get API Key
58+
### 2. Get API Key
6559

6660
Get your API key from: **https://www.xplusplus.ai/**
6761

6862
Visit our website to view available plans and pricing.
6963

70-
### 4. Configure
64+
### 3. Installation
65+
66+
Choose the installation method that works best for you:
7167

72-
Update your MCP client configuration (replace paths with your actual paths):
68+
#### Option A: Use with npx (Recommended - Always Latest Version)
69+
70+
No installation needed! Your MCP client will automatically fetch the latest version when started.
7371

7472
**Cursor IDE** (`~/.cursor/mcp.json` or `%USERPROFILE%\.cursor\mcp.json`):
7573
```json
7674
{
7775
"mcpServers": {
7876
"fo-semantic-mcp": {
79-
"command": "node",
80-
"args": ["C:\\path\\to\\fo-semantic-mcp\\dist\\server.js"],
77+
"command": "npx",
78+
"args": ["-y", "fo-semantic-mcp"],
8179
"env": {
8280
"FOINDEX_API_KEY": "your_api_key_here",
8381
"FO_LOCAL_ASSETS_PATH": "C:\\Users\\YourName\\AppData\\Local\\Microsoft\\Dynamics365\\10.0.xxxx\\PackagesLocalDirectory"
@@ -88,12 +86,90 @@ Update your MCP client configuration (replace paths with your actual paths):
8886
```
8987

9088
**Claude Desktop** (`~/AppData/Roaming/Claude/claude_desktop_config.json` on Windows):
89+
```json
90+
{
91+
"mcpServers": {
92+
"fo-semantic-mcp": {
93+
"command": "npx",
94+
"args": ["-y", "fo-semantic-mcp"],
95+
"env": {
96+
"FOINDEX_API_KEY": "your_api_key_here",
97+
"FO_LOCAL_ASSETS_PATH": "C:\\Users\\YourName\\AppData\\Local\\Microsoft\\Dynamics365\\10.0.xxxx\\PackagesLocalDirectory"
98+
}
99+
}
100+
}
101+
}
102+
```
103+
104+
**VS Code** (similar to Cursor IDE configuration above)
105+
106+
**Benefits of npx:**
107+
- ✅ No installation required
108+
- ✅ Always uses latest version automatically
109+
- ✅ No manual updates needed
110+
- ✅ Works on Windows, macOS, and Linux
111+
112+
**macOS/Linux users:** Use forward slashes in paths:
113+
```json
114+
{
115+
"env": {
116+
"FOINDEX_API_KEY": "your_api_key_here",
117+
"FO_LOCAL_ASSETS_PATH": "/Users/yourname/.local/Microsoft/Dynamics365/10.0.xxxx/PackagesLocalDirectory"
118+
}
119+
}
120+
```
121+
122+
#### Option B: Global Installation
123+
124+
Install the package globally on your system:
125+
126+
```bash
127+
npm install -g fo-semantic-mcp
128+
```
129+
130+
Then configure your MCP client:
131+
132+
**Cursor IDE / Claude Desktop / VS Code**:
133+
```json
134+
{
135+
"mcpServers": {
136+
"fo-semantic-mcp": {
137+
"command": "fo-semantic-mcp",
138+
"env": {
139+
"FOINDEX_API_KEY": "your_api_key_here",
140+
"FO_LOCAL_ASSETS_PATH": "C:\\Users\\YourName\\AppData\\Local\\Microsoft\\Dynamics365\\10.0.xxxx\\PackagesLocalDirectory"
141+
}
142+
}
143+
}
144+
}
145+
```
146+
147+
**When to use global installation:**
148+
- You want to pin to a specific version
149+
- You have limited internet connectivity
150+
- You prefer explicit version control
151+
152+
**To update:**
153+
```bash
154+
npm update -g fo-semantic-mcp
155+
```
156+
157+
#### Option C: Manual Installation from GitHub Release
158+
159+
Download and run from a local directory:
160+
161+
1. Download the [latest release](https://github.com/xplusplusai/fo-semantic-mcp/releases) from GitHub
162+
2. Extract to your preferred location (e.g., `C:\tools\fo-semantic-mcp`)
163+
3. Run `npm install` in the extracted folder
164+
165+
Then configure using the full path:
166+
91167
```json
92168
{
93169
"mcpServers": {
94170
"fo-semantic-mcp": {
95171
"command": "node",
96-
"args": ["C:\\path\\to\\fo-semantic-mcp\\dist\\server.js"],
172+
"args": ["C:\\tools\\fo-semantic-mcp\\dist\\server.js"],
97173
"env": {
98174
"FOINDEX_API_KEY": "your_api_key_here",
99175
"FO_LOCAL_ASSETS_PATH": "C:\\Users\\YourName\\AppData\\Local\\Microsoft\\Dynamics365\\10.0.xxxx\\PackagesLocalDirectory"
@@ -103,25 +179,34 @@ Update your MCP client configuration (replace paths with your actual paths):
103179
}
104180
```
105181

106-
**macOS/Linux** paths use forward slashes: `/Users/yourname/path/to/fo-semantic-mcp/dist/server.js`
182+
**macOS/Linux** paths use forward slashes: `/path/to/fo-semantic-mcp/dist/server.js`
183+
184+
**When to use manual installation:**
185+
- You want full control over the installation location
186+
- You're developing or customizing the server
187+
- Your environment restricts npm package execution
107188

108-
### 5. Restart Your AI Client
189+
### 4. Restart Your AI Client
109190

110-
Completely restart Cursor IDE or Claude Desktop to load the MCP server.
191+
Completely restart Cursor IDE, Claude Desktop, or VS Code to load the MCP server.
111192

112193
## 🔧 Configuration Options
113194

195+
### Environment Variables
196+
114197
| Variable | Description | Default | Required |
115198
|----------|-------------|---------|----------|
116199
| `FOINDEX_API_KEY` | Your API key from xplusplus.ai | - | ✅ Yes |
117200
| `FO_LOCAL_ASSETS_PATH` | Path to F&O PackagesLocalDirectory | - | Recommended |
118-
| `FO_SEARCH_DEFAULT_THRESHOLD` | Relevance filter (0-1) | `0.5` | No |
201+
| `FO_SEARCH_DEFAULT_THRESHOLD` | Relevance filter (0-1) | No threshold | No |
119202
| `FO_SEARCH_TIMEOUT_MS` | Request timeout (milliseconds) | `10000` | No |
120203
| `FO_SEARCH_DEFAULT_LIMIT` | Default result limit | `10` | No |
121204
| `FO_SEARCH_MAX_LIMIT` | Maximum result limit | `50` | No |
122205

123206
### Finding Your PackagesLocalDirectory
124207

208+
The `FO_LOCAL_ASSETS_PATH` enables reading actual F&O XML source files. This is **optional** but highly recommended for full analysis capabilities.
209+
125210
**Windows:**
126211
```
127212
C:\Users\[YourName]\AppData\Local\Microsoft\Dynamics365\[version]\PackagesLocalDirectory
@@ -132,6 +217,15 @@ C:\Users\[YourName]\AppData\Local\Microsoft\Dynamics365\[version]\PackagesLocalD
132217
Get-ChildItem "$env:LOCALAPPDATA\Microsoft\Dynamics365\" -Recurse -Filter "PackagesLocalDirectory" | Select-Object FullName
133218
```
134219

220+
**macOS/Linux:**
221+
Depends on your F&O development setup. Common locations:
222+
```
223+
~/.local/Microsoft/Dynamics365/[version]/PackagesLocalDirectory
224+
~/Library/Application Support/Microsoft/Dynamics365/[version]/PackagesLocalDirectory
225+
```
226+
227+
**Note:** If `FO_LOCAL_ASSETS_PATH` is not configured, the server will still work for semantic search but won't be able to read local XML files.
228+
135229
## 💡 Example Usage
136230

137231
### Basic Searches
@@ -153,14 +247,23 @@ You can filter by artifact type for more focused results:
153247
- Views
154248
- Queries
155249

250+
### Advanced Queries
251+
```
252+
"Find all tables related to inventory management"
253+
"Show me forms that use the CustTable datasource"
254+
"Search for classes that implement pricing logic"
255+
"Find data entities for financial reporting"
256+
```
257+
156258
### In Claude Desktop
157-
Use the `fo-development-assistant` prompt for guided F&O development workflows.
259+
Use the `fo-development-assistant` prompt for guided F&O development workflows. Simply type `/fo-development-assistant` to activate the structured workflow.
158260

159-
### In Cursor IDE
160-
Ask your AI assistant to search F&O artifacts, then guide it to:
261+
### In Cursor IDE & VS Code
262+
Ask your AI assistant to search F&O artifacts, then guide it through a workflow:
161263
1. Search standard D365 implementations
162-
2. Search your workspace for custom code
163-
3. Combine insights for context-aware solutions
264+
2. Read source files to understand patterns
265+
3. Search your workspace for existing customizations
266+
4. Combine insights for context-aware solutions
164267

165268
## 🎬 Live Demo
166269

@@ -177,38 +280,113 @@ Ask your AI assistant to search F&O artifacts, then guide it to:
177280

178281
👉 [**View the Complete Demo**](https://www.xplusplus.ai/mcp-demo.html)
179282

180-
## 📖 What's New in v2.0
283+
## 🔧 Troubleshooting
181284

182-
### Breaking Changes
183-
-**Simplified architecture** - Server instructions now provide concise tool documentation only
184-
-**Clean tool responses** - Returns data without workflow checklists
185-
-**Single prompt** - One clear `fo-development-assistant` prompt (was 2 confusing prompts)
186-
-**Removed obfuscation** - Standard TypeScript build for transparency
187-
-**Production-ready package** - Only essential runtime files included
285+
### Tools Not Loading
286+
287+
**Symptom:** MCP server appears in your client but tools don't show up
288+
289+
**Solutions:**
290+
1. Verify `FOINDEX_API_KEY` is set correctly (no quotes in JSON, no extra spaces)
291+
2. Completely restart your AI client (not just reload window)
292+
3. Check MCP server logs in your client's developer console
293+
4. Test with `npx fo-semantic-mcp` directly in terminal to verify installation
294+
295+
### Timeout Errors
296+
297+
**Symptom:** "Request timeout" or "Connection refused" errors
188298

189-
### Improvements
190-
-**Honest capabilities** - Clear about what works automatically vs manually
299+
**Solutions:**
300+
1. Verify internet connectivity to `https://search.xplusplus.ai`
301+
2. Increase timeout: `"FO_SEARCH_TIMEOUT_MS": "30000"` (30 seconds)
302+
3. Check if firewall/proxy is blocking the connection
303+
4. Try with a different network (corporate firewalls may block external APIs)
304+
305+
### Local File Reading Not Working
306+
307+
**Symptom:** Can search artifacts but can't read XML source files
308+
309+
**Solutions:**
310+
1. Verify `FO_LOCAL_ASSETS_PATH` points to correct directory
311+
2. Ensure the path exists and is accessible
312+
3. On Windows, use double backslashes: `"C:\\Users\\..."`
313+
4. Check file permissions for the PackagesLocalDirectory
314+
5. Restart your AI client after updating the path
315+
316+
### npx Command Fails
317+
318+
**Symptom:** "npx: command not found" or npm errors
319+
320+
**Solutions:**
321+
1. Ensure Node.js 18+ is installed: `node --version`
322+
2. Ensure npm is installed: `npm --version`
323+
3. Update npm: `npm install -g npm@latest`
324+
4. Try global installation method instead (Option B above)
325+
326+
### Version-Specific Issues
327+
328+
**To check your installed version:**
329+
```bash
330+
# For global installation
331+
npm list -g fo-semantic-mcp
332+
333+
# For npx (shows latest available)
334+
npm view fo-semantic-mcp version
335+
```
336+
337+
**To force specific version with npx:**
338+
```json
339+
{
340+
"command": "npx",
341+
"args": ["-y", "[email protected]"]
342+
}
343+
```
344+
345+
## 📖 What's New in v2.0.7
346+
347+
### Latest Fixes
348+
-**MCP STDIO protocol compliance** - Fixed initialization timeouts in Claude Desktop
349+
-**MCP registry publication** - Now discoverable in official MCP catalog at registry.modelcontextprotocol.io
350+
-**npm installation support** - Install via `npm install -g` or use directly with `npx`
351+
-**Character encoding fixes** - Clean display of prompts and responses
352+
-**Logging improvements** - All logs use STDERR for proper MCP protocol compliance
353+
354+
### Previous v2.0 Improvements
355+
-**Simplified architecture** - Concise tool documentation and clean responses
356+
-**Single prompt** - One clear `fo-development-assistant` prompt
357+
-**Standard TypeScript build** - Removed obfuscation for transparency
358+
-**Production-ready package** - Only essential runtime files included
191359
-**Better MCP alignment** - Follows proper MCP architecture patterns
192-
-**Simpler codebase** - Easier to understand and maintain
193-
-**Cleaner release** - No development artifacts or intermediate files
194360

195-
### Migration from v1.x
196-
No breaking API changes - just update your installation and restart your AI client.
361+
### Migration from Earlier Versions
362+
363+
**From v1.x:**
364+
- No breaking API changes
365+
- Update installation and restart your AI client
366+
- Configuration format is compatible
367+
368+
**From v2.0.0-2.0.6:**
369+
- Use npx method for easiest updates
370+
- Update configuration to use `npx` command (recommended)
371+
- Restart AI client to load new version
197372

198373
## 🆘 Support
199374

200-
- **Issues**: Report bugs and feature requests on GitHub
201-
- **Documentation**: See `docs/GETTING_STARTED.md` for detailed setup
202-
- **Enterprise**: Contact [email protected] for custom solutions
375+
- **Issues**: Report bugs and feature requests on [GitHub Issues](https://github.com/xplusplusai/fo-semantic-mcp/issues)
376+
- **Documentation**: See [Getting Started Guide](https://github.com/xplusplusai/fo-semantic-mcp/blob/main/docs/GETTING_STARTED.md)
377+
- **Enterprise**: Contact [email protected] for custom solutions and enterprise support
378+
- **Community**: Join discussions on GitHub
203379

204380
## 📄 License
205381

206-
This software is licensed for commercial use. See `LICENSE` file for details.
382+
This software is licensed for commercial use. See [LICENSE](https://github.com/xplusplusai/fo-semantic-mcp/blob/main/LICENSE) file for details.
207383

208384
## 🚀 About FO-Index
209385

210386
Built by the team behind [FO-Index](https://www.xplusplus.ai) - the comprehensive knowledge base for Microsoft Dynamics 365 Finance & Operations development.
211387

388+
**Our Mission:** Accelerate D365 F&O development by making Microsoft's vast standard artifact library searchable and understandable through AI.
389+
212390
---
213391

214392
**Ready to enhance your F&O development?** [Get your API key](https://www.xplusplus.ai) and start today! 🎯

dist/utils/config.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "fo-semantic-mcp",
3-
"version": "2.0.7",
3+
"version": "2.0.8",
44
"mcpName": "io.github.xplusplusai/fo-semantic-mcp",
55
"description": "Model Context Protocol server providing semantic search over Dynamics 365 F&O artifacts.",
66
"type": "module",

server.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,12 @@
33
"name": "io.github.xplusplusai/fo-semantic-mcp",
44
"title": "FO Semantic MCP",
55
"description": "Semantic search over 50,000+ Dynamics 365 F&O artifacts: tables, forms, classes, and more.",
6-
"version": "2.0.7",
6+
"version": "2.0.8",
77
"packages": [
88
{
99
"registryType": "npm",
1010
"identifier": "fo-semantic-mcp",
11-
"version": "2.0.7",
11+
"version": "2.0.8",
1212
"transport": {
1313
"type": "stdio"
1414
}

0 commit comments

Comments
 (0)