mcp-server-ddd-sample
Version:
A sample of MCP implementation using DDD structure with some APIs call.
32 lines (31 loc) • 1.14 kB
JavaScript
import { formatResponse } from "../helpers/format.js";
export class GeneralService {
requestService;
constructor(requestService) {
this.requestService = requestService;
}
async getPrices() {
const pricesPossible = ["USD", "EUR", "GBP", "CAD", "CHF", "AUD", "JPY"];
const pricesData = await this.requestService.getPrices();
if (!pricesData) {
return "Failed to retrieve prices data";
}
let msg = "";
pricesPossible.forEach((element) => {
if (!pricesData[element]) {
msg += `Price in ${element} is not available.\n`;
}
else {
msg += `price in ${element}: ${pricesData?.[element] || "N/A"}\n`;
}
});
msg += `Time: ${pricesData.time
? new Date(pricesData.time * 1000).toLocaleString()
: "N/A"}`;
return msg.trim();
}
async getDifficultyAdjustment() {
const difficultyData = await this.requestService.getDifficultyAdjustment();
return formatResponse("Bitcoin Difficulty Adjustment", difficultyData);
}
}