Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
PORTNoExpress server port4002
BB_PATHNoBarretenberg CLI pathbb
NODE_ENVNoNode environmentdevelopment
TEE_MODENoTEE mode: disabled / nitrodisabled
REDIS_URLYesRedis connection string
NARGO_PATHNoNargo CLI pathnargo
ENCLAVE_CIDNoNitro Enclave CID (required when TEE_MODE=nitro)
A2A_BASE_URLYesPublic-facing service URL (for Agent Card)
BASE_RPC_URLYesBase chain RPC endpoint
CIRCUITS_DIRNoCircuit artifacts directory/app/circuits
ENCLAVE_PORTNoNitro Enclave port5000
PAYMENT_MODEYesPayment mode: disabled / testnet / mainnet
AGENT_VERSIONNoAgent version string1.0.0
CHAIN_RPC_URLYesRPC for proof verification
GEMINI_API_KEYNoGemini API key for chat
OPENAI_API_KEYNoOpenAI API key for chat
PAYMENT_PAY_TONoOperator wallet (required when payment enabled)
TEE_ATTESTATIONNoEnable attestation verificationfalse
CIRCUITS_REPO_URLNoCircuit artifacts download URL
PROVER_PRIVATE_KEYYesAgent wallet private key (64 hex chars, no 0x)
PAYMENT_PROOF_PRICENoPrice per proof (USD)$0.10
EAS_GRAPHQL_ENDPOINTYesEAS GraphQL endpoint for attestation queries
ERC8004_IDENTITY_ADDRESSNoERC-8004 Identity contract
ERC8004_REPUTATION_ADDRESSNoERC-8004 Reputation contract
PHOENIX_COLLECTOR_ENDPOINTNoPhoenix OTLP endpoint for tracing

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}
resources
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
generate_proofA

All-in-one ZK proof generation. Handles: prepare inputs, request challenge, and submit proof in a single call. Use this when you want the simplest path to a proof. For fine-grained control over each step, use prepare_inputs, request_challenge, and submit_proof individually.

CIRCUITS:

  • "coinbase_kyc": Proves the user passed Coinbase KYC verification.

  • "coinbase_country": Proves the user's country of residence is (or is not) in a given list. Requires country_list and is_included.

  • "oidc_domain": Proves the user authenticated via OIDC and their email belongs to a specific domain. Requires jwt and scope.

RETURNS: Full ProofResult with proof bytes, public inputs, and timing information. Use verify_proof separately to verify on-chain.

get_supported_circuitsA

List all ZK circuits supported by ZKProofport, including verifier addresses and authorized signers. No parameters required. Call this first to discover available circuits before starting proof generation.

request_challengeA

Step 2 of the step-by-step flow (after prepare_inputs): Request a challenge from the server. Sends circuit + inputs to POST /api/v1/prove. Server returns nonce and TEE key information. You MUST call prepare_inputs first to get the inputs parameter.

prepare_inputsA

Step 1 of the step-by-step flow: Prepare all circuit inputs. Computes signal hash, signs it with the attestation wallet, queries EAS for attestation data, builds Merkle proof, and returns all inputs needed for proof generation. Call this BEFORE request_challenge. For oidc_domain circuit, provide jwt and scope instead of Coinbase-specific parameters.

submit_proofA

Step 3 of the step-by-step flow: Submit prepared inputs to generate the ZK proof. The TEE server runs the Noir circuit and returns the UltraHonk proof. This step may take 30-90 seconds. The TEE server builds Prover.toml from these inputs.

verify_proofA

Step 4 (optional): Verify a ZK proof on-chain against the deployed verifier contract. Pass the full generate_proof result object directly — verification info (verifierAddress, chainId, rpcUrl) is extracted automatically. Returns { valid: true } if the proof is valid.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription
config

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/zkproofport/proofport-ai'

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