Skip to main content
Glama

IT Tools MCP Server

index.ts2.73 kB
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js"; import { z } from "zod"; export function registerEncodeHtmlEntities(server: McpServer) { server.registerTool("encode_html_entities", { description: "Extended HTML entity encoding/decoding", inputSchema: { text: z.string().describe("Text to encode or decode"), operation: z.enum(["encode", "decode"]).describe("Operation to perform"), }, // VS Code compliance annotations annotations: { title: "Encode Html Entities", description: "Extended HTML entity encoding/decoding", readOnlyHint: false } }, async ({ text, operation }) => { try { if (operation === "encode") { const encoded = text .replace(/&/g, '&amp;') .replace(/</g, '&lt;') .replace(/>/g, '&gt;') .replace(/"/g, '&quot;') .replace(/'/g, '&#39;') .replace(/©/g, '&copy;') .replace(/®/g, '&reg;') .replace(/™/g, '&trade;') .replace(/€/g, '&euro;') .replace(/£/g, '&pound;') .replace(/¥/g, '&yen;') .replace(/§/g, '&sect;') .replace(/¶/g, '&para;') .replace(/†/g, '&dagger;') .replace(/‡/g, '&Dagger;'); return { content: [ { type: "text", text: `HTML entities encoded: ${encoded}`, }, ], }; } else { // Proper HTML decoding order: decode &amp; LAST to prevent double-unescaping const decoded = text .replace(/&lt;/g, '<') .replace(/&gt;/g, '>') .replace(/&quot;/g, '"') .replace(/&#39;/g, "'") .replace(/&copy;/g, '©') .replace(/&reg;/g, '®') .replace(/&trade;/g, '™') .replace(/&euro;/g, '€') .replace(/&pound;/g, '£') .replace(/&yen;/g, '¥') .replace(/&sect;/g, '§') .replace(/&para;/g, '¶') .replace(/&dagger;/g, '†') .replace(/&Dagger;/g, '‡') .replace(/&amp;/g, '&'); // Decode ampersand LAST return { content: [ { type: "text", text: `HTML entities decoded: ${decoded}`, }, ], }; } } catch (error) { return { content: [ { type: "text", text: `Error processing HTML entities: ${error instanceof Error ? error.message : 'Unknown error'}`, }, ], }; } } ); }

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/wrenchpilot/it-tools-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server