@the_cfdude/productboard-mcp
Version:
Model Context Protocol server for Productboard REST API with dynamic tool loading
133 lines (132 loc) • 3.73 kB
TypeScript
import { SearchParams } from '../types/search-types.js';
/**
* Setup search tool definition
*/
export declare function setupSearchTools(): {
name: string;
description: string;
inputSchema: {
type: string;
properties: {
entityType: {
oneOf: ({
type: string;
enum: string[];
description: string;
items?: undefined;
} | {
type: string;
items: {
type: string;
enum: string[];
};
description: string;
enum?: undefined;
})[];
description: string;
};
filters: {
type: string;
description: string;
additionalProperties: boolean;
};
operators: {
type: string;
description: string;
additionalProperties: {
type: string;
enum: string[];
};
};
output: {
oneOf: ({
type: string;
items: {
type: string;
};
description: string;
enum?: undefined;
} | {
type: string;
enum: string[];
description: string;
items?: undefined;
})[];
description: string;
};
limit: {
type: string;
minimum: number;
maximum: number;
description: string;
default: number;
};
startWith: {
type: string;
minimum: number;
description: string;
default: number;
};
detail: {
type: string;
enum: string[];
description: string;
default: string;
};
includeSubData: {
type: string;
description: string;
default: boolean;
};
includeCustomFields: {
type: string;
description: string;
default: boolean;
};
instance: {
type: string;
description: string;
};
workspaceId: {
type: string;
description: string;
};
patternMatchMode: {
type: string;
enum: string[];
description: string;
default: string;
};
caseSensitive: {
type: string;
description: string;
default: boolean;
};
suggestAlternatives: {
type: string;
description: string;
default: boolean;
};
maxSuggestions: {
type: string;
minimum: number;
maximum: number;
description: string;
default: number;
};
};
required: string[];
};
}[];
/**
* Handle search tool execution
*/
export declare function handleSearchTool(name: string, args: SearchParams): Promise<{
content: {
type: string;
text: string | {
formatted: string;
raw: any;
};
}[];
}>;