Adding Third-Party MCP Servers to AiKA
Overview
AiKA supports integration with third-party MCP (Model Context Protocol) servers to extend its capabilities beyond built-in Portal Actions. These servers can be added to your software catalog and then manually enabled for use with AiKA.
Third-party MCP servers introduce significant risks:
- Automatic Execution: AiKA executes server actions without user confirmation, making servers that modify or delete data particularly risky
- Data Exposure: Third-party servers may log, store, or transmit your queries and organizational data
- External Dependencies: We cannot guarantee the availability, reliability, or security of third-party services
Users accept full responsibility for third-party server usage and must comply with external provider terms and agreements.
Best Practice: Only enable read-only servers from trusted sources.
Adding MCP Servers to the Catalog
MCP servers can be made available to AiKA by adding them to the software catalog as API entities with specific configuration.
MCP servers must be unauthenticated. Authentication support is planned for a future release.
Example Configuration
Here's an example YAML file corresponding to an entity. Adding this entity makes the MCP server available to AiKA:
apiVersion: backstage.io/v1alpha1
kind: API
metadata:
title: Example MCP Server
name: example-mcp
description: Provides example functionality for demonstration.
tags:
- example
- mcp
- tools
- spotify-internal
spec:
type: mcp-server
lifecycle: production
owner: platform-team
definition: |
{
"name": "example-mcp",
"description": "Provides example functionality for demonstration.",
"version_detail": {
"version": "0.0.1"
},
"remotes": [
{
"transport_type": "streamable",
"url": "https://example-mcp.spotify.net/mcp/"
}
]
}
Schema Requirements
To register an MCP server with AiKA, create a catalog entity with:
- Entity Type: Set
kind: API
andspec.type: mcp-server
in the catalog entity - Definition Field: JSON object containing the required fields below
Required Fields in definition
Field | Type | Description |
---|---|---|
name | string | Unique identifier for the MCP server |
description | string | Human-readable description of the server's capabilities |
version_detail.version | string | Semantic version number (e.g., "1.0.0") |
remotes | array | Connection endpoints for the MCP server |
remotes[].transport_type | string | Transport protocol: "streamable" (HTTP streaming) or "sse" (Server-Sent Events) |
remotes[].url | string | Full URL endpoint for the MCP server |
MCP servers registered in the catalog with type: mcp-server
are available for selection. Users must manually enable the servers they want AiKA to use.
Using Third-Party MCP Servers
Once enabled, MCP servers can be used in AiKA conversations.
Server Selection and Management
Users can select which MCP servers to enable through the Portal MCP Servers dialog. Click "Add server" to choose from available catalog entries:
Server Use
Users simply ask questions in plain English. AiKA automatically selects and uses relevant enabled MCP servers to provide comprehensive answers.
Example: Code Search Request
When a user asks: "Please search for TypeScript files that define Backstage plugins"
AiKA calls the CodeSearch MCP Server to find TypeScript files and returns file paths, repositories, and GitHub links while showing progress as each action completes.