Skip to main content
Glama

MCP Agent TypeScript Port

by waldzellai
macro.js1.14 kB
const { MacroError, createMacro } = require("babel-plugin-macros"); const dedent = require("./dist/dedent.js").default; module.exports = createMacro(prevalMacros); function prevalMacros({ babel, references, state }) { references.default.forEach((referencePath) => { if (referencePath.parentPath.type === "TaggedTemplateExpression") { asTag(referencePath.parentPath.get("quasi"), state, babel); } else if (referencePath.parentPath.type === "CallExpression") { asFunction(referencePath.parentPath.get("arguments"), state, babel); } else { throw new MacroError( `dedent.macro can only be used as tagged template expression or function call. You tried ${referencePath.parentPath.type}.`, ); } }); } function asTag(quasiPath, _, babel) { const string = quasiPath.parentPath.get("quasi").evaluate().value; const { types: t } = babel; quasiPath.parentPath.replaceWith(t.stringLiteral(dedent(string))); } function asFunction(argumentsPaths, _, babel) { const string = argumentsPaths[0].evaluate().value; const { types: t } = babel; argumentsPaths[0].parentPath.replaceWith(t.stringLiteral(dedent(string))); }

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/waldzellai/mcp-agent-ts'

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