bc-code-intelligence-mcp
Version:
BC Code Intelligence MCP Server - Complete Specialist Bundle with AI-driven expert consultation, seamless handoffs, and context-preserving workflows
96 lines • 3.83 kB
TypeScript
/**
* Workspace management tools
* Handles workspace root configuration and MCP ecosystem awareness
*/
import { CallToolRequest } from '@modelcontextprotocol/sdk/types.js';
/**
* Known Business Central MCP servers and their capabilities
*/
export declare const KNOWN_BC_MCPS: {
readonly 'bc-code-intelligence-mcp': "BC development knowledge with 14 specialist AI personas";
readonly 'al-dependency-mcp-server': "AL workspace symbol and dependency analysis from .app files";
readonly 'serena-mcp': "Multi-language LSP-based coding assistant with AL Language Server support";
readonly 'al-objid-mcp-server': "AL object ID collision prevention and management (Object ID Ninja)";
readonly 'bc-telemetry-buddy': "BC telemetry collection, KQL query generation, and performance analysis";
readonly 'azure-devops-mcp': "Azure DevOps integration (work items, repos, pipelines, wiki)";
readonly 'clockify-mcp': "Clockify time tracking and project management integration";
readonly 'nab-al-tools-mcp': "XLIFF/XLF translation tooling for AL projects";
};
/**
* Map of signature tools to their MCP server
* Use this to discover which MCP servers are available by checking for these tools
*/
export declare const MCP_TOOL_SIGNATURES: {
readonly search_telemetry_traces: "bc-telemetry-buddy";
readonly generate_kql_query: "bc-telemetry-buddy";
readonly analyze_performance_traces: "bc-telemetry-buddy";
readonly reserve_object_ids: "al-objid-mcp-server";
readonly check_object_id_collision: "al-objid-mcp-server";
readonly get_next_object_id: "al-objid-mcp-server";
readonly analyze_dependencies: "al-dependency-mcp-server";
readonly get_workspace_symbols: "al-dependency-mcp-server";
readonly find_references: "al-dependency-mcp-server";
readonly get_lsp_diagnostics: "serena-mcp";
readonly format_document: "serena-mcp";
readonly get_code_actions: "serena-mcp";
readonly create_work_item: "azure-devops-mcp";
readonly query_work_items: "azure-devops-mcp";
readonly get_pipeline_runs: "azure-devops-mcp";
readonly track_time_entry: "clockify-mcp";
readonly get_time_entries: "clockify-mcp";
readonly translate_xliff: "nab-al-tools-mcp";
readonly export_translations: "nab-al-tools-mcp";
};
export type KnownMcpServerId = keyof typeof KNOWN_BC_MCPS;
export interface WorkspaceInfo {
workspace_root: string | null;
available_mcps: string[];
}
export interface WorkspaceToolsContext {
setWorkspaceInfo: (path: string, availableMcps?: string[]) => Promise<{
success: boolean;
message: string;
reloaded: boolean;
}>;
getWorkspaceInfo: () => WorkspaceInfo;
}
export declare class WorkspaceTools {
private context;
constructor(context: WorkspaceToolsContext);
getToolDefinitions(): ({
name: string;
description: string;
inputSchema: {
type: string;
properties: {
workspace_root: {
type: string;
description: string;
};
available_mcps: {
type: string;
items: {
type: string;
};
description: string;
};
};
required: string[];
};
} | {
name: string;
description: string;
inputSchema: {
type: string;
properties: {
workspace_root?: undefined;
available_mcps?: undefined;
};
required: any[];
};
})[];
handleToolCall(request: CallToolRequest): Promise<any>;
private handleSetWorkspaceInfo;
private handleGetWorkspaceInfo;
}
//# sourceMappingURL=workspace-tools.d.ts.map