@grebyn/toolflow-mcp-server
Version:
MCP server for managing other MCP servers - discover, install, organize into bundles, and automate with workflows. Uses StreamableHTTP transport with dual OAuth/API key authentication.
67 lines • 2.26 kB
TypeScript
/**
* API Client for proxying requests to ToolFlow backend
*
* This client forwards authenticated requests to your Vercel API,
* which handles all Supabase operations with proper credentials.
*/
import { UserContext } from '../tools/types.js';
export declare class ApiClient {
private static apiEndpoint;
/**
* Make an authenticated request to the ToolFlow API proxy
*/
private static proxyRequest;
/**
* Bundle operations
*/
static searchBundles(params: {
query?: string;
limit?: number;
offset?: number;
}, context: UserContext): Promise<unknown>;
static createBundle(data: {
name: string;
description: string;
servers: Record<string, any>;
tags?: string[];
install_commands?: string[];
}, context: UserContext): Promise<unknown>;
static updateBundle(bundleId: string, updates: any, context: UserContext): Promise<unknown>;
static getBundleConfig(bundleId: string, context: UserContext): Promise<unknown>;
/**
* Workflow operations
*/
static searchWorkflows(params: {
query?: string;
limit?: number;
offset?: number;
}, context: UserContext): Promise<unknown>;
static createWorkflow(data: {
name: string;
description: string;
required_servers: Record<string, any>;
instructions: any;
tags?: string[];
install_commands?: string[];
}, context: UserContext): Promise<unknown>;
static updateWorkflow(workflowId: string, updates: any, context: UserContext): Promise<unknown>;
static getWorkflow(workflowId: string, context: UserContext): Promise<unknown>;
/**
* Log MCP tool execution
*/
static logExecution(logData: {
tool_name: string;
tool_args?: any;
tool_response?: any;
execution_status: 'success' | 'failure' | 'error';
error_message?: string;
execution_time_ms?: number;
response_size?: number;
transport_type?: string;
session_id?: string;
client_identifier?: string;
ip_address?: string;
user_agent?: string;
}, context: UserContext): Promise<void>;
}
//# sourceMappingURL=api-client.d.ts.map