mcp-server-ddd-sample
Version:
A sample of MCP implementation using DDD structure with some APIs call.
56 lines (55 loc) • 1.85 kB
JavaScript
export class BitcoinToolsController {
server;
generalService;
feesService;
constructor(server, generalService, feesService) {
this.server = server;
this.generalService = generalService;
this.feesService = feesService;
this.registerTools();
}
registerTools() {
this.registerGetPriceToolhandler();
this.registerGetDifficultyAdjustmenthandler();
this.registerGetRecommendedFeeshandler();
}
registerGetPriceToolhandler() {
this.server.tool("get-prices", "Get prices for Bitcoin in various currencies", async () => {
const pricesText = await this.generalService.getPrices();
return {
content: [
{
type: "text",
text: pricesText,
},
],
};
});
}
registerGetDifficultyAdjustmenthandler() {
this.server.tool("get-difficulty-adjustment", "Get difficulty adjustment for Bitcoin", async () => {
const difficultyAdjustmentText = await this.generalService.getDifficultyAdjustment();
return {
content: [
{
type: "text",
text: difficultyAdjustmentText,
},
],
};
});
}
registerGetRecommendedFeeshandler() {
this.server.tool("get-recommended-fees", "Get recommended fees for Bitcoin", async () => {
const recommendedText = await this.feesService.getRecommended();
return {
content: [
{
type: "text",
text: recommendedText,
},
],
};
});
}
}