An MCP server that connects AI agents to SAP BTP APIs so they can inspect service catalogs, service plans, active instances, destinations, and receive service recommendations. It uses SAP Service Manager and Destination service credentials to query the BTP landscape.
From the registry: Discover SAP BTP services, browse service catalog, check running instances, query dests, & more
$ pip install btp-mcp-serverhttps://pypi.org/project/btp-mcp-server/Please install the `btp-mcp-server` MCP server into my current AI client (that's you).
Required prerequisites (do these first if not already done):
- **Install the Python package** — Install the MCP server from PyPI using pip. Run: `pip install btp-mcp-server` (https://pypi.org/project/btp-mcp-server/)
- **Create a SAP BTP Service Manager service key** — In SAP BTP Cockpit, create a Service Manager instance with the subaccount-admin plan and generate a service key. Use the service key JSON to obtain BTP_CLIENT_ID, BTP_CLIENT_SECRET, BTP_TOKEN_URL, and BTP_SM_URL.
- **Find your SAP BTP subaccount ID** — In SAP BTP Cockpit, open your subaccount Overview and copy the Subaccount ID for BTP_SUBACCOUNT_ID.
- **Determine your Destination service URL** — Obtain the region-specific SAP BTP Destination service base URL for BTP_DESTINATION_URL.
Canonical MCP server config (stdio transport):
- command: `btp-mcp-server`
- args: []
- required environment variables:
- `BTP_CLIENT_ID`: OAuth client ID from the Service Manager service key JSON field clientid. (example: `<your-client-id>`)
- `BTP_CLIENT_SECRET`: OAuth client secret from the Service Manager service key JSON field clientsecret. (example: `<your-client-secret>`)
- `BTP_TOKEN_URL`: OAuth token URL from the Service Manager service key. (example: `<your-token-url>`)
- `BTP_SM_URL`: Service Manager API base URL from the Service Manager service key JSON field sm_url. (example: `<your-service-manager-url>`)
- `BTP_SUBACCOUNT_ID`: SAP BTP subaccount ID from the subaccount Overview page. (example: `<your-subaccount-id>`)
- `BTP_DESTINATION_URL`: Region-specific SAP BTP Destination service base URL. (example: `<your-destination-service-url>`)
- optional environment variables:
- `CACHE_TTL_SECONDS`: Optional cache TTL in seconds. Defaults to 300. (example: `<cache-ttl-seconds>`)
Note: The README also documents an HTTP mode for Joule Studio by running the same command with MCP_TRANSPORT=http, which starts the server at /mcp. However, the standard MCP client configuration examples use stdio, so stdio is the canonical config extracted here.
Add this MCP server to my current client's config in the correct format for you. If you need secrets or credentials I haven't provided, ASK me — do not invent values or leave raw placeholders. After adding it, tell me how to verify the server is connected.BTP_CLIENT_IDrequiredOAuth client ID from the Service Manager service key.BTP_CLIENT_SECRETrequiredOAuth client secret from the Service Manager service key.BTP_TOKEN_URLrequiredOAuth token endpoint URL from the Service Manager service key.BTP_SM_URLrequiredService Manager API URL from the service key.BTP_SUBACCOUNT_IDrequiredBTP subaccount GUID used to scope API requests.BTP_DESTINATION_URLrequiredDestination service API URL for querying configured destinations.Meta Ads MCP (Facebook + Instagram) - analyze performance, manage budgets, pause campaigns.