uniderp-mcp
Version:
> A plug-and-play MCP tool server to **send ETH**, **transfer ERC-20 tokens**, **deploy tokens**, and **interact with smart contracts** on the **UNICHAIN** — built for **Claude Desktop**, **AI agents**, and **developers.**
44 lines (43 loc) • 1.95 kB
JavaScript
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
import dotenv from "dotenv";
dotenv.config();
// Import tool registrations
import { registerTransferNativeToken } from "./tools/transferNativeToken.js";
import { registerTransferERC20Token } from "./tools/transferERC20Token.js";
import { registerGetWalletInfo } from "./tools/getWalletInfo.js";
import { registerGoplusSecurityCheck } from "./tools/goplusSecurityCheck.js";
import { registerUniswapTrade } from "./tools/uniswapTrade.js";
import { registerUniderpBuyMeme } from "./tools/uniderpBuyMeme.js";
import { registerUniderpSellMeme } from "./tools/uniderpSellMeme.js";
import { registerUniswapMyPosition } from "./tools/uniswapMyPosition.js";
import { registerGenerateImage } from "./tools/uniderpGenMemeImg.js";
import { registerUniderpCreateMeme } from "./tools/uniderpCreateMeme.js";
import { registerUniderpListMeme } from "./tools/uniderpListMeme.js";
// Main server entry
export async function main() {
const server = new McpServer({
name: "uniderp-mcp",
version: "1.0.0",
});
// Register all tools
registerTransferNativeToken(server);
registerTransferERC20Token(server);
registerGetWalletInfo(server);
registerGoplusSecurityCheck(server);
registerUniswapTrade(server);
registerUniderpBuyMeme(server);
registerUniderpSellMeme(server);
registerUniswapMyPosition(server);
registerGenerateImage(server);
registerUniderpCreateMeme(server);
registerUniderpListMeme(server);
const transport = new StdioServerTransport();
transport.onmessage = (message /** @type {JSONRPCMessage} */) => {
console.log("📩 Received message:", JSON.stringify(message, null, 2));
};
transport.onerror = (error) => {
console.error("🚨 Transport error:", error);
};
await server.connect(transport);
}