Skip to main content
Glama

submit_review

Submit on-chain reviews for agents, tokens, or protocols after interactions to earn Scarab rewards and provide trust infrastructure for the agent economy.

Instructions

Submit a review for an on-chain entity (agent, token, protocol). Use after completing a job, swap, or interaction. Your wallet is auto-assigned via X-Maiat-Client. Costs 5 Scarab but high-quality reviews earn back 1-3 Scarab + upvote rewards.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
addressYesTarget entity address (0x...) to review
ratingYesRating 1-10 (10 = best)
commentYesDetailed review — cite tx hashes, completion rates, or concrete evidence for higher quality scores
tagsNoOptional tags like 'reliable', 'fast', 'risky'

Implementation Reference

  • The 'submit_review' tool is defined as an MCP server tool in 'packages/mcp-server/src/index.ts'. It handles review submissions by sending a POST request to the '/api/v1/review' endpoint via the SDK.
    server.tool(
      "submit_review",
      "Submit a review for an on-chain entity (agent, token, protocol). Use after completing a job, swap, or interaction. Your wallet is auto-assigned via X-Maiat-Client. Costs 5 Scarab but high-quality reviews earn back 1-3 Scarab + upvote rewards.",
      {
        address: z.string().describe("Target entity address (0x...) to review"),
        rating: z.number().min(1).max(10).describe("Rating 1-10 (10 = best)"),
        comment: z.string().describe("Detailed review — cite tx hashes, completion rates, or concrete evidence for higher quality scores"),
        tags: z.array(z.string()).optional().describe("Optional tags like 'reliable', 'fast', 'risky'"),
      },
      async ({ address, rating, comment, tags }) => {
        try {
          // Use SDK's internal request for review submission
          const data = await (sdk as any).request("/api/v1/review", {
            method: "POST",
            body: JSON.stringify({ address, rating, comment, source: "agent", tags }),
          });
          return { content: [{ type: "text" as const, text: JSON.stringify(data, null, 2) }] };
        } catch (err) {
          return { content: [{ type: "text" as const, text: JSON.stringify({ error: err instanceof Error ? err.message : String(err), address }) }] };
        }
      }

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/JhiNResH/maiat-protocol'

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