Skip to content

Commit 47125db

Browse files
xplusplusaiclaude
andcommitted
Release v2.0.0 - Major architectural cleanup
🎯 Major Changes: - Simplified to proper MCP architecture principles - Removed Golden Path auto-workflow (research proved it doesn't work in Cursor) - Clean tool responses return data only (no command checklists) - Single clear prompt: fo-development-assistant (was 2 confusing prompts) - Removed obfuscation (no IP to protect, transparency benefits users) - Production-ready package with only essential runtime files ✅ What's Included: - MCP Tool: search_FO_artifacts (semantic search over 50K+ D365 F&O artifacts) - MCP Prompt: fo-development-assistant (6-step workflow, Claude Desktop only) - Clean architecture: server instructions (1.8KB tool docs), prompts (workflows) - Honest documentation about capabilities and limitations 📦 Files: - dist/ - Production server files only - README.md - Updated with honest capabilities - CHANGELOG.md - Clean changelog starting v2.0 - package.json - Production dependencies only (v2.0.0) 🔧 Breaking Changes: - Server instructions reduced 93% (27KB → 1.8KB) - Tool description now factual (removed command injection attempts) - Tool responses return clean data (removed workflow checklists) - Removed obfuscation build process 🎓 Why These Changes: MCP architecture separates data provision (servers) from decision making (AI clients). Research proved AI clients filter commands in tool responses by security design (defense against tool poisoning attacks). Prompts are the correct construct for workflows (user-invoked, works in Claude Desktop). 🚀 Generated with Claude Code (https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
1 parent c711b98 commit 47125db

File tree

10 files changed

+349
-85
lines changed

10 files changed

+349
-85
lines changed

README.md

Lines changed: 102 additions & 62 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,22 @@
11
# FO Semantic MCP Server
22

3-
🚀 **The ultimate Model Context Protocol server for Microsoft Dynamics 365 Finance & Operations development**
3+
🚀 **Model Context Protocol server for Microsoft Dynamics 365 Finance & Operations development**
44

5-
**Enable true AI pair programming for F&O development!** This MCP server supercharges your AI coding assistant with deep F&O knowledge, enabling AI agents in Cursor IDE, VS Code, and Claude Desktop to automatically query 50,000+ F&O artifacts, analyze local source code, and find relevant examples for your current development task.
5+
Supercharge your AI coding assistant with deep F&O knowledge. This MCP server enables AI agents in Cursor IDE, Claude Desktop, and VS Code to search 50,000+ F&O artifacts, read local source code, and find relevant examples for your development tasks.
66

7-
🤖 **How it works:** When you're building F&O extensions, your AI assistant can now automatically:
8-
- Find similar implementations and patterns in existing F&O code
7+
🤖 **What it provides:** When building F&O extensions, your AI assistant can:
8+
- Search F&O artifacts using natural language queries
9+
- Find similar implementations and patterns in standard D365 code
910
- Read actual XML source files from your local F&O installation
10-
- Understand F&O architecture and suggest best practices
11-
- Accelerate extension development with relevant examples
11+
- Access rich metadata about tables, forms, classes, and more
1212

13-
Transform your F&O development workflow with AI-powered semantic search over 50,000+ artifacts. Find examples, understand patterns, and accelerate development with intelligent code discovery.
13+
## 📋 Features
1414

15-
## 📋 What You Get
16-
17-
**Golden Path Workflow** - AI follows proven 6-step methodology for context-aware F&O development
18-
**Custom Code Awareness** - AI searches YOUR workspace for existing extensions before generating code
1915
**Semantic Search** - Find F&O artifacts using natural language
2016
**50,000+ Artifacts** - Tables, Forms, Classes, EDT, Enums, Data Entities, Views, Queries
21-
**AI Summaries** - Understand artifact purpose without reading XML
17+
**AI Descriptions** - Understand artifact purpose without reading XML
2218
**Local File Access** - Read actual F&O XML files for complete analysis
19+
**Rich Metadata** - Business domains, modules, configuration keys, usage context
2320
**Multi-Platform** - Works on Windows, macOS, Linux with Node.js
2421
**MCP Compatible** - Works with Cursor IDE, Claude Desktop, VS Code
2522

@@ -30,34 +27,25 @@ Transform your F&O development workflow with AI-powered semantic search over 50,
3027
- **Architects** understanding system patterns
3128
- **Teams** accelerating development cycles
3229

30+
## 🔧 What's Included
3331

34-
## 🔥 How AI Uses This - The Golden Path
35-
36-
AI follows a proven 6-step workflow ensuring code that integrates with YOUR existing F&O extensions:
37-
38-
**Example: "Add custom field to SalesTable form"**
39-
40-
```
41-
Step 1: 🔍 Search Standard D365
42-
→ Finds SalesTable form in Microsoft's implementation
43-
44-
Step 2: 📖 Read Standard Implementation
45-
→ Understands Microsoft's XML structure and patterns
46-
47-
Step 3: 🔧 Search YOUR Custom Code
48-
→ Searches YOUR workspace for existing SalesTable extensions
49-
50-
Step 4: 📖 Read YOUR Customizations
51-
→ Learns your coding style and current implementation
32+
### MCP Tool: `search_FO_artifacts`
33+
Search Microsoft D365 F&O standard artifacts semantically. Returns artifact metadata including:
34+
- Artifact name, type, and module
35+
- AI-generated descriptions and usage context
36+
- Business domain classification
37+
- Local file paths (if configured)
5238

53-
Step 5: ✨ Generate Context-Aware Code
54-
→ Creates extension that works with YOUR existing code
39+
### MCP Prompt: `fo-development-assistant` (Claude Desktop only)
40+
A complete 6-step development workflow for F&O customizations:
41+
1. Search standard D365 artifacts
42+
2. Read standard implementations
43+
3. Search your workspace for custom code
44+
4. Read your customizations
45+
5. Generate context-aware solutions
46+
6. Present comprehensive analysis
5547

56-
Step 6: 💡 Present with Full Context
57-
→ Shows: Standard + Your extensions + Generated code
58-
```
59-
60-
**Result:** Code that integrates seamlessly with your existing customizations on first try - no conflicts, no rework.
48+
**Note:** The prompt workflow is user-invoked and works in Claude Desktop. In Cursor IDE, you can guide the AI through similar steps manually.
6149

6250
## ⚡ Quick Start
6351

@@ -70,7 +58,8 @@ Ensure you have **Node.js** installed:
7058
### 2. Download & Setup
7159

7260
1. Download the latest release and extract it anywhere on your system
73-
2. The package includes pre-compiled server files and dependencies
61+
2. The package includes pre-compiled server files
62+
3. Run `npm install` in the extracted folder to install dependencies
7463

7564
### 3. Get API Key
7665

@@ -80,70 +69,121 @@ Visit our website to view available plans and pricing.
8069

8170
### 4. Configure
8271

83-
Update your MCP client configuration (replace `C:\\Downloads\\` with your extraction path):
72+
Update your MCP client configuration (replace paths with your actual paths):
8473

85-
**Cursor IDE** (`~/.cursor/mcp.json`):
74+
**Cursor IDE** (`~/.cursor/mcp.json` or `%USERPROFILE%\.cursor\mcp.json`):
8675
```json
8776
{
8877
"mcpServers": {
8978
"fo-semantic-mcp": {
9079
"command": "node",
91-
"args": ["C:\\Downloads\\fo-semantic-mcp\\dist\\server.js"],
80+
"args": ["C:\\path\\to\\fo-semantic-mcp\\dist\\server.js"],
9281
"env": {
9382
"FOINDEX_API_KEY": "your_api_key_here",
94-
"FO_SEARCH_DEFAULT_THRESHOLD": "0.5",
95-
"FO_LOCAL_ASSETS_PATH": "C:\\Users\\[firstname.lastname]\\AppData\\Local\\Microsoft\\Dynamics365\\10.0.2263.74\\PackagesLocalDirectory"
83+
"FO_LOCAL_ASSETS_PATH": "C:\\Users\\YourName\\AppData\\Local\\Microsoft\\Dynamics365\\10.0.xxxx\\PackagesLocalDirectory"
9684
}
9785
}
9886
}
9987
}
10088
```
10189

102-
**Claude Desktop** (`~/AppData/Roaming/Claude/claude_desktop_config.json`):
90+
**Claude Desktop** (`~/AppData/Roaming/Claude/claude_desktop_config.json` on Windows):
10391
```json
10492
{
10593
"mcpServers": {
10694
"fo-semantic-mcp": {
10795
"command": "node",
108-
"args": ["C:\\Downloads\\fo-semantic-mcp\\dist\\server.js"],
96+
"args": ["C:\\path\\to\\fo-semantic-mcp\\dist\\server.js"],
10997
"env": {
11098
"FOINDEX_API_KEY": "your_api_key_here",
111-
"FO_LOCAL_ASSETS_PATH": "C:\\Users\\[firstname.lastname]\\AppData\\Local\\Microsoft\\Dynamics365\\10.0.2263.74\\PackagesLocalDirectory"
99+
"FO_LOCAL_ASSETS_PATH": "C:\\Users\\YourName\\AppData\\Local\\Microsoft\\Dynamics365\\10.0.xxxx\\PackagesLocalDirectory"
112100
}
113101
}
114102
}
115103
}
116104
```
117105

106+
**macOS/Linux** paths use forward slashes: `/Users/yourname/path/to/fo-semantic-mcp/dist/server.js`
107+
108+
### 5. Restart Your AI Client
109+
110+
Completely restart Cursor IDE or Claude Desktop to load the MCP server.
118111

119112
## 🔧 Configuration Options
120113

121-
| Variable | Description | Default | Example |
122-
|----------|-------------|---------|---------|
123-
| `FOINDEX_API_KEY` | **Required** - Your API key | - | `your_api_key_here` |
124-
| `FO_SEARCH_DEFAULT_THRESHOLD` | Relevance filter (0-1) | `0.5` | `0.5` |
125-
| `FO_LOCAL_ASSETS_PATH` | Path to F&O PackagesLocalDirectory | Optional | `C:\Users\[firstname.lastname]\AppData\Local\Microsoft\Dynamics365\10.0.2263.74\PackagesLocalDirectory` |
126-
| `FO_SEARCH_TIMEOUT_MS` | Request timeout | `10000` | `10000` |
127-
| `FO_SEARCH_DEFAULT_LIMIT` | Default result limit | `10` | `10` |
114+
| Variable | Description | Default | Required |
115+
|----------|-------------|---------|----------|
116+
| `FOINDEX_API_KEY` | Your API key from xplusplus.ai | - | ✅ Yes |
117+
| `FO_LOCAL_ASSETS_PATH` | Path to F&O PackagesLocalDirectory | - | Recommended |
118+
| `FO_SEARCH_DEFAULT_THRESHOLD` | Relevance filter (0-1) | `0.5` | No |
119+
| `FO_SEARCH_TIMEOUT_MS` | Request timeout (milliseconds) | `10000` | No |
120+
| `FO_SEARCH_DEFAULT_LIMIT` | Default result limit | `10` | No |
121+
| `FO_SEARCH_MAX_LIMIT` | Maximum result limit | `50` | No |
128122

129-
## 💡 Example Queries
123+
### Finding Your PackagesLocalDirectory
130124

125+
**Windows:**
131126
```
132-
"Find customer payment processing examples"
133-
"Show me sales order validation patterns"
134-
"Search for inventory transaction handling"
135-
"Find examples of data entity extensions"
136-
"Show purchase order approval workflows"
127+
C:\Users\[YourName]\AppData\Local\Microsoft\Dynamics365\[version]\PackagesLocalDirectory
137128
```
138129

130+
**PowerShell command to find it:**
131+
```powershell
132+
Get-ChildItem "$env:LOCALAPPDATA\Microsoft\Dynamics365\" -Recurse -Filter "PackagesLocalDirectory" | Select-Object FullName
133+
```
134+
135+
## 💡 Example Usage
139136

140-
## 📖 Documentation
137+
### Basic Searches
138+
```
139+
"Find customer tables in D365"
140+
"Show me sales order forms"
141+
"Search for pricing calculation classes"
142+
"Find inventory transaction data entities"
143+
```
141144

142-
- **Getting Started**: See `docs/GETTING_STARTED.md`
145+
### Artifact Type Filters
146+
You can filter by artifact type for more focused results:
147+
- Tables
148+
- Forms
149+
- Classes
150+
- EDT (Extended Data Types)
151+
- Enums
152+
- DataEntity
153+
- Views
154+
- Queries
155+
156+
### In Claude Desktop
157+
Use the `fo-development-assistant` prompt for guided F&O development workflows.
158+
159+
### In Cursor IDE
160+
Ask your AI assistant to search F&O artifacts, then guide it to:
161+
1. Search standard D365 implementations
162+
2. Search your workspace for custom code
163+
3. Combine insights for context-aware solutions
164+
165+
## 📖 What's New in v2.0
166+
167+
### Breaking Changes
168+
-**Simplified architecture** - Server instructions now provide concise tool documentation only
169+
-**Clean tool responses** - Returns data without workflow checklists
170+
-**Single prompt** - One clear `fo-development-assistant` prompt (was 2 confusing prompts)
171+
-**Removed obfuscation** - Standard TypeScript build for transparency
172+
-**Production-ready package** - Only essential runtime files included
173+
174+
### Improvements
175+
-**Honest capabilities** - Clear about what works automatically vs manually
176+
-**Better MCP alignment** - Follows proper MCP architecture patterns
177+
-**Simpler codebase** - Easier to understand and maintain
178+
-**Cleaner release** - No development artifacts or intermediate files
179+
180+
### Migration from v1.x
181+
No breaking API changes - just update your installation and restart your AI client.
143182

144183
## 🆘 Support
145184

146185
- **Issues**: Report bugs and feature requests on GitHub
186+
- **Documentation**: See `docs/GETTING_STARTED.md` for detailed setup
147187
- **Enterprise**: Contact contact@xplusplus.ai for custom solutions
148188

149189
## 📄 License
@@ -156,4 +196,4 @@ Built by the team behind [FO-Index](https://www.xplusplus.ai) - the comprehensiv
156196

157197
---
158198

159-
**Ready to supercharge your F&O development?** [Get your API key](https://www.xplusplus.ai) and start building better extensions today! 🎯
199+
**Ready to enhance your F&O development?** [Get your API key](https://www.xplusplus.ai) and start today! 🎯

dist/embeddedInstructions.js

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

dist/embeddedInstructions.js.map

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

0 commit comments

Comments
 (0)