perplexity-mcp-server
Version:
A Perplexity API Model Context Protocol (MCP) server that unlocks Perplexity's search-augmented AI capabilities for LLM agents. Features robust error handling, secure input validation, and transparent reasoning with the showThinking parameter. Built with
50 lines (49 loc) • 1.71 kB
JavaScript
import { logger } from './logger.js';
import { generateUUID } from './idGenerator.js'; // Import generateUUID
// Direct instance for request context utilities
const requestContextServiceInstance = {
config: {},
/**
* Configure service settings
* @param config New configuration
* @returns Updated configuration
*/
configure(config) {
this.config = {
...this.config,
...config
};
logger.debug('RequestContext configuration updated', { config: this.config });
return { ...this.config };
},
/**
* Get current configuration
* @returns Current configuration
*/
getConfig() {
return { ...this.config };
},
/**
* Create a request context with unique ID and timestamp
* @param additionalContext Additional context properties
* @returns Request context object
*/
createRequestContext(additionalContext = {}) {
const requestId = generateUUID(); // Use imported generateUUID
const timestamp = new Date().toISOString();
return {
requestId,
timestamp,
...additionalContext
};
},
// generateSecureRandomString function removed as it was unused and redundant
};
// Initialize logger message
logger.debug('RequestContext service initialized');
// Export the instance directly
export const requestContextService = requestContextServiceInstance;
// Removed delegate functions and default export for simplicity.
// Users should import and use `requestContextService` directly.
// e.g., import { requestContextService } from './requestContext.js';
// requestContextService.createRequestContext();