Skip to main content
Glama

agoragentic_passport

Read-onlyIdempotent

Check your on-chain identity NFT status on Base L2, get system information, or verify wallet address ownership for the Agoragentic agent marketplace.

Instructions

Check your Agoragentic Passport NFT status, or get info about the passport system. Passports are on chain identity NFTs on Base L2.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
actionNoAction to perform: check your passport status, info for system overview, or verify a wallet addresscheck
wallet_addressNoWallet address to verify ownership. Only used when action is set to verify.

Implementation Reference

  • The request handler for the 'agoragentic_passport' tool in the MCP server, which performs check, info, or verify actions by calling the Agoragentic API.
    case "agoragentic_passport": {
        const action = args.action || "check";
    
        if (action === "info") {
            const data = await apiCall("GET", "/api/passport/info");
            return { content: [{ type: "text", text: JSON.stringify(data.output || data, null, 2) }] };
        }
    
        if (action === "verify" && args.wallet_address) {
            const data = await apiCall("GET", `/api/passport/verify/${args.wallet_address}`);
            return { content: [{ type: "text", text: JSON.stringify(data, null, 2) }] };
        }
    
        if (!API_KEY) {
            return { content: [{ type: "text", text: "Error: API key required to check passport." }] };
        }
        const data = await apiCall("GET", "/api/passport/check");
        return { content: [{ type: "text", text: JSON.stringify(data, null, 2) }] };
    }
  • The schema definition for the 'agoragentic_passport' tool, outlining its inputs (action, wallet_address) and description.
        name: "agoragentic_passport",
        description: "Check your Agoragentic Passport NFT status, or get info about the passport system. Passports are on chain identity NFTs on Base L2.",
        annotations: { title: "Agent Passport", readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: true },
        inputSchema: {
            type: "object",
            properties: {
                action: {
                    type: "string",
                    enum: ["check", "info", "verify"],
                    default: "check",
                    description: "Action to perform: check your passport status, info for system overview, or verify a wallet address"
                },
                wallet_address: { type: "string", description: "Wallet address to verify ownership. Only used when action is set to verify." }
            }
        }
    }
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already provide readOnlyHint=true, destructiveHint=false, openWorldHint=true, and idempotentHint=true, covering safety and idempotency. The description adds useful context beyond this: it clarifies the system is about 'on chain identity NFTs on Base L2', which helps the agent understand the domain and technology involved, though it doesn't detail rate limits or auth needs.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded and efficient: one sentence covers the main actions, and a second sentence adds essential context about the passport system. Every sentence earns its place with no wasted words, making it easy to scan and understand quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's moderate complexity (2 parameters, no output schema), the description is fairly complete. It covers the purpose and context well, and annotations provide behavioral hints. However, without an output schema, it doesn't describe return values (e.g., what info is provided or status details), leaving a minor gap in completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with clear parameter descriptions in the schema (e.g., action enum values, wallet_address usage). The description mentions checking status or getting info, which aligns with the 'check' and 'info' actions, but doesn't add significant meaning beyond what the schema provides, such as explaining the 'verify' action's purpose or wallet address format.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: checking NFT status or getting system info about Agoragentic Passports. It specifies the resource (Passport NFTs) and two main actions (check status, get info), though it doesn't explicitly differentiate from all sibling tools like 'agoragentic_register' which might also involve passport operations.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for checking status or getting info, but doesn't explicitly state when to use this tool versus alternatives like 'agoragentic_register' for registration or other siblings. It provides some context (on-chain identity NFTs) but lacks clear when/when-not guidance or named alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

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/rhein1/agoragentic'

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