bc-code-intelligence-mcp 1.5.7 → 1.5.9
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/LICENSE +20 -20
- package/README.md +165 -165
- package/dist/layers/embedded-layer.js +29 -29
- package/dist/layers/git-layer.d.ts +9 -0
- package/dist/layers/git-layer.d.ts.map +1 -1
- package/dist/layers/git-layer.js +18 -8
- package/dist/layers/git-layer.js.map +1 -1
- package/dist/layers/project-layer.js +33 -33
- package/dist/services/code-analysis-service.d.ts +22 -0
- package/dist/services/code-analysis-service.d.ts.map +1 -1
- package/dist/services/code-analysis-service.js +139 -3
- package/dist/services/code-analysis-service.js.map +1 -1
- package/dist/services/knowledge-service.d.ts +1 -1
- package/dist/services/knowledge-service.d.ts.map +1 -1
- package/dist/services/knowledge-service.js +71 -3
- package/dist/services/knowledge-service.js.map +1 -1
- package/dist/services/methodology-service.js +14 -14
- package/dist/services/multi-content-layer-service.d.ts +15 -0
- package/dist/services/multi-content-layer-service.d.ts.map +1 -1
- package/dist/services/multi-content-layer-service.js +62 -0
- package/dist/services/multi-content-layer-service.js.map +1 -1
- package/dist/streamlined-handlers.d.ts +0 -7
- package/dist/streamlined-handlers.d.ts.map +1 -1
- package/dist/streamlined-handlers.js +80 -60
- package/dist/streamlined-handlers.js.map +1 -1
- package/dist/tools/core-tools.d.ts.map +1 -1
- package/dist/tools/core-tools.js +5 -1
- package/dist/tools/core-tools.js.map +1 -1
- package/dist/tools/onboarding-tools.d.ts +8 -0
- package/dist/tools/onboarding-tools.d.ts.map +1 -1
- package/dist/tools/onboarding-tools.js +111 -1
- package/dist/tools/onboarding-tools.js.map +1 -1
- package/dist/tools/specialist-discovery-tools.d.ts.map +1 -1
- package/dist/tools/specialist-discovery-tools.js +6 -0
- package/dist/tools/specialist-discovery-tools.js.map +1 -1
- package/dist/tools/specialist-tools.d.ts.map +1 -1
- package/dist/tools/specialist-tools.js +6 -0
- package/dist/tools/specialist-tools.js.map +1 -1
- package/embedded-knowledge/.github/ISSUE_TEMPLATE/bug-report.md +23 -23
- package/embedded-knowledge/.github/ISSUE_TEMPLATE/content-improvement.md +23 -23
- package/embedded-knowledge/.github/ISSUE_TEMPLATE/knowledge-request.md +29 -29
- package/embedded-knowledge/AGENTS.md +177 -177
- package/embedded-knowledge/CONTRIBUTING.md +57 -57
- package/embedded-knowledge/LICENSE +20 -20
- package/embedded-knowledge/README.md +31 -31
- package/embedded-knowledge/domains/shared/al-file-naming-conventions.md +145 -145
- package/embedded-knowledge/methodologies/index.json +80 -80
- package/embedded-knowledge/methodologies/phases/analysis-full.md +207 -207
- package/embedded-knowledge/methodologies/phases/analysis-quick.md +43 -43
- package/embedded-knowledge/methodologies/phases/analysis.md +181 -181
- package/embedded-knowledge/methodologies/phases/execution-validation-full.md +173 -173
- package/embedded-knowledge/methodologies/phases/execution-validation-quick.md +30 -30
- package/embedded-knowledge/methodologies/phases/execution-validation.md +173 -173
- package/embedded-knowledge/methodologies/phases/performance-full.md +210 -210
- package/embedded-knowledge/methodologies/phases/performance-quick.md +31 -31
- package/embedded-knowledge/methodologies/phases/performance.md +210 -210
- package/embedded-knowledge/methodologies/phases/verification-full.md +161 -161
- package/embedded-knowledge/methodologies/phases/verification-quick.md +47 -47
- package/embedded-knowledge/methodologies/phases/verification.md +145 -145
- package/embedded-knowledge/methodologies/workflow-enforcement.md +141 -141
- package/embedded-knowledge/methodologies/workflows/code-review-workflow.md +98 -98
- package/package.json +81 -81
package/LICENSE
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
MIT License
|
|
2
|
-
|
|
3
|
-
Copyright (c) 2024 Business Central Knowledge Base
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
in the Software without restriction, including without limitation the rights
|
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
11
|
-
|
|
12
|
-
The above copyright notice and this permission notice shall be included in all
|
|
13
|
-
copies or substantial portions of the Software.
|
|
14
|
-
|
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2024 Business Central Knowledge Base
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
21
|
SOFTWARE.
|
package/README.md
CHANGED
|
@@ -1,165 +1,165 @@
|
|
|
1
|
-
# BC Code Intelligence MCP Server
|
|
2
|
-
|
|
3
|
-
[](https://vscode.dev/redirect/mcp/install?name=bc-code-intel&config=%7B%22type%22%3A%22stdio%22%2C%22command%22%3A%22npx%22%2C%22args%22%3A%5B%22bc-code-intelligence-mcp%22%5D%7D)
|
|
4
|
-
[](https://github.com/JeremyVyska/bc-code-intelligence-mcp/wiki/Installation-Guide)
|
|
5
|
-
|
|
6
|
-
**Get instant help from AI Business Central experts** right in your favorite AI tool. No more searching docs - just ask and get expert guidance tailored to your specific BC development challenges.
|
|
7
|
-
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
## 🚀 Quick Start
|
|
11
|
-
|
|
12
|
-
1. **Click the blue "Install with NPX" button above** (VS Code users)
|
|
13
|
-
2. **Switch to Agent Mode** in VS Code's Copilot Chat
|
|
14
|
-
3. **Just ask!** - Start with any prompt below
|
|
15
|
-
|
|
16
|
-
> **Other platforms?** See the [Installation Guide](https://github.com/JeremyVyska/bc-code-intelligence-mcp/wiki/Installation-Guide) for Claude Desktop, Cursor, and more.
|
|
17
|
-
|
|
18
|
-
---
|
|
19
|
-
|
|
20
|
-
## 🤝 New to AI-Assisted Development? Start with Parker
|
|
21
|
-
|
|
22
|
-
If you're not sure how to work with AI tools, or you're skeptical about letting AI touch your code—**that's exactly why Parker exists**.
|
|
23
|
-
|
|
24
|
-
Parker is a grizzled veteran who helps you work WITH AI safely:
|
|
25
|
-
- Creates **reviewable proposals** instead of making direct changes
|
|
26
|
-
- **Explains AI reasoning** so you understand what's happening and why
|
|
27
|
-
- **Coordinates other specialists** to validate suggestions before you commit
|
|
28
|
-
- Builds trust **gradually** through transparency and verification
|
|
29
|
-
|
|
30
|
-
**Just say:**
|
|
31
|
-
- "Parker, I'm new to AI development tools. Help me understand how this works."
|
|
32
|
-
- "Parker, I don't trust AI to write my code. What's a safe way to start?"
|
|
33
|
-
- "Parker, review what the AI just suggested before I accept it."
|
|
34
|
-
|
|
35
|
-
Once you're comfortable, you can work directly with any specialist—but Parker's always there when you want that extra layer of verification and explanation.
|
|
36
|
-
|
|
37
|
-
---
|
|
38
|
-
|
|
39
|
-
## 💬 Just Ask - Example Prompts
|
|
40
|
-
|
|
41
|
-
The BC Code Intelligence specialists are ready to help. Just type naturally - here are some examples:
|
|
42
|
-
|
|
43
|
-
### 🔍 Debugging & Performance (Dean)
|
|
44
|
-
- "Dean, help me debug this error: 'The record in table Customer already exists'"
|
|
45
|
-
- "I'm seeing slow performance when posting sales orders. Can Dean take a look?"
|
|
46
|
-
- "Ask Dean why my FlowField is always showing zero"
|
|
47
|
-
|
|
48
|
-
### 🏛️ Legacy Code & Upgrades (Logan)
|
|
49
|
-
- "Logan, I need to upgrade my extension from BC v24 to v27"
|
|
50
|
-
- "I inherited this old extension - can Logan help me understand what it does?"
|
|
51
|
-
- "Help me modernize this C/AL-style code to proper AL patterns"
|
|
52
|
-
|
|
53
|
-
### 🏗️ Architecture & Design (Alex)
|
|
54
|
-
- "Alex, review my extension's architecture before I submit to AppSource"
|
|
55
|
-
- "I need to design an integration with an external warehouse system"
|
|
56
|
-
- "What's the best way to structure a multi-company solution?"
|
|
57
|
-
|
|
58
|
-
### 💻 Coding & Implementation (Sam)
|
|
59
|
-
- "Sam, help me write a function to calculate weighted average cost"
|
|
60
|
-
- "I need to create a FactBox that shows related sales history"
|
|
61
|
-
- "Show me the best way to implement a posting routine"
|
|
62
|
-
|
|
63
|
-
### 🧪 Testing & Quality (Quinn)
|
|
64
|
-
- "Quinn, help me create test coverage for my posting codeunit"
|
|
65
|
-
- "What test scenarios should I include for this validation?"
|
|
66
|
-
- "Review my test codeunit for completeness"
|
|
67
|
-
|
|
68
|
-
### 📝 Code Review (Roger)
|
|
69
|
-
- "Roger, review this codeunit for best practices"
|
|
70
|
-
- "Check if my code follows BC naming conventions"
|
|
71
|
-
- "Are there any code smells in my Customer Card extension?"
|
|
72
|
-
|
|
73
|
-
### 🔒 Security (Seth)
|
|
74
|
-
- "Seth, review my permission sets for security issues"
|
|
75
|
-
- "How should I handle user permissions for this sensitive data?"
|
|
76
|
-
- "Check if my API is exposing too much information"
|
|
77
|
-
|
|
78
|
-
### 🌉 Integration & Events (Jordan)
|
|
79
|
-
- "Jordan, help me design an event-driven integration"
|
|
80
|
-
- "What's the best way to subscribe to posting events?"
|
|
81
|
-
- "How do I create a clean API for external systems?"
|
|
82
|
-
|
|
83
|
-
### ⚠️ Error Handling (Eva)
|
|
84
|
-
- "Eva, help me implement proper error handling for this process"
|
|
85
|
-
- "What's the best way to validate user input before posting?"
|
|
86
|
-
- "Review my Try/Catch implementation"
|
|
87
|
-
|
|
88
|
-
### 🎨 User Experience (Uma)
|
|
89
|
-
- "Uma, help me improve my page layout for better usability"
|
|
90
|
-
- "Can we switch from simple Error calls in this app to ErrorInfo with suggested actions?"
|
|
91
|
-
- "Review my action menu structure"
|
|
92
|
-
|
|
93
|
-
### 🏪 AppSource & ISV (Morgan)
|
|
94
|
-
- "Morgan, help me prepare my app for AppSource submission"
|
|
95
|
-
- "What are the common AppSource validation failures?"
|
|
96
|
-
- "Review my app's technical baseline for AppSource"
|
|
97
|
-
|
|
98
|
-
### 👩🏫 Learning & Mentoring (Maya)
|
|
99
|
-
- "Maya, explain how dimensions work in BC"
|
|
100
|
-
- "I'm new to AL - help me understand events and subscribers"
|
|
101
|
-
- "Walk me through how posting routines work"
|
|
102
|
-
|
|
103
|
-
### 📚 Documentation (Taylor)
|
|
104
|
-
- "Taylor, help me document this complex codeunit"
|
|
105
|
-
- "Generate XML documentation for my public procedures"
|
|
106
|
-
- "Review my app's README for completeness"
|
|
107
|
-
|
|
108
|
-
### 🤖 AI-Assisted Development (Casey)
|
|
109
|
-
- "Casey, help me use AI tools effectively in my BC development"
|
|
110
|
-
- "Based on this current project, what are some good instructions to help future agents understand working with this app immediately?"
|
|
111
|
-
|
|
112
|
-
---
|
|
113
|
-
|
|
114
|
-
## 👥 Meet Your BC Specialist Team
|
|
115
|
-
|
|
116
|
-
| Specialist | Expertise | Best For |
|
|
117
|
-
|------------|-----------|----------|
|
|
118
|
-
| **🤝 Parker** | AI Trust & Transparency | New to AI tools, safe collaboration, verification-first |
|
|
119
|
-
| **🏗️ Alex** | Architecture & Design | Solution design, extension structure, integration patterns |
|
|
120
|
-
| **💻 Sam** | Expert Coder | Writing AL code, implementation patterns, coding questions |
|
|
121
|
-
| **🔍 Dean** | Debugging & Performance | Errors, slow queries, troubleshooting |
|
|
122
|
-
| **⚠️ Eva** | Error Handling | Validation, Try/Catch, error messages |
|
|
123
|
-
| **🧪 Quinn** | Testing | Test codeunits, test scenarios, code coverage |
|
|
124
|
-
| **📝 Roger** | Code Review | Best practices, naming conventions, code quality |
|
|
125
|
-
| **🔒 Seth** | Security | Permissions, data protection, API security |
|
|
126
|
-
| **🌉 Jordan** | Integration | APIs, events, external connections |
|
|
127
|
-
| **🏛️ Logan** | Legacy & Upgrades | Version migrations, old code, modernization |
|
|
128
|
-
| **🎨 Uma** | User Experience | Page design, usability, UI patterns |
|
|
129
|
-
| **🏪 Morgan** | AppSource & ISV | Publishing, validation, business concerns |
|
|
130
|
-
| **👩🏫 Maya** | Mentoring | Learning concepts, explanations, training |
|
|
131
|
-
| **📚 Taylor** | Documentation | Code docs, READMEs, knowledge sharing |
|
|
132
|
-
| **🤖 Casey** | AI Development | Using AI tools, prompt engineering |
|
|
133
|
-
| **⚙️ Chris** | MCP Configuiration | Company/Project MCP knowledge layer help|
|
|
134
|
-
|
|
135
|
-
---
|
|
136
|
-
|
|
137
|
-
## 📚 Learn More
|
|
138
|
-
|
|
139
|
-
| Topic | Link |
|
|
140
|
-
|-------|------|
|
|
141
|
-
| **Full Installation Options** | [Installation Guide](https://github.com/JeremyVyska/bc-code-intelligence-mcp/wiki/Installation-Guide) |
|
|
142
|
-
| **Common Scenarios** | [Usage Patterns](https://github.com/JeremyVyska/bc-code-intelligence-mcp/wiki/Common-Scenarios) |
|
|
143
|
-
| **All MCP Tools** | [Tools Reference](https://github.com/JeremyVyska/bc-code-intelligence-mcp/wiki/MCP-Tools-Reference) |
|
|
144
|
-
| **Company Standards** | [Enterprise Configuration](https://github.com/JeremyVyska/bc-code-intelligence-mcp/wiki/Enterprise-Configuration) |
|
|
145
|
-
| **Structured Workflows** | [Methodology Framework](https://github.com/JeremyVyska/bc-code-intelligence-mcp/wiki/Methodology-Framework) |
|
|
146
|
-
| **Troubleshooting** | [Common Issues](https://github.com/JeremyVyska/bc-code-intelligence-mcp/wiki/Troubleshooting) |
|
|
147
|
-
|
|
148
|
-
---
|
|
149
|
-
|
|
150
|
-
## 💡 Tips
|
|
151
|
-
|
|
152
|
-
- **Just use first names** - "Ask Dean" works just as well as "Ask Dean Debug"
|
|
153
|
-
- **Be specific** - Include error messages, code snippets, or version numbers when relevant
|
|
154
|
-
- **Specialists collaborate** - They'll hand off to each other when needed
|
|
155
|
-
- **Context carries over** - Continue conversations naturally
|
|
156
|
-
|
|
157
|
-
---
|
|
158
|
-
|
|
159
|
-
## 🤝 Contributing
|
|
160
|
-
|
|
161
|
-
See the [Contributing Guide](https://github.com/JeremyVyska/bc-code-intelligence-mcp/wiki/Contributing-Guide) for how to contribute to this project.
|
|
162
|
-
|
|
163
|
-
## 📄 License
|
|
164
|
-
|
|
165
|
-
MIT License - see [LICENSE](LICENSE) for details.
|
|
1
|
+
# BC Code Intelligence MCP Server
|
|
2
|
+
|
|
3
|
+
[](https://vscode.dev/redirect/mcp/install?name=bc-code-intel&config=%7B%22type%22%3A%22stdio%22%2C%22command%22%3A%22npx%22%2C%22args%22%3A%5B%22bc-code-intelligence-mcp%22%5D%7D)
|
|
4
|
+
[](https://github.com/JeremyVyska/bc-code-intelligence-mcp/wiki/Installation-Guide)
|
|
5
|
+
|
|
6
|
+
**Get instant help from AI Business Central experts** right in your favorite AI tool. No more searching docs - just ask and get expert guidance tailored to your specific BC development challenges.
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## 🚀 Quick Start
|
|
11
|
+
|
|
12
|
+
1. **Click the blue "Install with NPX" button above** (VS Code users)
|
|
13
|
+
2. **Switch to Agent Mode** in VS Code's Copilot Chat
|
|
14
|
+
3. **Just ask!** - Start with any prompt below
|
|
15
|
+
|
|
16
|
+
> **Other platforms?** See the [Installation Guide](https://github.com/JeremyVyska/bc-code-intelligence-mcp/wiki/Installation-Guide) for Claude Desktop, Cursor, and more.
|
|
17
|
+
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
## 🤝 New to AI-Assisted Development? Start with Parker
|
|
21
|
+
|
|
22
|
+
If you're not sure how to work with AI tools, or you're skeptical about letting AI touch your code—**that's exactly why Parker exists**.
|
|
23
|
+
|
|
24
|
+
Parker is a grizzled veteran who helps you work WITH AI safely:
|
|
25
|
+
- Creates **reviewable proposals** instead of making direct changes
|
|
26
|
+
- **Explains AI reasoning** so you understand what's happening and why
|
|
27
|
+
- **Coordinates other specialists** to validate suggestions before you commit
|
|
28
|
+
- Builds trust **gradually** through transparency and verification
|
|
29
|
+
|
|
30
|
+
**Just say:**
|
|
31
|
+
- "Parker, I'm new to AI development tools. Help me understand how this works."
|
|
32
|
+
- "Parker, I don't trust AI to write my code. What's a safe way to start?"
|
|
33
|
+
- "Parker, review what the AI just suggested before I accept it."
|
|
34
|
+
|
|
35
|
+
Once you're comfortable, you can work directly with any specialist—but Parker's always there when you want that extra layer of verification and explanation.
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
## 💬 Just Ask - Example Prompts
|
|
40
|
+
|
|
41
|
+
The BC Code Intelligence specialists are ready to help. Just type naturally - here are some examples:
|
|
42
|
+
|
|
43
|
+
### 🔍 Debugging & Performance (Dean)
|
|
44
|
+
- "Dean, help me debug this error: 'The record in table Customer already exists'"
|
|
45
|
+
- "I'm seeing slow performance when posting sales orders. Can Dean take a look?"
|
|
46
|
+
- "Ask Dean why my FlowField is always showing zero"
|
|
47
|
+
|
|
48
|
+
### 🏛️ Legacy Code & Upgrades (Logan)
|
|
49
|
+
- "Logan, I need to upgrade my extension from BC v24 to v27"
|
|
50
|
+
- "I inherited this old extension - can Logan help me understand what it does?"
|
|
51
|
+
- "Help me modernize this C/AL-style code to proper AL patterns"
|
|
52
|
+
|
|
53
|
+
### 🏗️ Architecture & Design (Alex)
|
|
54
|
+
- "Alex, review my extension's architecture before I submit to AppSource"
|
|
55
|
+
- "I need to design an integration with an external warehouse system"
|
|
56
|
+
- "What's the best way to structure a multi-company solution?"
|
|
57
|
+
|
|
58
|
+
### 💻 Coding & Implementation (Sam)
|
|
59
|
+
- "Sam, help me write a function to calculate weighted average cost"
|
|
60
|
+
- "I need to create a FactBox that shows related sales history"
|
|
61
|
+
- "Show me the best way to implement a posting routine"
|
|
62
|
+
|
|
63
|
+
### 🧪 Testing & Quality (Quinn)
|
|
64
|
+
- "Quinn, help me create test coverage for my posting codeunit"
|
|
65
|
+
- "What test scenarios should I include for this validation?"
|
|
66
|
+
- "Review my test codeunit for completeness"
|
|
67
|
+
|
|
68
|
+
### 📝 Code Review (Roger)
|
|
69
|
+
- "Roger, review this codeunit for best practices"
|
|
70
|
+
- "Check if my code follows BC naming conventions"
|
|
71
|
+
- "Are there any code smells in my Customer Card extension?"
|
|
72
|
+
|
|
73
|
+
### 🔒 Security (Seth)
|
|
74
|
+
- "Seth, review my permission sets for security issues"
|
|
75
|
+
- "How should I handle user permissions for this sensitive data?"
|
|
76
|
+
- "Check if my API is exposing too much information"
|
|
77
|
+
|
|
78
|
+
### 🌉 Integration & Events (Jordan)
|
|
79
|
+
- "Jordan, help me design an event-driven integration"
|
|
80
|
+
- "What's the best way to subscribe to posting events?"
|
|
81
|
+
- "How do I create a clean API for external systems?"
|
|
82
|
+
|
|
83
|
+
### ⚠️ Error Handling (Eva)
|
|
84
|
+
- "Eva, help me implement proper error handling for this process"
|
|
85
|
+
- "What's the best way to validate user input before posting?"
|
|
86
|
+
- "Review my Try/Catch implementation"
|
|
87
|
+
|
|
88
|
+
### 🎨 User Experience (Uma)
|
|
89
|
+
- "Uma, help me improve my page layout for better usability"
|
|
90
|
+
- "Can we switch from simple Error calls in this app to ErrorInfo with suggested actions?"
|
|
91
|
+
- "Review my action menu structure"
|
|
92
|
+
|
|
93
|
+
### 🏪 AppSource & ISV (Morgan)
|
|
94
|
+
- "Morgan, help me prepare my app for AppSource submission"
|
|
95
|
+
- "What are the common AppSource validation failures?"
|
|
96
|
+
- "Review my app's technical baseline for AppSource"
|
|
97
|
+
|
|
98
|
+
### 👩🏫 Learning & Mentoring (Maya)
|
|
99
|
+
- "Maya, explain how dimensions work in BC"
|
|
100
|
+
- "I'm new to AL - help me understand events and subscribers"
|
|
101
|
+
- "Walk me through how posting routines work"
|
|
102
|
+
|
|
103
|
+
### 📚 Documentation (Taylor)
|
|
104
|
+
- "Taylor, help me document this complex codeunit"
|
|
105
|
+
- "Generate XML documentation for my public procedures"
|
|
106
|
+
- "Review my app's README for completeness"
|
|
107
|
+
|
|
108
|
+
### 🤖 AI-Assisted Development (Casey)
|
|
109
|
+
- "Casey, help me use AI tools effectively in my BC development"
|
|
110
|
+
- "Based on this current project, what are some good instructions to help future agents understand working with this app immediately?"
|
|
111
|
+
|
|
112
|
+
---
|
|
113
|
+
|
|
114
|
+
## 👥 Meet Your BC Specialist Team
|
|
115
|
+
|
|
116
|
+
| Specialist | Expertise | Best For |
|
|
117
|
+
|------------|-----------|----------|
|
|
118
|
+
| **🤝 Parker** | AI Trust & Transparency | New to AI tools, safe collaboration, verification-first |
|
|
119
|
+
| **🏗️ Alex** | Architecture & Design | Solution design, extension structure, integration patterns |
|
|
120
|
+
| **💻 Sam** | Expert Coder | Writing AL code, implementation patterns, coding questions |
|
|
121
|
+
| **🔍 Dean** | Debugging & Performance | Errors, slow queries, troubleshooting |
|
|
122
|
+
| **⚠️ Eva** | Error Handling | Validation, Try/Catch, error messages |
|
|
123
|
+
| **🧪 Quinn** | Testing | Test codeunits, test scenarios, code coverage |
|
|
124
|
+
| **📝 Roger** | Code Review | Best practices, naming conventions, code quality |
|
|
125
|
+
| **🔒 Seth** | Security | Permissions, data protection, API security |
|
|
126
|
+
| **🌉 Jordan** | Integration | APIs, events, external connections |
|
|
127
|
+
| **🏛️ Logan** | Legacy & Upgrades | Version migrations, old code, modernization |
|
|
128
|
+
| **🎨 Uma** | User Experience | Page design, usability, UI patterns |
|
|
129
|
+
| **🏪 Morgan** | AppSource & ISV | Publishing, validation, business concerns |
|
|
130
|
+
| **👩🏫 Maya** | Mentoring | Learning concepts, explanations, training |
|
|
131
|
+
| **📚 Taylor** | Documentation | Code docs, READMEs, knowledge sharing |
|
|
132
|
+
| **🤖 Casey** | AI Development | Using AI tools, prompt engineering |
|
|
133
|
+
| **⚙️ Chris** | MCP Configuiration | Company/Project MCP knowledge layer help|
|
|
134
|
+
|
|
135
|
+
---
|
|
136
|
+
|
|
137
|
+
## 📚 Learn More
|
|
138
|
+
|
|
139
|
+
| Topic | Link |
|
|
140
|
+
|-------|------|
|
|
141
|
+
| **Full Installation Options** | [Installation Guide](https://github.com/JeremyVyska/bc-code-intelligence-mcp/wiki/Installation-Guide) |
|
|
142
|
+
| **Common Scenarios** | [Usage Patterns](https://github.com/JeremyVyska/bc-code-intelligence-mcp/wiki/Common-Scenarios) |
|
|
143
|
+
| **All MCP Tools** | [Tools Reference](https://github.com/JeremyVyska/bc-code-intelligence-mcp/wiki/MCP-Tools-Reference) |
|
|
144
|
+
| **Company Standards** | [Enterprise Configuration](https://github.com/JeremyVyska/bc-code-intelligence-mcp/wiki/Enterprise-Configuration) |
|
|
145
|
+
| **Structured Workflows** | [Methodology Framework](https://github.com/JeremyVyska/bc-code-intelligence-mcp/wiki/Methodology-Framework) |
|
|
146
|
+
| **Troubleshooting** | [Common Issues](https://github.com/JeremyVyska/bc-code-intelligence-mcp/wiki/Troubleshooting) |
|
|
147
|
+
|
|
148
|
+
---
|
|
149
|
+
|
|
150
|
+
## 💡 Tips
|
|
151
|
+
|
|
152
|
+
- **Just use first names** - "Ask Dean" works just as well as "Ask Dean Debug"
|
|
153
|
+
- **Be specific** - Include error messages, code snippets, or version numbers when relevant
|
|
154
|
+
- **Specialists collaborate** - They'll hand off to each other when needed
|
|
155
|
+
- **Context carries over** - Continue conversations naturally
|
|
156
|
+
|
|
157
|
+
---
|
|
158
|
+
|
|
159
|
+
## 🤝 Contributing
|
|
160
|
+
|
|
161
|
+
See the [Contributing Guide](https://github.com/JeremyVyska/bc-code-intelligence-mcp/wiki/Contributing-Guide) for how to contribute to this project.
|
|
162
|
+
|
|
163
|
+
## 📄 License
|
|
164
|
+
|
|
165
|
+
MIT License - see [LICENSE](LICENSE) for details.
|
|
@@ -37,20 +37,20 @@ export class EmbeddedKnowledgeLayer extends BaseKnowledgeLayer {
|
|
|
37
37
|
console.error(`Initializing ${this.name} layer from ${this.embeddedPath}...`);
|
|
38
38
|
// Early validation: Check if embedded knowledge directory exists and has content
|
|
39
39
|
if (!existsSync(this.embeddedPath)) {
|
|
40
|
-
throw new Error(`
|
|
41
|
-
🚨 BC Code Intelligence MCP Server Setup Issue
|
|
42
|
-
|
|
43
|
-
PROBLEM: Embedded knowledge directory not found
|
|
44
|
-
PATH: ${this.embeddedPath}
|
|
45
|
-
|
|
46
|
-
LIKELY CAUSE: The git submodule 'embedded-knowledge' was not initialized when this package was built/installed.
|
|
47
|
-
|
|
48
|
-
SOLUTIONS:
|
|
49
|
-
📦 For NPM users: Update to the latest version with: npm update bc-code-intelligence-mcp
|
|
50
|
-
🔧 For developers: Run: git submodule init && git submodule update
|
|
51
|
-
🏢 For package maintainers: Ensure submodules are initialized before npm publish
|
|
52
|
-
|
|
53
|
-
The embedded-knowledge directory should contain BC expertise (domains/ or topics/, specialists/, methodologies/) required for the MCP server to function.
|
|
40
|
+
throw new Error(`
|
|
41
|
+
🚨 BC Code Intelligence MCP Server Setup Issue
|
|
42
|
+
|
|
43
|
+
PROBLEM: Embedded knowledge directory not found
|
|
44
|
+
PATH: ${this.embeddedPath}
|
|
45
|
+
|
|
46
|
+
LIKELY CAUSE: The git submodule 'embedded-knowledge' was not initialized when this package was built/installed.
|
|
47
|
+
|
|
48
|
+
SOLUTIONS:
|
|
49
|
+
📦 For NPM users: Update to the latest version with: npm update bc-code-intelligence-mcp
|
|
50
|
+
🔧 For developers: Run: git submodule init && git submodule update
|
|
51
|
+
🏢 For package maintainers: Ensure submodules are initialized before npm publish
|
|
52
|
+
|
|
53
|
+
The embedded-knowledge directory should contain BC expertise (domains/ or topics/, specialists/, methodologies/) required for the MCP server to function.
|
|
54
54
|
`.trim());
|
|
55
55
|
}
|
|
56
56
|
// Check if directory has the expected structure (domains/ or topics/ are both valid)
|
|
@@ -66,21 +66,21 @@ The embedded-knowledge directory should contain BC expertise (domains/ or topics
|
|
|
66
66
|
if (!hasMethodologies)
|
|
67
67
|
missingDirs.push('methodologies');
|
|
68
68
|
if (missingDirs.length > 0) {
|
|
69
|
-
throw new Error(`
|
|
70
|
-
🚨 BC Code Intelligence MCP Server Setup Issue
|
|
71
|
-
|
|
72
|
-
PROBLEM: Incomplete embedded knowledge structure
|
|
73
|
-
PATH: ${this.embeddedPath}
|
|
74
|
-
MISSING: ${missingDirs.join(', ')}
|
|
75
|
-
|
|
76
|
-
LIKELY CAUSE: The embedded-knowledge submodule is present but incomplete or corrupted.
|
|
77
|
-
|
|
78
|
-
SOLUTIONS:
|
|
79
|
-
📦 For NPM users: Update to the latest version with: npm update bc-code-intelligence-mcp
|
|
80
|
-
🔧 For developers: Run: git submodule update --remote --force
|
|
81
|
-
🏢 For package maintainers: Verify submodule content before npm publish
|
|
82
|
-
|
|
83
|
-
Expected structure: (domains/ or topics/), specialists/, methodologies/ directories with BC expertise content.
|
|
69
|
+
throw new Error(`
|
|
70
|
+
🚨 BC Code Intelligence MCP Server Setup Issue
|
|
71
|
+
|
|
72
|
+
PROBLEM: Incomplete embedded knowledge structure
|
|
73
|
+
PATH: ${this.embeddedPath}
|
|
74
|
+
MISSING: ${missingDirs.join(', ')}
|
|
75
|
+
|
|
76
|
+
LIKELY CAUSE: The embedded-knowledge submodule is present but incomplete or corrupted.
|
|
77
|
+
|
|
78
|
+
SOLUTIONS:
|
|
79
|
+
📦 For NPM users: Update to the latest version with: npm update bc-code-intelligence-mcp
|
|
80
|
+
🔧 For developers: Run: git submodule update --remote --force
|
|
81
|
+
🏢 For package maintainers: Verify submodule content before npm publish
|
|
82
|
+
|
|
83
|
+
Expected structure: (domains/ or topics/), specialists/, methodologies/ directories with BC expertise content.
|
|
84
84
|
`.trim());
|
|
85
85
|
}
|
|
86
86
|
// Load topics, specialists, and indexes in parallel
|
|
@@ -1,6 +1,15 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Git Knowledge Layer - Load knowledge from Git repositories
|
|
3
3
|
* Supports authentication, branch selection, and caching
|
|
4
|
+
*
|
|
5
|
+
* AUTHENTICATION STRATEGY:
|
|
6
|
+
* - TOKEN/BASIC: Credentials embedded directly in git URLs (https://token@github.com/...)
|
|
7
|
+
* - Avoids git credential helper issues that caused repeated auth prompts
|
|
8
|
+
* - Remote URL updated before each pull to ensure consistent authentication
|
|
9
|
+
* - SSH: Uses SSH keys via GIT_SSH_COMMAND environment variable
|
|
10
|
+
* - AZURE_CLI: Delegates to Git Credential Manager (no URL modification)
|
|
11
|
+
*
|
|
12
|
+
* See docs/GIT-AUTH-FIX.md for detailed explanation of authentication fix
|
|
4
13
|
*/
|
|
5
14
|
import { BaseKnowledgeLayer } from './base-layer.js';
|
|
6
15
|
import { AtomicTopic } from '../types/bc-knowledge.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"git-layer.d.ts","sourceRoot":"","sources":["../../src/layers/git-layer.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"git-layer.d.ts","sourceRoot":"","sources":["../../src/layers/git-layer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAQH,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAgC,MAAM,0BAA0B,CAAC;AAErF,OAAO,EACL,eAAe,EACf,oBAAoB,EACpB,iBAAiB,EAGlB,MAAM,mBAAmB,CAAC;AAE3B,qBAAa,iBAAkB,SAAQ,kBAAkB;IAQrD,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;IACtB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAT3B,OAAO,CAAC,GAAG,CAA0B;IACrC,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,WAAW,CAAC,CAAO;gBAGzB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EACC,SAAS,EAAE,oBAAoB,EAC/B,IAAI,CAAC,EAAE,iBAAiB,EACxB,QAAQ,GAAE,MAAsB;IAS7C,UAAU,IAAI,OAAO,CAAC,eAAe,CAAC;YA4D9B,oBAAoB;YAKpB,gBAAgB;YAgBhB,uBAAuB;YAsDvB,gBAAgB;IAuC9B,OAAO,CAAC,kBAAkB;IAmC1B;;OAEG;YACW,oBAAoB;IAYlC;;OAEG;YACW,wBAAwB;YAYxB,cAAc;YAmBd,iBAAiB;IAa/B;;OAEG;cACa,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;IAwB7C;;OAEG;cACa,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC;IAiClD;;OAEG;cACa,iBAAiB,IAAI,OAAO,CAAC,MAAM,CAAC;IAiBpD;;OAEG;YACW,cAAc;YAiDd,uBAAuB;IA0BrC,OAAO,CAAC,eAAe;YAQT,oBAAoB;YAYpB,iBAAiB;IAS/B,OAAO,CAAC,eAAe;IAWjB,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC;cAYR,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC;IAKvD;;OAEG;YACW,eAAe;IAsC7B;;OAEG;cACgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM;IAQhF;;OAEG;cACgB,aAAa,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO;IAI7D,aAAa;;;;;;;;;CAWd"}
|
package/dist/layers/git-layer.js
CHANGED
|
@@ -1,6 +1,15 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Git Knowledge Layer - Load knowledge from Git repositories
|
|
3
3
|
* Supports authentication, branch selection, and caching
|
|
4
|
+
*
|
|
5
|
+
* AUTHENTICATION STRATEGY:
|
|
6
|
+
* - TOKEN/BASIC: Credentials embedded directly in git URLs (https://token@github.com/...)
|
|
7
|
+
* - Avoids git credential helper issues that caused repeated auth prompts
|
|
8
|
+
* - Remote URL updated before each pull to ensure consistent authentication
|
|
9
|
+
* - SSH: Uses SSH keys via GIT_SSH_COMMAND environment variable
|
|
10
|
+
* - AZURE_CLI: Delegates to Git Credential Manager (no URL modification)
|
|
11
|
+
*
|
|
12
|
+
* See docs/GIT-AUTH-FIX.md for detailed explanation of authentication fix
|
|
4
13
|
*/
|
|
5
14
|
import { access, mkdir, stat, readdir, readFile } from 'fs/promises';
|
|
6
15
|
import { join, dirname } from 'path';
|
|
@@ -109,13 +118,9 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
|
|
|
109
118
|
const token = this.auth.token ||
|
|
110
119
|
(this.auth.token_env_var ? process.env[this.auth.token_env_var] : undefined);
|
|
111
120
|
if (token) {
|
|
112
|
-
//
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
if (this.gitConfig.url.startsWith('https://')) {
|
|
116
|
-
// This will be handled in clone/pull operations
|
|
117
|
-
console.log('🔑 Configured token authentication');
|
|
118
|
-
}
|
|
121
|
+
// For token authentication, we embed credentials directly in URLs
|
|
122
|
+
// This avoids issues with git credential helpers and ensures consistent auth
|
|
123
|
+
console.log('🔑 Configured token authentication (embedded in URLs)');
|
|
119
124
|
}
|
|
120
125
|
else {
|
|
121
126
|
throw new Error('Token not found for git authentication');
|
|
@@ -135,7 +140,7 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
|
|
|
135
140
|
const password = this.auth.password ||
|
|
136
141
|
(this.auth.password_env_var ? process.env[this.auth.password_env_var] : undefined);
|
|
137
142
|
if (username && password) {
|
|
138
|
-
console.log('🔑 Configured basic authentication');
|
|
143
|
+
console.log('🔑 Configured basic authentication (embedded in URLs)');
|
|
139
144
|
// This will be handled in the URL modification
|
|
140
145
|
}
|
|
141
146
|
else {
|
|
@@ -155,6 +160,11 @@ export class GitKnowledgeLayer extends BaseKnowledgeLayer {
|
|
|
155
160
|
console.log(`📥 Pulling latest changes for ${this.name}...`);
|
|
156
161
|
await this.git.cwd(this.localPath);
|
|
157
162
|
try {
|
|
163
|
+
// For authenticated pulls, we need to update the remote URL with auth
|
|
164
|
+
if (this.auth && (this.auth.type === AuthType.TOKEN || this.auth.type === AuthType.BASIC)) {
|
|
165
|
+
const authenticatedUrl = this.prepareUrlWithAuth(this.gitConfig.url);
|
|
166
|
+
await this.git.remote(['set-url', 'origin', authenticatedUrl]);
|
|
167
|
+
}
|
|
158
168
|
const pullResult = await this.git.pull('origin', this.gitConfig.branch || 'main');
|
|
159
169
|
return pullResult.summary.changes > 0;
|
|
160
170
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"git-layer.js","sourceRoot":"","sources":["../../src/layers/git-layer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"git-layer.js","sourceRoot":"","sources":["../../src/layers/git-layer.ts"],"names":[],"mappings":"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"}
|