Skip to main content
Glama

verify-message

Confirm the authenticity of a signed message by verifying its signature against the provided Ethereum address, ensuring message integrity and origin.

Instructions

Verify that a message was signed by the provided address.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
addressYesThe Ethereum address that signed the original message.
messageYesThe message to be verified.
signatureYesThe signature that was generated by signing the message with the address's signer.

Implementation Reference

  • The execute handler for the verify-message tool, which uses wagmi's verifyMessage to verify the signature and returns the address as text.
    execute: async (args) => { const result = await verifyMessage(wagmiConfig, args); return { content: [ { type: "text", text: result.toString(), }, ], }; },
  • Zod input schema defining address, message, and signature parameters for the tool.
    parameters: z.object({ address: Address.describe("The Ethereum address that signed the original message."), message: z.string().describe("The message to be verified."), signature: Signature.describe("The signature that was generated by signing the message with the address's signer."), }),
  • The registration function that adds the verify-message tool to the FastMCP server.
    export function registerVerifyMessageTools(server: FastMCP, wagmiConfig: Config): void { server.addTool({ name: "verify-message", description: "Verify that a message was signed by the provided address.", parameters: z.object({ address: Address.describe("The Ethereum address that signed the original message."), message: z.string().describe("The message to be verified."), signature: Signature.describe("The signature that was generated by signing the message with the address's signer."), }), execute: async (args) => { const result = await verifyMessage(wagmiConfig, args); return { content: [ { type: "text", text: result.toString(), }, ], }; }, }); };
  • Invocation of the verify-message tool registration during overall tools setup.
    registerVerifyMessageTools(server, wagmiConfig);
  • Helper Zod schema for validating EVM signatures used in verify-message tool.
    const regex = /^0x[a-fA-F0-9]+$/; if (!regex.test(val)) { ctx.addIssue({ code: z.ZodIssueCode.custom, message: `Invalid calldata ${val}`, }); }

Latest Blog Posts

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/Xiawpohr/metamask-mcp'

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