@mseep/doit-mcp-server
Version:
DoiT official MCP Server
377 lines (376 loc) • 13.1 kB
TypeScript
import { z } from "zod";
export declare const ReportsArgumentsSchema: z.ZodObject<{
filter: z.ZodOptional<z.ZodString>;
pageToken: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
filter?: string | undefined;
pageToken?: string | undefined;
}, {
filter?: string | undefined;
pageToken?: string | undefined;
}>;
export declare const RunQueryArgumentsSchema: z.ZodObject<{
config: z.ZodRecord<z.ZodString, z.ZodAny>;
}, "strip", z.ZodTypeAny, {
config: Record<string, any>;
}, {
config: Record<string, any>;
}>;
export declare const GetReportResultsArgumentsSchema: z.ZodObject<{
id: z.ZodString;
}, "strip", z.ZodTypeAny, {
id: string;
}, {
id: string;
}>;
export interface Report {
id: string;
reportName: string;
owner: string;
type: string;
createTime: number;
updateTime: number;
urlUI: string;
}
export interface ReportsResponse {
pageToken: any;
rowCount: number;
reports: Report[];
}
export interface QueryResult {
schema: Array<{
name: string;
type: string;
}>;
rows: Array<Array<any>>;
cacheHit: boolean;
}
export interface QueryResponse {
result: QueryResult;
error?: string;
}
export interface ReportResultSchema {
name: string;
type: string;
}
export interface ReportResult {
schema: ReportResultSchema[];
mlFeatures?: string[];
rows: Array<Array<any>>;
forecastRows?: Array<Array<any>>;
}
export interface GetReportResultsResponse {
id: string;
reportName: string;
owner: string;
type: string;
createTime: number;
updateTime: number;
urlUI: string;
result: ReportResult;
}
export declare const reportsTool: {
name: string;
description: string;
inputSchema: {
type: string;
properties: {
filter: {
type: string;
description: string;
};
pageToken: {
type: string;
description: string;
};
};
};
};
export declare const runQueryTool: {
name: string;
description: string;
inputSchema: {
type: string;
properties: {
config: {
type: string;
description: string;
properties: {
metric: {
type: string;
description: string;
properties: {
type: {
type: string;
enum: string[];
};
value: {
type: string;
description: string;
};
};
};
metricFilter: {
type: string;
description: string;
properties: {
metric: {
type: string;
description: string;
properties: {
type: {
type: string;
enum: string[];
};
value: {
type: string;
};
};
};
operator: {
type: string;
enum: string[];
description: string;
};
values: {
type: string;
items: {
type: string;
};
description: string;
};
};
};
aggregation: {
type: string;
enum: string[];
description: string;
};
timeInterval: {
type: string;
enum: string[];
description: string;
};
dimensions: {
type: string;
description: string;
items: {
type: string;
properties: {
id: {
type: string;
};
type: {
type: string;
};
};
};
};
timeRange: {
type: string;
description: string;
properties: {
amount: {
type: string;
};
includeCurrent: {
type: string;
};
mode: {
type: string;
enum: string[];
};
unit: {
type: string;
enum: string[];
};
};
};
includePromotionalCredits: {
type: string;
description: string;
};
includeSubtotals: {
type: string;
description: string;
};
filters: {
type: string;
description: string;
items: {
type: string;
properties: {
id: {
type: string;
description: string;
};
type: {
type: string;
enum: string[];
};
inverse: {
type: string;
description: string;
};
values: {
type: string;
items: {
type: string;
};
description: string;
};
};
};
};
group: {
type: string;
description: string;
items: {
type: string;
properties: {
id: {
type: string;
};
type: {
type: string;
};
limit: {
type: string;
properties: {
metric: {
type: string;
properties: {
type: {
type: string;
};
value: {
type: string;
};
};
};
sort: {
type: string;
};
value: {
type: string;
};
};
};
};
};
};
layout: {
type: string;
enum: string[];
description: string;
};
displayValues: {
type: string;
enum: string[];
description: string;
};
currency: {
type: string;
description: string;
};
dataSource: {
type: string;
enum: string[];
description: string;
};
splits: {
type: string;
description: string;
items: {
type: string;
properties: {
id: {
type: string;
};
type: {
type: string;
};
includeOrigin: {
type: string;
};
mode: {
type: string;
enum: string[];
};
targets: {
type: string;
items: {
type: string;
properties: {
id: {
type: string;
};
type: {
type: string;
};
value: {
type: string;
};
};
};
};
};
};
};
customTimeRange: {
type: string;
description: string;
properties: {
from: {
type: string;
format: string;
description: string;
};
to: {
type: string;
format: string;
description: string;
};
};
};
};
};
};
required: string[];
};
};
export declare const getReportResultsTool: {
name: string;
description: string;
inputSchema: {
type: string;
properties: {
id: {
type: string;
description: string;
};
};
required: string[];
};
};
export declare function formatReport(report: Report): string;
export declare function formatQueryResult(queryResult: QueryResult): string;
export declare function handleReportsRequest(args: any, token: string): Promise<{
content: {
type: string;
text: string;
}[];
}>;
export declare function handleRunQueryRequest(args: any, token: string): Promise<{
content: {
type: string;
text: string;
}[];
}>;
export declare function formatReportResults(report: GetReportResultsResponse): string;
export declare function handleGetReportResultsRequest(args: any, token: string): Promise<{
content: {
type: string;
text: string;
}[];
}>;