Skip to content

Implementation Phases

Technical details of the MCP Server implementation across three phases.

Overview

The MCP Server was developed in three phases, each adding significant capabilities and improvements to the AI agent experience.

PhaseFocusMajor FeaturesTools Added
Phase 1Core FeaturesDiscovery basics, examples, presets, error handling3 tools
Phase 2Guidance & NavigationRecommendations, quick start, context-aware suggestions3 tools
Phase 3Advanced CapabilitiesWorkflows, interpretation, search, templates6 tools

Phase 1: Core Features (Discovery & Examples)

Phase 1 Goals

  • Provide parameter guidance and discovery
  • Include real-world usage examples
  • Improve error messages with suggestions
  • Make commands self-documenting

Phase 1 Features Implemented

1. Command Examples (hana_examples)

  • 40+ real-world usage scenarios
  • Complete parameter sets
  • Expected outputs
  • Tips and best practices

Files Created:

  • src/examples-presets.ts (1000+ lines)

Scope:

  • import (5 scenarios)
  • export (3 scenarios)
  • dataProfile (2 scenarios)
  • duplicateDetection (2 scenarios)
  • tables (2 scenarios)
  • compareSchema (2 scenarios)
  • And 10+ more commands

2. Parameter Presets (hana_parameter_presets)

  • Pre-configured parameter templates
  • Named presets for common use cases
  • Descriptions and use case guidance
  • Ready-to-use parameter sets

Presets include:

  • quick-import, safe-import, large-file, streaming-mode, bulk-insert
  • quick-export, safe-export, format-specific
  • quality-check, pattern-analysis, threshold-based
  • And more...

3. Enhanced Tool Descriptions

  • Category and tags inline
  • Common use cases listed
  • Related commands for discovery
  • Links to examples and presets

Format:

bash
hana_import: Import data from CSV/Excel/TSV file to database table.
[Category: data-operations] [Tags: import, data, csv, excel, etl]

**Common Use Cases:**
- Data migration from external systems
- Bulk data loading
- ETL pipeline integration

**Related Commands:** hana_export, hana_tableCopy, hana_dataValidator

💡 Tips: Use hana_examples for usage examples
📋 Tips: Use hana_parameter_presets for parameter templates

4. Intelligent Error Messages

  • Error pattern detection
  • Actionable suggestions
  • Ready-to-run commands for recovery
  • Categorized causes

Error Categories:

  • TABLE_NOT_FOUND
  • SCHEMA_NOT_FOUND
  • FILE_NOT_FOUND
  • CONNECTION_ERROR
  • AUTHENTICATION_ERROR
  • TIMEOUT
  • PARAMETER_ERROR
  • UNKNOWN_ERROR

Error Output Format:

bash
 Command Failed

Error: Table not found: MY_TABLE

Possible Causes:
1. Table name is case-sensitive - check capitalization
2. Table may be in different schema
3. Table may not exist yet
4. User may not have permission to see the table

💡 Suggestions:
1. List tables in the schema to verify the table name
 Try: hana_tables with parameters: { schema: "<schema-name>" }

Phase 1 Files Modified

  1. src/index.ts - Added tool handlers for examples and presets
  2. src/executor.ts - Enhanced error analysis and formatting
  3. README.md - Added features documentation

Phase 1 Metrics

  • ✅ 40+ examples added
  • ✅ 30+ parameter presets
  • ✅ 8 error categories covered
  • ✅ 3 new MCP tools
  • ✅ All 150+ commands documented

Phase 2: Discovery & Guidance

Phase 2 Goals

  • Help agents find commands by intent
  • Provide next-step suggestions
  • Guide users through tasks
  • Enable self-service troubleshooting

Phase 2 Features Implemented

1. Intent-Based Recommendations (hana_recommend)

Natural language intent matching with confidence scoring.

Files Created:

  • src/recommendation.ts (280 lines)

Features:

  • Pattern matching (100+ intent patterns)
  • Confidence scoring (high/medium/low)
  • Example parameters for recommendations
  • Reasoning for matches

Scoring Algorithm:

  • Direct command name match: 50 points
  • Intent pattern match: 25 points
  • Tag match: 15 points
  • Description match: 10 points
  • Use case match: 5 points

Example Recommendations:

json
{
  "intent": "find duplicate rows",
  "recommendations": [
    {
      "command": "duplicateDetection",
      "confidence": "high",
      "reasoning": "Designed specifically for duplicate detection"
    },
    {
      "command": "dataProfile",
      "confidence": "medium",
      "reasoning": "Can identify duplicate patterns"
    }
  ]
}

2. Quick Start Guide (hana_quickstart)

Beginner-friendly 6-step introduction.

6 Essential Commands:

  1. status - Check connection
  2. version - View database version
  3. schemas - List available schemas
  4. tables - List tables in schema
  5. inspectTable - View table structure
  6. healthCheck - System health verification

Features:

  • Step-by-step progression
  • Purpose explanation for each
  • Tips for success
  • Parameter templates included

3. Context-Aware Next Steps

Automatic suggestions after command execution.

Files Modified:

  • src/next-steps.ts (380 lines)

Features:

  • Command-specific next steps
  • Output-based analysis
  • Reasoning for suggestions
  • Ready-to-run parameters

Examples:

  • After status → suggest schemas, healthCheck, version
  • After tables → suggest inspectTable, dataProfile
  • After import → suggest dataValidator, dataProfile

4. Troubleshooting Guides (hana_troubleshoot)

Command-specific troubleshooting for common issues.

Coverage:

  • import (5 common issues)
  • export (3 common issues)
  • dataProfile (2 common issues)
  • tables (2 common issues)
  • status (2 common issues)
  • healthCheck (2 common issues)

Each guide includes:

  • Issue description
  • Root causes
  • Step-by-step solutions
  • Prevention tips

5. Output-Based Tips

Context-sensitive suggestions based on results.

Rules:

  • Import with errors → suggest dryRun, skipWithErrors
  • Memory analysis with high usage → suggest optimization
  • Many tables → suggest filtering
  • Health warnings → suggest investigation

Phase 2 Files Modified

  1. src/index.ts - Added Phase 2 tool handlers
  2. src/executor.ts - Integrated next-steps into results
  3. README.md - Added Phase 2 documentation

Phase 2 Metrics

  • ✅ 100+ intent patterns
  • ✅ 4 discovery tools
  • ✅ 20+ next-step mappings
  • ✅ 12+ troubleshooting guides
  • ✅ Output-aware recommendations

Phase 3: Advanced Features & Automation

Phase 3 Goals

  • Automate multi-step workflows
  • Provide AI-friendly result analysis
  • Enable comprehensive search
  • Create guided conversation templates

Phase 3 Features Implemented

1. Workflow Execution System (hana_execute_workflow, hana_preview_workflow)

Automated multi-step command sequences.

Files Created:

  • src/workflow-execution.ts (230 lines)

Features:

  • Parameter substitution
  • Step validation
  • Result tracking
  • Error handling with options
  • Preview mode

Built-in Workflows (20+):

  • data-quality-check (5 steps)
  • schema-migration (6 steps)
  • performance-baseline (5 steps)
  • safe-import (5 steps)
  • data-cleansing (7 steps)
  • And 15+ more...

Workflow Structure:

json
{
  "steps": [
    {
      "command": "hana_command",
      "parameters": {
        "param1": "<placeholder>",
        "param2": "value"
      }
    }
  ]
}

Execution Output:

json
{
  "steps": [
    {
      "step": 1,
      "command": "dataProfile",
      "status": "success",
      "duration": 2.5,
      "result": {...}
    }
  ],
  "totalDuration": 4.3,
  "status": "complete"
}

2. Result Interpretation Engine (hana_interpret_result)

AI-friendly analysis of command results.

Files Created:

  • src/result-interpretation.ts (380 lines)

Features:

  • Summary generation
  • Insight extraction
  • Recommendation ranking
  • Concern identification
  • Metric extraction

Command Coverage:

  • dataProfile → quality issues, nulls, duplicates
  • memoryAnalysis → usage concentration, bottlenecks
  • healthCheck → issues, warnings, recommendations
  • expensiveStatements → performance problems
  • And more...

Output Structure:

json
{
  "summary": "...",
  "insights": ["...", "..."],
  "recommendations": [
    {
      "priority": "high",
      "action": "...",
      "impact": "...",
      "nextCommand": "..."
    }
  ],
  "concerns": [...],
  "metrics": {...}
}

Comprehensive search across all resources.

Files Created:

  • src/smart-search.ts (320 lines)

Features:

  • Multi-scope searching (commands, workflows, examples, presets)
  • Relevance ranking
  • Result type indicators
  • Context information
  • Search suggestions

Scoring Algorithm:

  • Exact match: 100 points
  • Contains phrase: 50 points
  • Contains all words: 30 points
  • Per word match: 10 points
  • Start of text bonus: 20 points

Search Scope:

  • 150+ commands
  • 20+ workflows
  • 40+ examples
  • 30+ presets

4. Conversation Templates (hana_conversation_templates, hana_get_template)

Guided workflows for common tasks.

Files Created:

  • src/conversation-templates.ts (450 lines)

5 Main Templates:

  1. data-exploration - Understand database structure
  2. troubleshooting - Diagnose problems
  3. data-migration - Move data safely
  4. performance-tuning - Optimize database
  5. security-audit - Review access control

Template Structure:

json
{
  "phases": [
    {
      "phase": 1,
      "title": "...",
      "steps": [
        {
          "order": 1,
          "command": "hana_...",
          "purpose": "...",
          "expectedOutcome": "..."
        }
      ]
    }
  ],
  "tips": [...]
}

5. Documentation Search Integration (4 tools)

Access to 279 documentation pages.

Files Created:

  • src/docs-search.ts (400 lines)
  • docs-index.json (pre-built index)

Tools:

  • hana_search_docs - Full-text search
  • hana_get_doc - Retrieve full content
  • hana_list_doc_categories - Browse categories
  • hana_docs_stats - Index statistics

Features:

  • 279 indexed pages
  • 9 categories
  • 2,285 keywords
  • Fast searching
  • Relevance ranking

Phase 3 Files Modified

  1. src/index.ts (+250 lines) - Phase 3 tool handlers
  2. package.json - Added docs index build script
  3. README.md - Phase 3 documentation
  4. scripts/build-docs-index.js (NEW) - Index builder

Phase 3 Build Changes

Added build scripts:

bash
npm run build:docs-index  # Build documentation index

Summary of Changes

Total Impact

MetricPhase 1Phase 2Phase 3Total
New Files1269
MCP Tools Added33612
Total Commands150+150+150+150+
Lines of Code1,000+660+1,400+3,060+
Features44513

Code Organization

bash
src/
├── index.ts              (Main server, 1000+ lines)
├── executor.ts           (Command execution, 400 lines)
├── examples-presets.ts   (Phase 1: Examples & Presets)
├── recommendation.ts     (Phase 2: Recommendations)
├── next-steps.ts         (Phase 2: Guidance)
├── workflow-execution.ts (Phase 3: Workflows)
├── result-interpretation.ts (Phase 3: Interpretation)
├── smart-search.ts       (Phase 3: Search)
├── conversation-templates.ts (Phase 3: Templates)
└── docs-search.ts        (Phase 3: Doc Search)

Build Process

bash
TypeScript Source npm run build JavaScript Output

        Type Checking & Compilation

            Error Checking

            docs-index.json

        build/ directory ready

Performance Characteristics

Load Time

  • MCP Server startup: <1 second
  • Documentation index load: <500ms
  • Command recommendations: <100ms
  • Search ranking: <50ms per query

Memory Usage

  • Base server: ~50MB
  • With 279 docs indexed: ~75MB
  • Per workflow execution: +5-10MB
  • Result interpretation: <1MB

Scalability

  • Supports 150+ commands easily
  • Can handle 500+ commands if needed
  • Documentation index scales to 1000+ pages
  • Workflow system supports unlimited sequences

Testing and Quality

Test Coverage

  • Phase 1: Core functionality tested (examples, presets, errors)
  • Phase 2: Discovery system tested (recommendations, guidance)
  • Phase 3: Advanced features tested (workflows, interpretation, search)

Build Validation

✅ All TypeScript compiles without errors ✅ All files generated in build/ ✅ No runtime errors on startup ✅ All tools register correctly

Future Enhancements

Potential Phase 4

  • Machine learning for better recommendations
  • User behavior learning
  • Custom workflow recording
  • Performance analytics
  • Integration with external systems

Optimization Opportunities

  • Caching frequently used results
  • Incremental documentation indexing
  • Compression of workflow definitions
  • Parallel workflow execution

References

  • Code Examples: mcp-server/src/ directory
  • Configuration: mcp-server/package.json
  • Build Output: mcp-server/build/ directory
  • Documentation Index: mcp-server/docs-index.json

Next Steps