We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/j0hanz/super-fetch-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server
import type { ServerResult } from '@modelcontextprotocol/sdk/types.js';
import type { ToolHandlerExtra } from '../lib/mcp-tools.js';
export interface TaskCapableToolDescriptor<TArgs = unknown> {
name: string;
parseArguments: (args: unknown) => TArgs;
execute: (args: TArgs, extra?: ToolHandlerExtra) => Promise<ServerResult>;
}
const taskCapableTools = new Map<string, TaskCapableToolDescriptor>();
export function registerTaskCapableTool<TArgs>(
descriptor: TaskCapableToolDescriptor<TArgs>
): void {
taskCapableTools.set(
descriptor.name,
descriptor as TaskCapableToolDescriptor
);
}
export function unregisterTaskCapableTool(name: string): void {
taskCapableTools.delete(name);
}
export function getTaskCapableTool(
name: string
): TaskCapableToolDescriptor | undefined {
return taskCapableTools.get(name);
}
export function hasTaskCapableTool(name: string): boolean {
return taskCapableTools.has(name);
}