import { MCPResponse } from './MCPResponse.js';
/**
* Interface for MCP Tool Controllers
*
* All MCP controllers must implement this interface to ensure
* consistent tool definition and execution patterns
*/
export interface MCPController {
/** MCP tool name (e.g., 'build_xcode', 'install_app') */
readonly name: string;
/** Human-readable description of what the tool does */
readonly description: string;
/** JSON Schema for input validation */
readonly inputSchema: object;
/**
* Get the complete MCP tool definition
* Used by the MCP server to register the tool
*/
getToolDefinition(): {
name: string;
description: string;
inputSchema: object;
};
/**
* Execute the tool with given arguments
* @param args - Unknown input that will be validated
* @returns MCP-formatted response with content array
*/
execute(args: unknown): Promise<MCPResponse>;
}
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Stefan-Nitu/mcp-xcode'
If you have feedback or need assistance with the MCP directory API, please join our Discord server