🔧 Renesas FSP MCP Server
📋 Overview
FSP (Firmware Support Package) MCP Server is a management and documentation search interface for Renesas Flexible Software Package - the software architecture for Renesas RA MCU family.
This server provides the following capabilities:
- 🔍 Search documentation from GitHub repository
- 💻 Discover code examples and API references
- 📦 Manage dependencies and versions
- 🛠️ Support development workflow with e² studio
✨ Key Features
1. Documentation Search 🔍
Search FSP documentation from GitHub repository:
- Architecture overview
- Supported software modules
- Driver guides and HAL API references
- RTOS integration documentation
- Middleware stack documentation
2. Code Examples Discovery 💻
Discover code examples for features:
- SPI, I2C, UART peripheral drivers
- ADC/DAC sampling examples
- Secure boot implementation
- FreeRTOS integration
- DMA-based data transfer
3. API Reference Lookup 📚
Lookup API documentation:
- Core FSP Library (FspLib)
- Peripheral drivers (SPI, I2C, UART, etc.)
- RTOS integration APIs
- Security and cryptographic functions
4. Dependency Management 📦
Manage dependencies and versions:
- Version history tracking
- Platform compatibility matrix
- e² studio version requirements
- Minimum hardware specifications
🏗️ System Architecture
┌─────────────────────────────────────┐
│ MCP Server │
│ ┌──────────┬──────────┬──────────┐ │
│ │ Doc │ Examples │ API │ │
│ │ Search │ Discovery│ Reference│ │
│ └──────────┴──────────┴──────────┘ │
│ ↓ │
│ ┌─────────────────────────────┐ │
│ │ GitHub Repository │ │
│ │ - Documentation │ │
│ │ - Code Examples │ │
│ │ - API References │ │
│ └─────────────────────────────┘ │
└─────────────────────────────────────┘
📁 Project Structure
fsp-mcp-server/
├── src/ # Source code
│ ├── index.ts # Main MCP server entry point
│ └── handlers/ # Handler modules
│ ├── info.ts # FSP architecture information
│ ├── version.ts # Version management
│ ├── documentation.ts # Documentation search
│ ├── examples.ts # Code examples discovery
│ ├── api-reference.ts # API reference lookup
│ └── dependencies.ts # Dependency management
├── schemas/ # JSON schema definitions
├── docs/ # Generated documentation
├── examples/ # Usage examples
├── package.json # NPM configuration
├── tsconfig.json # TypeScript configuration
└── README.md # This file
🚀 Installation and Usage
1. Install dependencies
cd fsp-mcp-server
npm install
2. Build and run
# Build TypeScript code
npm run build
# Run server
npm start
Or run directly in development mode:
npm run dev
3. Connect to MCP Client
Add the following configuration to your MCP client (e.g., LM Studio, Claude Desktop, etc.):
{
"mcpServers": {
"fsp-mcp-server": {
"command": "node",
"args": ["/path/to/fsp-mcp-server/dist/index.js"]
}
}
}
Replace /path/to/fsp-mcp-server with the actual absolute path to your project directory.
For LM Studio:
- Open Settings → Extensions → Model Context Protocol.
- Add a new MCP endpoint with the command:
node /path/to/fsp-mcp-server/dist/index.js. - Set the transport to
stdio. - Save and test the connection via MCP Explorer.
🔧 Configuration
You can customize the server via package.json:
{
"scripts": {
"build": "tsc && echo '✅ TypeScript compilation complete: dist/index.js'",
"build:clean": "npm run build && find dist -name '*.d.ts' -delete && echo '🧹 Cleaned .d.ts files'",
"dev": "tsx watch src/index.ts",
"start": "node ./dist/index.js",
"lint": "eslint \"src/**/*.ts\"",
"format": "prettier --write ."
}
}
📚 References
📄 License
BSD 3-Clause License - See LICENSE file for details.
👨💻 Contributing
To contribute to this project, please:
- Fork the repository
- Create a branch with your feature (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request