@mseep/atlas-mcp-server
Version:
A Model Context Protocol (MCP) server for ATLAS, a Neo4j-powered task management system for LLM Agents - implementing a three-tier architecture (Projects, Tasks, Knowledge) to manage complex workflows.
38 lines (37 loc) • 1.55 kB
TypeScript
import { McpToolResponse } from "../types/mcp.js";
/**
* Base interface for formatting MCP tool responses into rich display formats
*/
export interface ResponseFormatter<T> {
/**
* Format a raw response into a well-structured display format
* @param data The parsed data from the tool response
* @returns Formatted string (typically markdown) for rich display
*/
format(data: T): string;
}
/**
* Creates an MCP tool response with both JSON and formatted display views
*
* @param data The raw data object to format
* @param formatter The formatter to use for rich display
* @param isError Whether this response represents an error
* @returns An MCP tool response with original JSON and formatted display
*/
export declare function createFormattedResponse<T>(data: T, formatter: ResponseFormatter<T>, isError?: boolean): McpToolResponse;
/**
* Utility function to generate a markdown table from an object
*
* @param obj Object to convert to a table
* @param headers Optional custom headers (defaults to keys)
* @returns Markdown table string
*/
export declare function objectToMarkdownTable(obj: Record<string, any>, headers?: Record<string, string>): string;
/**
* Utility function to generate markdown tables from an array of objects
*
* @param data Array of objects to convert to tables
* @param headers Optional custom headers (defaults to keys)
* @returns Markdown tables string
*/
export declare function arrayToMarkdownTables(data: Record<string, any>[], headers?: Record<string, string>): string;