We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/DarkEden-coding/CodeStructureMCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server
sample.js•2.1 KiB
// Sample JavaScript file for testing code structure analysis
/**
* Calculate the sum of an array of numbers.
* @param {number[]} numbers - Array of numbers to sum.
* @returns {number} The sum of all numbers.
*/
function calculateSum(numbers) {
let total = 0;
for (const num of numbers) {
total += num;
}
return total;
}
/**
* A class for processing data.
*/
class DataProcessor {
/**
* Initialize the data processor.
* @param {Object} config - Optional configuration object.
*/
constructor(config = {}) {
this.config = config;
}
/**
* Process a single data item.
* @param {Object} item - The data item to process.
* @returns {Object} The processed item.
*/
processItem(item) {
const result = { ...item };
result.processed = true;
return result;
}
/**
* Process a batch of data items.
* @param {Object[]} items - List of data items to process.
* @returns {Object[]} List of processed items.
*/
processBatch(items) {
const results = [];
for (const item of items) {
const processed = this.processItem(item);
results.push(processed);
}
return results;
}
}
/**
* An advanced data processor with additional features.
*/
class AdvancedProcessor extends DataProcessor {
constructor(config = {}) {
super(config);
this.stats = { processed: 0, errors: 0 };
}
/**
* Process items while tracking statistics.
* @param {Object[]} items - List of data items to process.
* @returns {Object[]} List of processed items.
*/
processWithStats(items) {
const updateStats = (success) => {
if (success) {
this.stats.processed++;
} else {
this.stats.errors++;
}
};
const results = [];
for (const item of items) {
try {
const processed = this.processItem(item);
updateStats(true);
results.push(processed);
} catch (error) {
updateStats(false);
}
}
return results;
}
/**
* Get processing statistics.
* @returns {Object} Object with processing statistics.
*/
getStats() {
return { ...this.stats };
}
}