@utaba/ucm-mcp-server 2.0.0 → 4.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/dist/clients/UcmApiClient.d.ts +1 -1
- package/dist/clients/UcmApiClient.js +1 -1
- package/dist/index.js +1 -1
- package/dist/server/McpServer.js +2 -2
- package/dist/server/ToolRegistry.d.ts +2 -2
- package/dist/tools/base/BaseToolController.d.ts +3 -3
- package/dist/tools/core/DeleteArtifactTool.d.ts +2 -2
- package/dist/tools/core/EditArtifactMetadataTool.d.ts +2 -2
- package/dist/tools/core/GetArtifactTool.d.ts +2 -2
- package/dist/tools/core/GetArtifactVersionsTool.d.ts +2 -2
- package/dist/tools/core/GetChunkTool.d.ts +2 -2
- package/dist/tools/core/ListArtifactsTool.d.ts +2 -2
- package/dist/tools/core/PublishArtifactFromFileTool.d.ts +2 -2
- package/dist/tools/core/PublishArtifactTool.d.ts +2 -2
- package/dist/tools/core/SearchArtifactsTool.d.ts +2 -2
- package/dist/tools/repository/CreateRepositoryTool.d.ts +2 -2
- package/dist/tools/repository/DeleteRepositoryGuidanceTool.d.ts +2 -2
- package/dist/tools/repository/GetRepositoryTool.d.ts +2 -2
- package/dist/tools/repository/UpdateRepositoryTool.d.ts +2 -2
- package/dist/tools/utility/AuthorIndexTool.d.ts +2 -2
- package/dist/tools/utility/AuthorRecentsTool.d.ts +2 -2
- package/dist/tools/utility/HealthCheckController.d.ts +2 -2
- package/dist/tools/utility/HealthCheckController.js +1 -1
- package/dist/tools/utility/ListRepositoriesTool.d.ts +2 -2
- package/dist/tools/utility/QuickstartTool.d.ts +2 -2
- package/dist/tools/utility/QuickstartTool.js +2 -2
- package/dist/tools/utility/SubmitFeedbackTool.d.ts +2 -2
- package/package.json +1 -1
- package/package.json.backup +1 -1
package/README.md
CHANGED
|
@@ -6,7 +6,7 @@ Get your auth token from https://ucm.utaba.ai
|
|
|
6
6
|
|
|
7
7
|
## Configuration
|
|
8
8
|
|
|
9
|
-
- `--auth-token <token>` (required): Authentication token in format `{
|
|
9
|
+
- `--auth-token <token>` (required): Authentication token in format `{apikey}`
|
|
10
10
|
|
|
11
11
|
## Available MCP Tools
|
|
12
12
|
|
|
@@ -14,7 +14,7 @@ The server provides 11 MCP tools following the `ucm_` naming convention:
|
|
|
14
14
|
|
|
15
15
|
### System Tools
|
|
16
16
|
- `ucm_health_check` - Check MCP server and UCM API connectivity
|
|
17
|
-
- `
|
|
17
|
+
- `ucm_connect` - Get the UCM quickstart guide (Tell your AI to load this first)
|
|
18
18
|
|
|
19
19
|
### Discovery Tools
|
|
20
20
|
- `ucm_get_author_index` - Generate dynamic markdown index for an author
|
package/dist/index.js
CHANGED
|
@@ -11,7 +11,7 @@ async function main() {
|
|
|
11
11
|
const program = new Command();
|
|
12
12
|
program
|
|
13
13
|
.name('ucm-mcp-server')
|
|
14
|
-
.description('Universal Context Manager - Read the
|
|
14
|
+
.description('Universal Context Manager - Read the ucm_connect tool first to avoid mistakes')
|
|
15
15
|
.version('1.0.5')
|
|
16
16
|
.option('-u, --ucm-url <url>', 'UCM API base URL (defaults to https://ucm.utaba.ai)')
|
|
17
17
|
.option('-p, --port <port>', 'Server port', '3001')
|
package/dist/server/McpServer.js
CHANGED
|
@@ -2,7 +2,7 @@ import { Server } from '@modelcontextprotocol/sdk/server/index.js';
|
|
|
2
2
|
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
|
|
3
3
|
import { CallToolRequestSchema, ListToolsRequestSchema, } from '@modelcontextprotocol/sdk/types.js';
|
|
4
4
|
import { McpHandler } from './McpHandler.js';
|
|
5
|
-
import {
|
|
5
|
+
import { UcmLocalApiClient } from '../clients/UcmApiClient.js';
|
|
6
6
|
import { ToolRegistry } from './ToolRegistry.js';
|
|
7
7
|
export class McpServer {
|
|
8
8
|
config;
|
|
@@ -14,7 +14,7 @@ export class McpServer {
|
|
|
14
14
|
constructor(config, logger) {
|
|
15
15
|
this.config = config;
|
|
16
16
|
this.logger = logger;
|
|
17
|
-
this.ucmClient = new
|
|
17
|
+
this.ucmClient = new UcmLocalApiClient(config.ucmApiUrl, config.authToken, config.requestTimeout, config.authorId);
|
|
18
18
|
this.toolRegistry = new ToolRegistry(this.ucmClient, this.logger, config.trustedAuthors, config.authorId, config.ucmApiUrl);
|
|
19
19
|
this.handler = new McpHandler(this.toolRegistry, this.logger, config.authorId);
|
|
20
20
|
this.server = new Server({
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { UcmLocalApiClient } from '../clients/UcmApiClient.js';
|
|
2
2
|
import { ILogger } from '../interfaces/ILogger.js';
|
|
3
3
|
export interface ToolInfo {
|
|
4
4
|
name: string;
|
|
@@ -12,7 +12,7 @@ export declare class ToolRegistry {
|
|
|
12
12
|
private authorId?;
|
|
13
13
|
private baseUrl?;
|
|
14
14
|
private tools;
|
|
15
|
-
constructor(ucmClient:
|
|
15
|
+
constructor(ucmClient: UcmLocalApiClient, logger: ILogger, trustedAuthors?: string[], authorId?: string | undefined, baseUrl?: string | undefined);
|
|
16
16
|
private registerTools;
|
|
17
17
|
private registerTool;
|
|
18
18
|
listTools(): Promise<ToolInfo[]>;
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { IMcpTool } from '../../interfaces/IMcpTool.js';
|
|
2
|
-
import {
|
|
2
|
+
import { UcmLocalApiClient } from '../../clients/UcmApiClient.js';
|
|
3
3
|
import { ILogger } from '../../interfaces/ILogger.js';
|
|
4
4
|
export declare abstract class BaseToolController implements IMcpTool {
|
|
5
|
-
protected ucmClient:
|
|
5
|
+
protected ucmClient: UcmLocalApiClient;
|
|
6
6
|
protected logger: ILogger;
|
|
7
7
|
protected publishingAuthorId?: string | undefined;
|
|
8
|
-
constructor(ucmClient:
|
|
8
|
+
constructor(ucmClient: UcmLocalApiClient, logger: ILogger, publishingAuthorId?: string | undefined);
|
|
9
9
|
abstract get name(): string;
|
|
10
10
|
abstract get description(): string;
|
|
11
11
|
abstract get inputSchema(): any;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { BaseToolController } from '../base/BaseToolController.js';
|
|
2
|
-
import {
|
|
2
|
+
import { UcmLocalApiClient } from '../../clients/UcmApiClient.js';
|
|
3
3
|
import { ILogger } from '../../interfaces/ILogger.js';
|
|
4
4
|
export declare class DeleteArtifactTool extends BaseToolController {
|
|
5
|
-
constructor(ucmClient:
|
|
5
|
+
constructor(ucmClient: UcmLocalApiClient, logger: ILogger, publishingAuthorId?: string);
|
|
6
6
|
get name(): string;
|
|
7
7
|
get description(): string;
|
|
8
8
|
get inputSchema(): any;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { BaseToolController } from '../base/BaseToolController.js';
|
|
2
|
-
import {
|
|
2
|
+
import { UcmLocalApiClient } from '../../clients/UcmApiClient.js';
|
|
3
3
|
import { ILogger } from '../../interfaces/ILogger.js';
|
|
4
4
|
export declare class EditArtifactMetadataTool extends BaseToolController {
|
|
5
|
-
constructor(ucmClient:
|
|
5
|
+
constructor(ucmClient: UcmLocalApiClient, logger: ILogger, publishingAuthorId?: string);
|
|
6
6
|
get name(): string;
|
|
7
7
|
get description(): string;
|
|
8
8
|
get inputSchema(): any;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { BaseToolController } from '../base/BaseToolController.js';
|
|
2
|
-
import {
|
|
2
|
+
import { UcmLocalApiClient } from '../../clients/UcmApiClient.js';
|
|
3
3
|
import { ILogger } from '../../interfaces/ILogger.js';
|
|
4
4
|
export declare class GetArtifactTool extends BaseToolController {
|
|
5
5
|
private trustedAuthors;
|
|
6
|
-
constructor(ucmClient:
|
|
6
|
+
constructor(ucmClient: UcmLocalApiClient, logger: ILogger, publishingAuthorId?: string, trustedAuthors?: string[]);
|
|
7
7
|
get name(): string;
|
|
8
8
|
get description(): string;
|
|
9
9
|
get inputSchema(): any;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { BaseToolController } from '../base/BaseToolController.js';
|
|
2
|
-
import {
|
|
2
|
+
import { UcmLocalApiClient } from '../../clients/UcmApiClient.js';
|
|
3
3
|
import { ILogger } from '../../interfaces/ILogger.js';
|
|
4
4
|
export declare class GetArtifactVersionsTool extends BaseToolController {
|
|
5
|
-
constructor(ucmClient:
|
|
5
|
+
constructor(ucmClient: UcmLocalApiClient, logger: ILogger, publishingAuthorId?: string);
|
|
6
6
|
get name(): string;
|
|
7
7
|
get description(): string;
|
|
8
8
|
get inputSchema(): any;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { BaseToolController } from '../base/BaseToolController.js';
|
|
2
|
-
import {
|
|
2
|
+
import { UcmLocalApiClient } from '../../clients/UcmApiClient.js';
|
|
3
3
|
import { ILogger } from '../../interfaces/ILogger.js';
|
|
4
4
|
export declare class GetChunkTool extends BaseToolController {
|
|
5
|
-
constructor(ucmClient:
|
|
5
|
+
constructor(ucmClient: UcmLocalApiClient, logger: ILogger, publishingAuthorId?: string);
|
|
6
6
|
get name(): string;
|
|
7
7
|
get description(): string;
|
|
8
8
|
get inputSchema(): any;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { BaseToolController } from '../base/BaseToolController.js';
|
|
2
|
-
import {
|
|
2
|
+
import { UcmLocalApiClient } from '../../clients/UcmApiClient.js';
|
|
3
3
|
import { ILogger } from '../../interfaces/ILogger.js';
|
|
4
4
|
export declare class ListArtifactsTool extends BaseToolController {
|
|
5
|
-
constructor(ucmClient:
|
|
5
|
+
constructor(ucmClient: UcmLocalApiClient, logger: ILogger, publishingAuthorId?: string);
|
|
6
6
|
get name(): string;
|
|
7
7
|
get description(): string;
|
|
8
8
|
get inputSchema(): any;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { BaseToolController } from '../base/BaseToolController.js';
|
|
2
|
-
import {
|
|
2
|
+
import { UcmLocalApiClient } from '../../clients/UcmApiClient.js';
|
|
3
3
|
import { ILogger } from '../../interfaces/ILogger.js';
|
|
4
4
|
export declare class PublishArtifactFromFileTool extends BaseToolController {
|
|
5
|
-
constructor(ucmClient:
|
|
5
|
+
constructor(ucmClient: UcmLocalApiClient, logger: ILogger, publishingAuthorId?: string);
|
|
6
6
|
get name(): string;
|
|
7
7
|
get description(): string;
|
|
8
8
|
get inputSchema(): any;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { BaseToolController } from '../base/BaseToolController.js';
|
|
2
|
-
import {
|
|
2
|
+
import { UcmLocalApiClient } from '../../clients/UcmApiClient.js';
|
|
3
3
|
import { ILogger } from '../../interfaces/ILogger.js';
|
|
4
4
|
export declare class PublishArtifactTool extends BaseToolController {
|
|
5
|
-
constructor(ucmClient:
|
|
5
|
+
constructor(ucmClient: UcmLocalApiClient, logger: ILogger, publishingAuthorId?: string);
|
|
6
6
|
get name(): string;
|
|
7
7
|
get description(): string;
|
|
8
8
|
get inputSchema(): any;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { BaseToolController } from '../base/BaseToolController.js';
|
|
2
|
-
import {
|
|
2
|
+
import { UcmLocalApiClient } from '../../clients/UcmApiClient.js';
|
|
3
3
|
import { ILogger } from '../../interfaces/ILogger.js';
|
|
4
4
|
export declare class SearchArtifactsTool extends BaseToolController {
|
|
5
|
-
constructor(ucmClient:
|
|
5
|
+
constructor(ucmClient: UcmLocalApiClient, logger: ILogger, publishingAuthorId?: string);
|
|
6
6
|
get name(): string;
|
|
7
7
|
get description(): string;
|
|
8
8
|
get inputSchema(): any;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { BaseToolController } from '../base/BaseToolController.js';
|
|
2
|
-
import {
|
|
2
|
+
import { UcmLocalApiClient } from '../../clients/UcmApiClient.js';
|
|
3
3
|
import { ILogger } from '../../interfaces/ILogger.js';
|
|
4
4
|
export declare class CreateRepositoryTool extends BaseToolController {
|
|
5
|
-
constructor(ucmClient:
|
|
5
|
+
constructor(ucmClient: UcmLocalApiClient, logger: ILogger, publishingAuthorId?: string);
|
|
6
6
|
get name(): string;
|
|
7
7
|
get description(): string;
|
|
8
8
|
get inputSchema(): any;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { BaseToolController } from '../base/BaseToolController.js';
|
|
2
|
-
import {
|
|
2
|
+
import { UcmLocalApiClient } from '../../clients/UcmApiClient.js';
|
|
3
3
|
import { ILogger } from '../../interfaces/ILogger.js';
|
|
4
4
|
export declare class DeleteRepositoryGuidanceTool extends BaseToolController {
|
|
5
5
|
private baseUrl?;
|
|
6
|
-
constructor(ucmClient:
|
|
6
|
+
constructor(ucmClient: UcmLocalApiClient, logger: ILogger, publishingAuthorId?: string, baseUrl?: string | undefined);
|
|
7
7
|
get name(): string;
|
|
8
8
|
get description(): string;
|
|
9
9
|
get inputSchema(): any;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { BaseToolController } from '../base/BaseToolController.js';
|
|
2
|
-
import {
|
|
2
|
+
import { UcmLocalApiClient } from '../../clients/UcmApiClient.js';
|
|
3
3
|
import { ILogger } from '../../interfaces/ILogger.js';
|
|
4
4
|
export declare class GetRepositoryTool extends BaseToolController {
|
|
5
|
-
constructor(ucmClient:
|
|
5
|
+
constructor(ucmClient: UcmLocalApiClient, logger: ILogger, publishingAuthorId?: string);
|
|
6
6
|
get name(): string;
|
|
7
7
|
get description(): string;
|
|
8
8
|
get inputSchema(): any;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { BaseToolController } from '../base/BaseToolController.js';
|
|
2
|
-
import {
|
|
2
|
+
import { UcmLocalApiClient } from '../../clients/UcmApiClient.js';
|
|
3
3
|
import { ILogger } from '../../interfaces/ILogger.js';
|
|
4
4
|
export declare class UpdateRepositoryTool extends BaseToolController {
|
|
5
|
-
constructor(ucmClient:
|
|
5
|
+
constructor(ucmClient: UcmLocalApiClient, logger: ILogger, publishingAuthorId?: string);
|
|
6
6
|
get name(): string;
|
|
7
7
|
get description(): string;
|
|
8
8
|
get inputSchema(): any;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { BaseToolController } from '../base/BaseToolController.js';
|
|
2
|
-
import {
|
|
2
|
+
import { UcmLocalApiClient } from '../../clients/UcmApiClient.js';
|
|
3
3
|
import { ILogger } from '../../interfaces/ILogger.js';
|
|
4
4
|
export declare class AuthorIndexTool extends BaseToolController {
|
|
5
|
-
constructor(ucmClient:
|
|
5
|
+
constructor(ucmClient: UcmLocalApiClient, logger: ILogger, publishingAuthorId?: string);
|
|
6
6
|
get name(): string;
|
|
7
7
|
get description(): string;
|
|
8
8
|
get inputSchema(): any;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { BaseToolController } from '../base/BaseToolController.js';
|
|
2
|
-
import {
|
|
2
|
+
import { UcmLocalApiClient } from '../../clients/UcmApiClient.js';
|
|
3
3
|
import { ILogger } from '../../interfaces/ILogger.js';
|
|
4
4
|
export declare class AuthorRecentsTool extends BaseToolController {
|
|
5
|
-
constructor(ucmClient:
|
|
5
|
+
constructor(ucmClient: UcmLocalApiClient, logger: ILogger, publishingAuthorId?: string);
|
|
6
6
|
get name(): string;
|
|
7
7
|
get description(): string;
|
|
8
8
|
get inputSchema(): any;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { BaseToolController } from '../base/BaseToolController.js';
|
|
2
|
-
import {
|
|
2
|
+
import { UcmLocalApiClient } from '../../clients/UcmApiClient.js';
|
|
3
3
|
import { ILogger } from '../../interfaces/ILogger.js';
|
|
4
4
|
export declare class HealthCheckController extends BaseToolController {
|
|
5
|
-
constructor(ucmClient:
|
|
5
|
+
constructor(ucmClient: UcmLocalApiClient, logger: ILogger, publishingAuthorId?: string);
|
|
6
6
|
get name(): string;
|
|
7
7
|
get description(): string;
|
|
8
8
|
get inputSchema(): any;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { BaseToolController } from '../base/BaseToolController.js';
|
|
2
2
|
//import packageJson from '../../../../publish/package.json' assert { type: 'json' };
|
|
3
|
-
const version = '
|
|
3
|
+
const version = '3.0.0'; //TODO: tried to sync this with packageJson but it didn't work.
|
|
4
4
|
export class HealthCheckController extends BaseToolController {
|
|
5
5
|
constructor(ucmClient, logger, publishingAuthorId) {
|
|
6
6
|
super(ucmClient, logger, publishingAuthorId);
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { BaseToolController } from '../base/BaseToolController.js';
|
|
2
|
-
import {
|
|
2
|
+
import { UcmLocalApiClient } from '../../clients/UcmApiClient.js';
|
|
3
3
|
import { ILogger } from '../../interfaces/ILogger.js';
|
|
4
4
|
export declare class ListRepositoriesTool extends BaseToolController {
|
|
5
|
-
constructor(ucmClient:
|
|
5
|
+
constructor(ucmClient: UcmLocalApiClient, logger: ILogger, publishingAuthorId?: string);
|
|
6
6
|
get name(): string;
|
|
7
7
|
get description(): string;
|
|
8
8
|
get inputSchema(): any;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { BaseToolController } from '../base/BaseToolController.js';
|
|
2
|
-
import {
|
|
2
|
+
import { UcmLocalApiClient } from '../../clients/UcmApiClient.js';
|
|
3
3
|
import { ILogger } from '../../interfaces/ILogger.js';
|
|
4
4
|
export declare class QuickstartTool extends BaseToolController {
|
|
5
|
-
constructor(ucmClient:
|
|
5
|
+
constructor(ucmClient: UcmLocalApiClient, logger: ILogger, publishingAuthorId?: string);
|
|
6
6
|
get name(): string;
|
|
7
7
|
get description(): string;
|
|
8
8
|
get inputSchema(): any;
|
|
@@ -4,10 +4,10 @@ export class QuickstartTool extends BaseToolController {
|
|
|
4
4
|
super(ucmClient, logger, publishingAuthorId);
|
|
5
5
|
}
|
|
6
6
|
get name() {
|
|
7
|
-
return '
|
|
7
|
+
return 'ucm_connect';
|
|
8
8
|
}
|
|
9
9
|
get description() {
|
|
10
|
-
return 'CRITICAL MANDATORY READING: READ THIS FIRST before using any other tools as it will guide you to understand how to use the UCM system and MCP tools effectively';
|
|
10
|
+
return 'CRITICAL MANDATORY READING QUICKSTART: READ THIS FIRST before using any other tools as it will guide you to understand how to use the UCM system and MCP tools effectively';
|
|
11
11
|
}
|
|
12
12
|
get inputSchema() {
|
|
13
13
|
return {
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { BaseToolController } from '../base/BaseToolController.js';
|
|
2
|
-
import {
|
|
2
|
+
import { UcmLocalApiClient } from '../../clients/UcmApiClient.js';
|
|
3
3
|
import { ILogger } from '../../interfaces/ILogger.js';
|
|
4
4
|
export declare class SubmitFeedbackTool extends BaseToolController {
|
|
5
|
-
constructor(ucmClient:
|
|
5
|
+
constructor(ucmClient: UcmLocalApiClient, logger: ILogger, publishingAuthorId?: string);
|
|
6
6
|
get name(): string;
|
|
7
7
|
get description(): string;
|
|
8
8
|
get inputSchema(): any;
|
package/package.json
CHANGED