@@ -1,5 +1,5 @@
|
||||
---
|
||||
'@backstage/plugin-mcp-backend': minor
|
||||
'@backstage/plugin-mcp-actions-backend': minor
|
||||
---
|
||||
|
||||
Initial implementation of an `mcp` backend
|
||||
|
||||
@@ -47,7 +47,7 @@
|
||||
"@backstage/plugin-events-backend": "workspace:^",
|
||||
"@backstage/plugin-events-backend-module-google-pubsub": "workspace:^",
|
||||
"@backstage/plugin-kubernetes-backend": "workspace:^",
|
||||
"@backstage/plugin-mcp-backend": "workspace:^",
|
||||
"@backstage/plugin-mcp-actions-backend": "workspace:^",
|
||||
"@backstage/plugin-notifications-backend": "workspace:^",
|
||||
"@backstage/plugin-permission-backend": "workspace:^",
|
||||
"@backstage/plugin-permission-backend-module-allow-all-policy": "workspace:^",
|
||||
|
||||
@@ -62,5 +62,5 @@ backend.add(import('@backstage/plugin-notifications-backend'));
|
||||
backend.add(import('./instanceMetadata'));
|
||||
|
||||
backend.add(import('@backstage/plugin-events-backend-module-google-pubsub'));
|
||||
backend.add(import('@backstage/plugin-mcp-backend'));
|
||||
backend.add(import('@backstage/plugin-mcp-actions-backend'));
|
||||
backend.start();
|
||||
|
||||
@@ -4,11 +4,11 @@ This plugin backend was templated using the Backstage CLI. You should replace th
|
||||
|
||||
## Installation
|
||||
|
||||
This plugin is installed via the `@backstage/plugin-mcp-backend` package. To install it to your backend package, run the following command:
|
||||
This plugin is installed via the `@backstage/plugin-mcp-actions-backend` package. To install it to your backend package, run the following command:
|
||||
|
||||
```bash
|
||||
# From your root directory
|
||||
yarn --cwd packages/backend add @backstage/plugin-mcp-backend
|
||||
yarn --cwd packages/backend add @backstage/plugin-mcp-actions-backend
|
||||
```
|
||||
|
||||
Then add the plugin to your backend in `packages/backend/src/index.ts`:
|
||||
@@ -16,7 +16,7 @@ Then add the plugin to your backend in `packages/backend/src/index.ts`:
|
||||
```ts
|
||||
const backend = createBackend();
|
||||
// ...
|
||||
backend.add(import('@backstage/plugin-mcp-backend'));
|
||||
backend.add(import('@backstage/plugin-mcp-actions-backend'));
|
||||
```
|
||||
|
||||
## Development
|
||||
+2
-2
@@ -1,8 +1,8 @@
|
||||
apiVersion: backstage.io/v1alpha1
|
||||
kind: Component
|
||||
metadata:
|
||||
name: backstage-plugin-mcp-backend
|
||||
title: '@backstage/plugin-mcp-backend'
|
||||
name: backstage-plugin-mcp-actions-backend
|
||||
title: '@backstage/plugin-mcp-actions-backend'
|
||||
spec:
|
||||
lifecycle: experimental
|
||||
type: backstage-backend-plugin
|
||||
@@ -1,11 +1,11 @@
|
||||
{
|
||||
"name": "@backstage/plugin-mcp-backend",
|
||||
"name": "@backstage/plugin-mcp-actions-backend",
|
||||
"version": "0.0.0",
|
||||
"backstage": {
|
||||
"role": "backend-plugin",
|
||||
"pluginId": "mcp",
|
||||
"pluginPackages": [
|
||||
"@backstage/plugin-mcp-backend"
|
||||
"@backstage/plugin-mcp-actions-backend"
|
||||
]
|
||||
},
|
||||
"publishConfig": {
|
||||
@@ -16,7 +16,7 @@
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/backstage/backstage",
|
||||
"directory": "plugins/mcp-backend"
|
||||
"directory": "plugins/mcp-actions-backend"
|
||||
},
|
||||
"license": "Apache-2.0",
|
||||
"main": "src/index.ts",
|
||||
@@ -1,4 +1,4 @@
|
||||
## API Report File for "@backstage/plugin-mcp-backend"
|
||||
## API Report File for "@backstage/plugin-mcp-actions-backend"
|
||||
|
||||
> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/).
|
||||
|
||||
+2
-2
@@ -82,7 +82,7 @@ describe('Mcp Backend', () => {
|
||||
it('should support streamable spec', async () => {
|
||||
const { client, serverAddress } = await getContext();
|
||||
const transport = new StreamableHTTPClientTransport(
|
||||
new URL(`${serverAddress}/api/mcp`),
|
||||
new URL(`${serverAddress}/api/mcp-actions/v1`),
|
||||
);
|
||||
|
||||
await client.connect(transport);
|
||||
@@ -134,7 +134,7 @@ describe('Mcp Backend', () => {
|
||||
it('should support sse spec', async () => {
|
||||
const { client, serverAddress } = await getContext();
|
||||
const transport = new SSEClientTransport(
|
||||
new URL(`${serverAddress}/api/mcp/sse`),
|
||||
new URL(`${serverAddress}/api/mcp-actions/v1/sse`),
|
||||
);
|
||||
|
||||
await client.connect(transport);
|
||||
@@ -32,7 +32,7 @@ import {
|
||||
* @public
|
||||
*/
|
||||
export const mcpPlugin = createBackendPlugin({
|
||||
pluginId: 'mcp',
|
||||
pluginId: 'mcp-actions',
|
||||
register(env) {
|
||||
env.registerInit({
|
||||
deps: {
|
||||
@@ -62,8 +62,8 @@ export const mcpPlugin = createBackendPlugin({
|
||||
const router = Router();
|
||||
router.use(json());
|
||||
|
||||
router.use('/sse', sseRouter);
|
||||
router.use('/', streamableRouter);
|
||||
router.use('/v1/sse', sseRouter);
|
||||
router.use('/v1', streamableRouter);
|
||||
|
||||
httpRouter.use(router);
|
||||
},
|
||||
+1
-1
@@ -21,7 +21,7 @@ import {
|
||||
} from '@modelcontextprotocol/sdk/types.js';
|
||||
import { JsonObject } from '@backstage/types';
|
||||
import { ActionsService } from '@backstage/backend-plugin-api/alpha';
|
||||
import { version } from '@backstage/plugin-mcp-backend/package.json';
|
||||
import { version } from '@backstage/plugin-mcp-actions-backend/package.json';
|
||||
|
||||
export class McpService {
|
||||
constructor(private readonly actions: ActionsService) {}
|
||||
@@ -7099,9 +7099,9 @@ __metadata:
|
||||
languageName: unknown
|
||||
linkType: soft
|
||||
|
||||
"@backstage/plugin-mcp-backend@workspace:^, @backstage/plugin-mcp-backend@workspace:plugins/mcp-backend":
|
||||
"@backstage/plugin-mcp-actions-backend@workspace:^, @backstage/plugin-mcp-actions-backend@workspace:plugins/mcp-actions-backend":
|
||||
version: 0.0.0-use.local
|
||||
resolution: "@backstage/plugin-mcp-backend@workspace:plugins/mcp-backend"
|
||||
resolution: "@backstage/plugin-mcp-actions-backend@workspace:plugins/mcp-actions-backend"
|
||||
dependencies:
|
||||
"@backstage/backend-defaults": "workspace:^"
|
||||
"@backstage/backend-plugin-api": "workspace:^"
|
||||
@@ -31365,7 +31365,7 @@ __metadata:
|
||||
"@backstage/plugin-events-backend": "workspace:^"
|
||||
"@backstage/plugin-events-backend-module-google-pubsub": "workspace:^"
|
||||
"@backstage/plugin-kubernetes-backend": "workspace:^"
|
||||
"@backstage/plugin-mcp-backend": "workspace:^"
|
||||
"@backstage/plugin-mcp-actions-backend": "workspace:^"
|
||||
"@backstage/plugin-notifications-backend": "workspace:^"
|
||||
"@backstage/plugin-permission-backend": "workspace:^"
|
||||
"@backstage/plugin-permission-backend-module-allow-all-policy": "workspace:^"
|
||||
|
||||
Reference in New Issue
Block a user