Skip to content

Commit 81b0440

Browse files
committed
Release v1.2.0: Exact Artifact Matching with foName Filter
- Add foName filter for exact artifact matching - Enhanced MCP tool schema with filters.foName parameter - Updated API documentation and examples - Improved AI assistant integration with foName examples - Perfect for precise F&O artifact discovery when exact names are known
1 parent ae47801 commit 81b0440

16 files changed

+967
-8
lines changed

CHANGELOG.md

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,34 @@ All notable changes to FO Semantic MCP Server will be documented in this file.
55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
66
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
77

8+
## [1.2.0] - 2025-10-01
9+
10+
**New Feature: Exact Artifact Matching**
11+
12+
### Added
13+
- **foName Filter**: New exact match filter for finding specific F&O artifacts by name
14+
- **MCP Tool Enhancement**: Added `filters.foName` parameter to `search_fo_artifacts` tool
15+
- **AI Assistant Integration**: Updated MCP server instructions with foName filter examples
16+
- **API Documentation**: Added foName filter usage examples and documentation
17+
18+
### Enhanced
19+
- **Search Precision**: When you know the exact F&O artifact name (e.g., "CustTable", "SalesTable"), use foName filter for precise results
20+
- **MCP Server Instructions**: Added examples showing how AI assistants should use foName for exact matches
21+
- **Tool Schema**: Updated MCP tool input schema to include filters.foName parameter
22+
23+
### Use Cases
24+
- **Exact Artifact Lookup**: `search_fo_artifacts({ query: "currency table", filters: { foName: "Currency" } })`
25+
- **AI Assistant Guidance**: When AI knows specific artifact names, use foName for guaranteed exact matches
26+
- **Development Workflow**: Faster artifact discovery when exact names are known from requirements
27+
28+
### Technical Changes
29+
- Updated `SearchFOArtifactsInput` interface to include filters.foName
30+
- Enhanced `SearchApiClient` to pass foName filter to backend API
31+
- Added foName parameter to MCP tool schema with proper Zod validation
32+
- Comprehensive documentation updates across API docs and MCP server instructions
33+
34+
---
35+
836
## [1.1.2] - 2025-10-01
937

1038
**Critical Bug Fix**

README.md

Lines changed: 39 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -29,15 +29,22 @@ Transform your F&O development workflow with AI-powered semantic search over 50,
2929
- **Architects** understanding system patterns
3030
- **Teams** accelerating development cycles
3131

32-
## ⚠️ Current Version Note (v1.1.2)
32+
## 🆕 New in v1.2.0
3333

34-
**Cursor IDE Compatibility**: This version temporarily returns search results in **two formats simultaneously** to ensure compatibility across all Cursor IDE versions:
34+
**Exact Artifact Matching**: Added `foName` filter for precise artifact lookup when you know the exact F&O artifact name.
35+
36+
**Key Features:**
37+
- **foName Filter**: Find specific artifacts by exact name (e.g., "CustTable", "SalesTable")
38+
- **AI Assistant Integration**: Enhanced MCP server instructions for exact matching
39+
- **Improved Precision**: Perfect for when you know exact artifact names from requirements
40+
41+
## ⚠️ Compatibility Note
42+
43+
**Cursor IDE Compatibility**: This version maintains dual-format response support to ensure compatibility across all Cursor IDE versions:
3544

3645
1. **Structured Content** - For older clients with structured content display and MCP protocol compliance
3746
2. **Embedded JSON in Text** - For newer clients with structured content display issues
3847

39-
This dual-format approach ensures the MCP server works reliably with both legacy and current Cursor IDE installations. Future versions may optimize this once MCP client standardization improves.
40-
4148
---
4249

4350
## 🔥 Real-World AI Assistant Scenarios
@@ -153,6 +160,7 @@ Update your MCP client configuration (replace `C:\\Downloads\\` with your extrac
153160

154161
## 💡 Example Queries
155162

163+
### Natural Language Search
156164
```
157165
"Find customer payment processing examples"
158166
"Show me sales order validation patterns"
@@ -161,6 +169,27 @@ Update your MCP client configuration (replace `C:\\Downloads\\` with your extrac
161169
"Show purchase order approval workflows"
162170
```
163171

172+
### Exact Artifact Matching (New in v1.2.0)
173+
```javascript
174+
// When you know the exact artifact name
175+
search_fo_artifacts({
176+
query: "currency table",
177+
filters: { foName: "Currency" }
178+
})
179+
180+
// Find specific table by exact name
181+
search_fo_artifacts({
182+
query: "customer data",
183+
filters: { foName: "CustTable" }
184+
})
185+
186+
// Locate exact form
187+
search_fo_artifacts({
188+
query: "sales order form",
189+
filters: { foName: "SalesTable" }
190+
})
191+
```
192+
164193
## 🔍 Search Features
165194

166195
### Adaptive Threshold Strategy
@@ -172,9 +201,15 @@ AI automatically retries searches with lower thresholds when no results found:
172201

173202
### Filter Options
174203
- **Artifact Types**: Table, Form, Class, EDT, Enum, DataEntity, View, Query
204+
- **foName Filter**: Exact match by specific F&O artifact name (e.g., "CustTable", "SalesTable")
175205
- **Result Limits**: 1-50 results per search
176206
- **Relevance Scoring**: 0-1 semantic similarity scores
177207

208+
### When to Use foName Filter
209+
- **Known Artifact Names**: When you have exact F&O artifact names from requirements or documentation
210+
- **Precise Lookup**: Skip semantic matching and get the exact artifact you need
211+
- **Development Workflow**: Faster artifact discovery when exact names are specified
212+
178213
## 📖 Documentation
179214

180215
- **Getting Started**: See `docs/GETTING_STARTED.md`

RELEASE_INSTRUCTIONS.md

Lines changed: 102 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,102 @@
1+
# Creating FO Semantic MCP v1.2.0 Release
2+
3+
This directory contains scripts to automate the creation of the v1.2.0 release for the FO Semantic MCP project.
4+
5+
## Quick Start
6+
7+
### Option 1: Double-click (Windows)
8+
Simply double-click `create-release.bat` to run the release process.
9+
10+
### Option 2: PowerShell (Windows)
11+
```powershell
12+
.\create-release-v1.2.0.ps1
13+
```
14+
15+
### Option 3: Bash (Git Bash, Linux, macOS)
16+
```bash
17+
bash create-release-v1.2.0.sh
18+
```
19+
20+
## What the Scripts Do
21+
22+
1. **Verify Environment**: Check that you're in the correct directory and version is 1.2.0
23+
2. **Commit Changes**: Stage and commit all current v1.2.0 changes
24+
3. **Create Tag**: Create an annotated git tag for v1.2.0
25+
4. **Push to GitHub**: Push both the commit and tag to the remote repository
26+
5. **Create Release**:
27+
- If GitHub CLI (`gh`) is available: Automatically create the GitHub release with assets
28+
- If GitHub CLI not available: Provide detailed manual instructions
29+
30+
## Prerequisites
31+
32+
- Git configured with push access to the repository
33+
- (Optional) GitHub CLI (`gh`) installed and authenticated for automatic release creation
34+
35+
## Release Assets
36+
37+
The following files will be included as release assets:
38+
- `dist/` (entire folder with compiled JavaScript)
39+
- `package.json`
40+
- `package-lock.json`
41+
- `README.md`
42+
- `CHANGELOG.md`
43+
- `LICENSE`
44+
- `CONTRIBUTING.md`
45+
- `docs/` (documentation folder)
46+
- `examples/` (examples folder)
47+
48+
## Manual Release (if GitHub CLI not available)
49+
50+
If the GitHub CLI is not available, the script will provide you with:
51+
1. Complete step-by-step instructions
52+
2. Pre-formatted release notes saved to `release-notes-v1.2.0.txt`
53+
3. List of files to upload as assets
54+
55+
You can then:
56+
1. Go to https://github.com/xplusplusai/fo-semantic-mcp/releases/new
57+
2. Follow the provided instructions
58+
3. Copy the release notes from the generated file
59+
4. Upload the specified asset files
60+
61+
## Release Details
62+
63+
- **Tag**: v1.2.0
64+
- **Title**: v1.2.0: Exact Artifact Matching with foName Filter
65+
- **Target Branch**: main
66+
- **Release Type**: Latest release (not pre-release)
67+
68+
## Key Features in v1.2.0
69+
70+
- **foName Filter**: Exact artifact matching by name
71+
- **Enhanced MCP Tool**: Updated schema with filters.foName parameter
72+
- **AI Assistant Integration**: Better integration with foName examples
73+
- **Production Ready**: Real integrations with comprehensive documentation
74+
75+
## Troubleshooting
76+
77+
### "GitHub CLI not found"
78+
- Install GitHub CLI from https://cli.github.com/
79+
- Or follow the manual release instructions provided by the script
80+
81+
### "Permission denied" errors
82+
- Ensure you have push access to the repository
83+
- Run `git remote -v` to verify you're connected to the correct repository
84+
85+
### "Version mismatch" errors
86+
- Verify that `package.json` shows version "1.2.0"
87+
- Check that you're in the correct directory
88+
89+
## Post-Release Steps
90+
91+
After the release is created:
92+
1. Verify the release appears at https://github.com/xplusplusai/fo-semantic-mcp/releases
93+
2. Test downloading and installing the release package
94+
3. Update any external documentation that references the version number
95+
4. Announce the release to users and stakeholders
96+
97+
## Support
98+
99+
For issues with the release process, check:
100+
- Repository permissions and authentication
101+
- Git configuration and remote setup
102+
- GitHub CLI installation and authentication (if using automatic mode)

create-release-simple.ps1

Lines changed: 171 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,171 @@
1+
# FO Semantic MCP v1.2.0 Release Script (PowerShell)
2+
# Simple version that avoids PowerShell parsing issues
3+
4+
param(
5+
[switch]$DryRun = $false
6+
)
7+
8+
Write-Host "🚀 Creating FO Semantic MCP v1.2.0 Release" -ForegroundColor Cyan
9+
Write-Host "==========================================" -ForegroundColor Cyan
10+
11+
# Check if we're in the right directory
12+
if (-not (Test-Path "package.json")) {
13+
Write-Host "❌ Error: package.json not found. Please run this script from the fo-semantic-mcp-release directory." -ForegroundColor Red
14+
exit 1
15+
}
16+
17+
# Check if version in package.json is 1.2.0
18+
$packageJson = Get-Content "package.json" | ConvertFrom-Json
19+
$version = $packageJson.version
20+
if ($version -ne "1.2.0") {
21+
Write-Host "❌ Error: package.json version is $version, expected 1.2.0" -ForegroundColor Red
22+
exit 1
23+
}
24+
25+
Write-Host "✅ Version check passed: $version" -ForegroundColor Green
26+
27+
if ($DryRun) {
28+
Write-Host "🔍 DRY RUN MODE - No actual changes will be made" -ForegroundColor Yellow
29+
}
30+
31+
# Commit the current changes
32+
Write-Host "📝 Committing v1.2.0 changes..." -ForegroundColor Blue
33+
34+
$commitMessage = "Release v1.2.0: Exact Artifact Matching with foName Filter
35+
36+
- Add foName filter for exact artifact matching
37+
- Enhanced MCP tool schema with filters.foName parameter
38+
- Updated API documentation and examples
39+
- Improved AI assistant integration with foName examples
40+
- Perfect for precise F&O artifact discovery when exact names are known"
41+
42+
if (-not $DryRun) {
43+
git add .
44+
git commit -m $commitMessage
45+
if ($LASTEXITCODE -ne 0) {
46+
Write-Host "❌ Error: Failed to commit changes" -ForegroundColor Red
47+
exit 1
48+
}
49+
}
50+
51+
Write-Host "✅ Changes committed" -ForegroundColor Green
52+
53+
# Create and push the tag
54+
Write-Host "🏷️ Creating v1.2.0 tag..." -ForegroundColor Blue
55+
56+
$tagMessage = "v1.2.0: Exact Artifact Matching with foName Filter
57+
58+
New Feature: Precise F&O Artifact Discovery with foName filter for exact artifact matching.
59+
Perfect for when you know the specific F&O artifact name and want guaranteed precise results.
60+
61+
Key Features:
62+
- foName Filter for exact artifact matching
63+
- Enhanced MCP tool schema
64+
- AI Assistant Integration improvements
65+
- Production Ready with comprehensive documentation"
66+
67+
if (-not $DryRun) {
68+
git tag -a v1.2.0 -m $tagMessage
69+
if ($LASTEXITCODE -ne 0) {
70+
Write-Host "❌ Error: Failed to create tag" -ForegroundColor Red
71+
exit 1
72+
}
73+
}
74+
75+
Write-Host "✅ Tag created" -ForegroundColor Green
76+
77+
# Push the commit and tag
78+
Write-Host "📤 Pushing to GitHub..." -ForegroundColor Blue
79+
80+
if (-not $DryRun) {
81+
git push origin main
82+
if ($LASTEXITCODE -eq 0) {
83+
Write-Host "✅ Pushed commit to main" -ForegroundColor Green
84+
} else {
85+
Write-Host "❌ Error: Failed to push commit" -ForegroundColor Red
86+
exit 1
87+
}
88+
89+
git push origin v1.2.0
90+
if ($LASTEXITCODE -eq 0) {
91+
Write-Host "✅ Pushed tag v1.2.0" -ForegroundColor Green
92+
} else {
93+
Write-Host "❌ Error: Failed to push tag" -ForegroundColor Red
94+
exit 1
95+
}
96+
}
97+
98+
# Create the GitHub Release
99+
Write-Host "🎉 Creating GitHub Release..." -ForegroundColor Blue
100+
101+
# Check if GitHub CLI is available
102+
$ghAvailable = Get-Command gh -ErrorAction SilentlyContinue
103+
104+
if ($ghAvailable -and -not $DryRun) {
105+
Write-Host "📋 Using GitHub CLI to create release..." -ForegroundColor Blue
106+
107+
try {
108+
$releaseNotesPath = "release-notes-v1.2.0.txt"
109+
110+
# Create release using GitHub CLI
111+
gh release create v1.2.0 --title "v1.2.0: Exact Artifact Matching with foName Filter" --notes-file $releaseNotesPath --target main --latest
112+
113+
if ($LASTEXITCODE -eq 0) {
114+
Write-Host "✅ GitHub release created successfully!" -ForegroundColor Green
115+
116+
# Upload assets
117+
Write-Host "📦 Uploading release assets..." -ForegroundColor Blue
118+
gh release upload v1.2.0 package.json package-lock.json README.md CHANGELOG.md LICENSE CONTRIBUTING.md
119+
120+
if ($LASTEXITCODE -eq 0) {
121+
Write-Host "✅ Release assets uploaded successfully!" -ForegroundColor Green
122+
} else {
123+
Write-Host "⚠️ Release created but some assets failed to upload" -ForegroundColor Yellow
124+
}
125+
} else {
126+
Write-Host "❌ Error: Failed to create GitHub release" -ForegroundColor Red
127+
exit 1
128+
}
129+
} catch {
130+
Write-Host "❌ Error creating release: $($_.Exception.Message)" -ForegroundColor Red
131+
Write-Host "⚠️ Please create the release manually..." -ForegroundColor Yellow
132+
$ghAvailable = $false
133+
}
134+
}
135+
136+
if (-not $ghAvailable) {
137+
Write-Host "⚠️ GitHub CLI not available. Please create the release manually:" -ForegroundColor Yellow
138+
Write-Host ""
139+
Write-Host "📋 Manual Release Instructions:" -ForegroundColor Cyan
140+
Write-Host "1. Go to: https://github.com/xplusplusai/fo-semantic-mcp/releases/new" -ForegroundColor White
141+
Write-Host "2. Tag: v1.2.0" -ForegroundColor White
142+
Write-Host "3. Title: v1.2.0: Exact Artifact Matching with foName Filter" -ForegroundColor White
143+
Write-Host "4. Target: main" -ForegroundColor White
144+
Write-Host "5. Copy release notes from: release-notes-v1.2.0.txt" -ForegroundColor White
145+
Write-Host "6. Upload these files as release assets:" -ForegroundColor White
146+
Write-Host " - dist/ (entire folder)" -ForegroundColor Gray
147+
Write-Host " - package.json" -ForegroundColor Gray
148+
Write-Host " - package-lock.json" -ForegroundColor Gray
149+
Write-Host " - README.md" -ForegroundColor Gray
150+
Write-Host " - CHANGELOG.md" -ForegroundColor Gray
151+
Write-Host " - LICENSE" -ForegroundColor Gray
152+
Write-Host " - CONTRIBUTING.md" -ForegroundColor Gray
153+
Write-Host " - docs/ (entire folder)" -ForegroundColor Gray
154+
Write-Host " - examples/ (entire folder)" -ForegroundColor Gray
155+
Write-Host "7. Check 'Set as the latest release'" -ForegroundColor White
156+
Write-Host "8. Click 'Publish release'" -ForegroundColor White
157+
Write-Host ""
158+
Write-Host "📄 Release notes are saved in: release-notes-v1.2.0.txt" -ForegroundColor Cyan
159+
}
160+
161+
Write-Host ""
162+
Write-Host "🎉 Release process completed!" -ForegroundColor Green
163+
Write-Host "📦 Version: v1.2.0" -ForegroundColor Cyan
164+
Write-Host "🔗 Repository: https://github.com/xplusplusai/fo-semantic-mcp" -ForegroundColor Cyan
165+
Write-Host "📋 Releases: https://github.com/xplusplusai/fo-semantic-mcp/releases" -ForegroundColor Cyan
166+
167+
if ($DryRun) {
168+
Write-Host ""
169+
Write-Host "ℹ️ This was a dry run. To execute the release, run:" -ForegroundColor Blue
170+
Write-Host " .\create-release-simple.ps1" -ForegroundColor White
171+
}

0 commit comments

Comments
 (0)