# OpenSlice MCP Server A Model Context Protocol (MCP) server that provides AI assistants with access to OpenSlice service management capabilities through standardized tools and resources. ## Overview The OpenSlice MCP Server is a Spring Boot application that bridges OpenSlice's service catalog and management system with AI assistants like Claude via the Model Context Protocol. It exposes OpenSlice functionality as MCP tools, allowing AI assistants to interact with service catalogs, manage service orders, and retrieve service information. ## What is OpenSlice? [OpenSlice](https://osl.etsi.org/) is an open-source platform for managing network services and resources based on TMForum standards. It provides service catalog management, service ordering, and service lifecycle management capabilities for telecommunications and cloud services. ## Features ### MCP Tools Available - **Service Catalog Management**: - Browse service catalogs and categories - Search for service specifications - Get detailed service specification information - Access resource specifications - **Service Order Management**: - Create service orders with customizable characteristics - Track service order status and progress - Retrieve service order details and history - **Service Instance Management**: - View service instances and their details - Update service characteristics - Monitor service status and supporting resources - **Resource Management**: - Access resource information and specifications - Track resource status and characteristics ### Authentication & Security - OAuth2/JWT token-based authentication - Integration with Keycloak identity provider - Secure communication with OpenSlice backend systems ## Architecture The server implements the MCP protocol using Spring AI's MCP server capabilities: - **Transport**: Server-Sent Events (SSE) for real-time communication - **Message Queue**: Apache ActiveMQ for backend communication with OpenSlice - **Protocol**: Model Context Protocol v1.0 for AI assistant integration ## Configuration Key configuration options in `application.yaml`: ```yaml server: port: 13015 spring: ai: mcp: server: name: org.etsi.osl.mcp.server sse-message-endpoint: /mcp/messages stdio: false activemq: brokerUrl: tcp://portal.openslice.eu:61616 security: oauth2: resourceserver: jwt: issuer-uri: https://portal.openslice.eu/auth/realms/openslice ``` ## Installation & Usage ### Prerequisites - Java 17 or higher - Maven 3.6+ - Access to an OpenSlice deployment - Access to the OpenSlice ActiveMQ message broker ### Building ```bash mvn clean package ``` ### Running ```bash java -jar target/org.etsi.osl.mcp.server-*.jar ``` The server will start on port 13015 and provide MCP endpoints for AI assistant integration. ### Integration with Claude Once running, the server can be connected to Claude Code or other MCP-compatible clients: 1. The server exposes its MCP interface at: `http://localhost:13015/mcp/messages` 2. AI assistants can discover and use the available tools for OpenSlice operations 3. Authentication is required via JWT tokens from the configured OAuth2 provider for Claude: ``` { "mcpServers": { "oslserver": { "command": "npx", "args": [ "mcp-remote@latest", "http://portal.openslice.eu:13015/sse", "--allow-http"] } } } ``` > Note: At the time of your download, the `mcp-remote@latest` tag may be incompatible with the committed OSL MCP Server, due to the growing ongoing research. If you experience connectivity issues with your MCP Client, please use `mcp-remote@0.1.18`, which is extensively tested and works. ## Dependencies - Spring Boot 3.4.5 - Spring AI with MCP server support - Apache Camel for message routing - TMForum API models for telecommunications standards - ActiveMQ for message queue communication ## License This project is licensed under the Apache License 2.0. ## Related Projects - [OpenSlice](https://osl.etsi.org/) - The main OpenSlice platform - [Model Context Protocol](https://modelcontextprotocol.io/) - Protocol specification for AI assistant integrations ## Support For issues and questions: - See the published demonstration: https://www.youtube.com/watch?v=fSDDQvdbuME - OpenSlice documentation: https://osl.etsi.org/documentation - ETSI OSL GitLab: https://labs.etsi.org/rep/osl/