@dev-bucket/btp
v0.0.4
Published
An MCP server for SAP Business Technology Platform CLI
Readme
BTP MCP Server
An MCP (Model Context Protocol) server for SAP Business Technology Platform (BTP) CLI operations, providing comprehensive tools for managing BTP resources, Cloud Foundry environments, and destination services.
Overview
This MCP server provides a unified interface to interact with SAP BTP through various CLI tools including:
- SAP BTP CLI commands
- Cloud Foundry CLI commands
- Destination service operations
- Cloud Connector REST API operations
Installation
npm install
npm run buildUsage
CLI Options
The server can be started with the following command-line options:
node dist/cli.js [options]Available Options
| Option | Description | Values | Default |
| ---------------- | ------------------------------- | --------------------- | ---------- |
| --mode | Execution mode for CLI commands | terminal, execute | terminal |
| --instructions | Path to instructions file | File path | None |
Mode Descriptions
terminal: Commands are prepared and returned as suggestions (safer for interactive use)execute: Commands are executed directly (for automated workflows)
Example Usage
# Start in terminal mode (default)
node dist/cli.js --mode terminal
# Start in execute mode with instructions
node dist/cli.js --mode execute --instructions ./Naming_convention.md
# Start with custom instructions file
node dist/cli.js --instructions /path/to/instructions.mdAvailable Tools
Resources
Instructions Resource
The server provides access to an instructions resource when an instructions file path is provided via the --instructions CLI option. This resource contains guidance for BTP operations and naming conventions.
Resource URI: instructions://content
Development
Building
npm run buildTesting
npm test
npm run test:watchProject Structure
src/
├── cli.ts # CLI entry point
├── index.ts # Main server registration
└── tools/
├── btp/ # BTP CLI tools
│ ├── auth.ts # Authentication tools
│ ├── directories.ts # Directory management
│ ├── subaccounts.ts # Subaccount management
│ ├── security.ts # Security and role management
│ ├── services.ts # Service management
│ ├── entitlements.ts # Entitlement management
│ ├── environments.ts # Environment management
│ └── utils.ts # Utility tools
├── cf/ # Cloud Foundry CLI tools
│ ├── auth.ts # CF authentication
│ ├── orgs.ts # Organization management
│ ├── spaces.ts # Space management
│ ├── users.ts # User management
│ ├── apps.ts # Application management
│ ├── services.ts # CF service management
│ └── utils.ts # CF utility tools
├── destinations/ # Destination service tools
│ ├── lookup.ts # Destination lookup
│ ├── subaccount-destinations.ts # Subaccount destinations
│ ├── instance-destinations.ts # Instance destinations
│ ├── subaccount-fragments.ts # Subaccount fragments
│ ├── instance-fragments.ts # Instance fragments
│ ├── subaccount-certificates.ts # Subaccount certificates
│ ├── instance-certificates.ts # Instance certificates
│ ├── saml-trust.ts # SAML and trust certificates
│ └── oauth.ts # OAuth token management
└── cloudConnector/ # Cloud Connector REST API tools
├── monitoring.ts # Monitoring and health check tools
├── configuration.ts # Configuration management tools
├── shared.ts # Shared utilities and types
└── register.ts # Tool registrationLicense
MIT
Author
Jakob Kjaer
Contributing
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests if applicable
- Submit a pull request
Support
For issues and questions, please use the GitHub issue tracker.
