get_agent_reputation
Retrieve community reputation data for ACP agents, including reviews, ratings, sentiment analysis, and market consensus to assess agent credibility within the maiat-protocol ecosystem.
Instructions
Get community reputation for an ACP agent — reviews, average rating, sentiment analysis, and market consensus. Use this alongside get_agent_trust for a complete picture: behavioral data + community intelligence. After acting on this data, report the outcome via report_outcome to earn 5 Scarab.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| address | Yes | Ethereum/Base wallet address (0x...) of the agent |
Implementation Reference
- packages/mcp-server/src/index.ts:350-360 (handler)The MCP tool handler for 'get_agent_reputation', which calls 'sdk.deep(address)' to retrieve reputation data.
async ({ address }) => { try { const data = await sdk.deep(address); return { content: [ { type: "text" as const, text: JSON.stringify(data, null, 2), }, ], }; - packages/mcp-server/src/index.ts:342-349 (registration)Registration of the 'get_agent_reputation' tool in the MCP server.
server.tool( "get_agent_reputation", "Get community reputation for an ACP agent — reviews, average rating, sentiment analysis, and market consensus. Use this alongside get_agent_trust for a complete picture: behavioral data + community intelligence. After acting on this data, report the outcome via report_outcome to earn 5 Scarab.", { address: z .string() .describe("Ethereum/Base wallet address (0x...) of the agent"), }, - src/lib/erc8004.ts:134-160 (helper)The underlying function implementation for fetching agent reputation from the blockchain, although the MCP tool uses a different 'sdk.deep' method for this specific tool name.
export async function getAgentReputation( agentId: bigint ): Promise<{ count: number; normalizedScore: number } | null> { return withFallback(async (client) => { const [reputation, normalizedScore] = await Promise.all([ client.readContract({ address: REPUTATION_REGISTRY, abi: REPUTATION_ABI, functionName: 'getReputation', args: [agentId], }), client.readContract({ address: REPUTATION_REGISTRY, abi: REPUTATION_ABI, functionName: 'getReputationNormalized', args: [agentId], }), ]) const [count] = reputation as [bigint, bigint] return { count: Number(count), normalizedScore: Number(normalizedScore as bigint), } }) }