unpublish_service_binding
Unpublish an OData service binding from an SAP system by providing the binding name, version, and system ID.
Instructions
Unpublish an OData service binding
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| binding_name | Yes | Service binding name | |
| binding_version | Yes | Service version (e.g. 0001) | |
| system_id | No | SAP system ID (e.g. DEV). Omit to use default system. |
Implementation Reference
- src/mcp-server.ts:645-657 (registration)Tool registration with input schema for 'unpublish_service_binding'. Defines binding_name and binding_version as required string inputs.
{ name: "unpublish_service_binding", description: "Unpublish an OData service binding", inputSchema: { type: "object" as const, properties: { binding_name: { type: "string", description: "Service binding name" }, binding_version: { type: "string", description: "Service version (e.g. 0001)" }, ...SYSTEM_ID_PROP, }, required: ["binding_name", "binding_version"], }, }, - src/mcp-server.ts:1196-1200 (handler)Handler (switch case) that parses args with ServiceBindingSchema, calls client.unpublishServiceBinding(), and returns the result.
case "unpublish_service_binding": { const { binding_name, binding_version } = ServiceBindingSchema.parse(args); const result = await client.unpublishServiceBinding(binding_name, binding_version); return { content: [{ type: "text", text: result }] }; } - src/adt-client.ts:320-327 (handler)Actual implementation of unpublishServiceBinding on AdtClient. Sends POST to /sap/bc/adt/ddic/srvb/srvbsources/{name}/unpublish?version={version} with CSRF token.
async unpublishServiceBinding(name: string, version: string): Promise<string> { const encoded = encodeURIComponent(name.toUpperCase()); return (await this.postWithCsrf( `/sap/bc/adt/ddic/srvb/srvbsources/${encoded}/unpublish?version=${encodeURIComponent(version)}`, "", "*/*" )).data as string; } - src/mcp-server.ts:123-127 (schema)ServiceBindingSchema used for both publish and unpublish validation — defines binding_name (string) and binding_version (string) as required fields.
// Service binding schemas const ServiceBindingSchema = z.object({ binding_name: z.string(), binding_version: z.string(), });