Skip to main content
Glama

Código 07 · Human verification in Peru

Server Details

Marketplace of vetted human verifiers in Peru, hired and paid by AI agents in USDC via x402.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A4.1/5.0

Scored across 6 tools

Disambiguation5/5

Each tool maps to a distinct stage of the workflow: catalog browsing (listar_servicios), quoting (cotizar), booking/payment (solicitar_verificacion, pagar_solicitud), status checks (consultar_estado), and rating (calificar_servicio). The only mild overlap—cotizar versus solicitar_verificacion with servicio="personalizado" creating a quote—is explicitly clarified in the descriptions.

Naming Consistency4/5

All names are Spanish, snake_case, and use a predictable verb_noun shape (calificar_servicio, consultar_estado, listar_servicios, pagar_solicitud, solicitar_verificacion). The lone deviation is the bare verb 'cotizar', which breaks the pattern slightly but remains readable and domain-consistent.

Tool Count5/5

Six tools is well-scoped for a booking/payment workflow server, with each tool earning its place across the quote-book-pay-status-rate lifecycle. No redundant or filler tools are present.

Completeness4/5

The surface covers the full lifecycle: catalog discovery, quoting, custom and standard booking with x402 payment, status polling (which also delivers the final report and photo URLs), and verifier rating. The main minor gap is an explicit cancel operation, though a 'cancelada' status exists, suggesting cancellation may be handled out-of-band.

Available Tools

6 tools
calificar_servicioRate a completed taskA
Idempotent
Inspect

Rates the verifier who completed a task (1 to 5 stars, optional comment). Ratings rank verifiers in the network. One rating per task.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesRequest id
tokenYestoken_consulta
estrellasYes
comentarioNo

TDQS

A3.7/5.0
Behavior4/5

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

Annotations cover the safety profile (not read-only, idempotent, non-destructive, closed-world), and the description adds genuinely new behavioral context: ratings feed a network-wide verifier ranking, and only one rating per task is permitted. It stops short of describing failure behavior when a duplicate rating is attempted or what the call returns.

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?

Three short sentences with zero filler: what it does, what the rating affects, and the uniqueness constraint. The core action is front-loaded.

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

Completeness3/5

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

For a 4-parameter mutation with no output schema, the description covers purpose, side effect, and a uniqueness rule, which is a reasonable amount. It still leaves the identity parameters (id, token) and error/duplicate-rating behavior unexplained, so it is adequate rather than complete.

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 coverage is 50%, and the description covers exactly the two undocumented-but-meaningful fields: estrellas as a 1-5 star value and comentario as optional. The remaining parameters (id as 'Request id', token as 'token_consulta') are left unexplained in both schema and description, so the description does not fully close the coverage gap.

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 names a specific verb (rates) and resource (the verifier who completed a task), plus the input shape (1-5 stars, optional comment). No sibling tool (consultar_estado, cotizar, pagar_solicitud, solicitar_verificacion) overlaps with rating, so it is distinguishable in practice, though it never explicitly contrasts itself with them.

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?

"One rating per task" is a usable constraint that implies the operation is terminal and not repeatable, and the title scopes it to a 'completed task'. However, there is no explicit statement of preconditions (task must be finished, rater must be the requester) or of what to do if a rating already exists.

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

consultar_estadoCheck request status and get the resultA
Read-only
Inspect

Returns status (cotizacion_pendiente, cotizada, pago_en_proceso, pagada, en_proceso, completada, pago_fallido, rechazada, cancelada), price, delivery deadline, payment transaction, and when completed: the report (conclusion, details, geotagged photo URLs) plus a human-readable report URL.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesRequest id, e.g. C07-1A2B3C4D
tokenYestoken_consulta returned when the request was created

TDQS

A3.5/5.0
Behavior4/5

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

Annotations cover the safety profile (readOnlyHint=true, openWorldHint=false), and the description adds substantial value beyond them by enumerating the full status lifecycle and spelling out the returned payload. It does not cover polling/refresh expectations, token expiry, or error behavior, so it stops short of a 5.

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

Conciseness4/5

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

A single front-loaded sentence beginning with the verb 'Returns', with the status enumeration and the completed-only extras clearly ordered. Dense but every clause carries information; no filler.

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?

With no output schema and only two params, the description compensates well by describing the returned fields and the conditional report payload. The missing piece is when-to-use guidance relative to sibling tools, which leaves a gap for an agent choosing among six tools.

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% and both params are documented there (id format, token origin), so the schema does the heavy lifting. The description adds no parameter-level detail, matching the baseline 3.

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?

States a specific verb+resource ('Returns status... price, delivery deadline, payment transaction...') and enumerates exactly what is returned. It is clear what the tool does, though it never explicitly contrasts itself with siblings like cotizar or pagar_solicitud.

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

Usage Guidelines2/5

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

There is no indication of when to call this versus alternatives, no prerequisites stated, and no note that it requires the token issued at creation (only implied by the schema field). The agent must infer usage entirely.

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

cotizarGet a price quoteA
Read-only
Inspect

Returns the exact price, turnaround and today's remaining capacity for a service, or tells you it needs a custom quote. Does not create anything or charge anything.

ParametersJSON Schema
NameRequiredDescriptionDefault
urgenteNoRush job: +50% price, half the turnaround.
servicioYesverificacion_remota = USD 25, 24 h (phone call in Spanish + SUNAT/RUC lookup + web check, anywhere in Peru). visita_presencial_lima = USD 75, 48 h (on-site visit in Metropolitan Lima/Callao, 6+ geotagged photos). personalizado = free quote request for anything else (e.g. visits outside Lima), paid later with pagar_solicitud.
ubicacionNoAddress or city in Peru, if the task is on-site.

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and openWorldHint=false, and the description reinforces that with 'does not create or charge anything'. It goes beyond annotations by disclosing two behaviors an agent could not infer: the response includes today's remaining capacity (a volatile, time-sensitive value) and may return a 'needs custom quote' outcome instead of a price.

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?

Two tight sentences with zero filler. The positive capability is front-loaded and the read-only reassurance is placed second, which is the right order for an agent scanning for purpose first.

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?

There is no output schema, so the description carries the burden of describing returns, and it does list price, turnaround, capacity and the custom-quote outcome. It is nearly complete; what is missing is any hint of failure modes or how the custom-quote path is followed up (the schema mentions pagar_solicitud, not the description).

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%, so the enum values, the urgente surcharge and the ubicacion semantics are fully documented in the schema. The description adds no parameter-level detail beyond what the schema already provides, which is the expected baseline 3.

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?

States a specific verb and resource: returns price, turnaround and remaining capacity for a service, and flags the custom-quote branch. It does not name a sibling explicitly, but 'Does not create anything or charge anything' implicitly separates it from solicitar_verificacion and pagar_solicitud.

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 negative clause hints at when to use it (read-only quoting rather than creating or paying), and the custom-quote branch signals when a request should escalate. However, it never states a positive condition like 'call this before pagar_solicitud' or names an alternative tool, so the routing is left to inference.

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

listar_serviciosList Código 07 servicesA
Read-only
Inspect

Returns the catalog of human verification services in Peru: USD prices, turnaround, coverage, today's remaining capacity, x402 payment details (network, asset, payTo) and hard limits. Call this first.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and openWorldHint=false, so safety is covered. The description adds real value beyond that: it discloses that the response includes dynamic 'today's remaining capacity' and x402 payment fields (network, asset, payTo), which signals freshness and a payment prerequisite not visible in the schema.

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 verb and resource are front-loaded, the enumeration is dense with distinct field groups, and the closing imperative adds ordering without redundancy. No sentence is filler.

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?

With no output schema, the description carries the burden of describing returns, and it does so by enumerating prices, turnaround, coverage, capacity, payment details and limits. 'Hard limits' remains undefined and refresh/caching semantics for today's capacity are unstated, leaving a small gap.

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

Parameters4/5

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

The tool takes zero parameters, so the baseline of 4 applies; there is no parameter semantics to explain. The description correctly spends its budget on return content instead of inventing input detail.

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

Purpose5/5

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

States a concrete verb and resource ('Returns the catalog of human verification services in Peru') and enumerates exactly what the catalog contains, so an agent knows precisely what it gets. The 'Call this first' cue positions it relative to the sibling workflow tools (cotizar, pagar_solicitud, solicitar_verificacion) as the entry point.

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

Usage Guidelines4/5

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

'Call this first' gives explicit sequencing guidance for the multi-step flow, which is more than most list tools offer. It stops short of naming when-not-to-use conditions or the specific sibling to use afterward, so it lacks full routing detail.

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

pagar_solicitudPay a quoted request (x402)AInspect

Pays a custom request once its status is "cotizada" and confirms it instantly. Payment: x402 v2 (v1 compatible), USDC on Base. Call once without payment to receive a PaymentRequired (isError=true, structuredContent). Retry the SAME call adding params._meta["x402/payment"] with the signed PaymentPayload. When it settles, the task is confirmed instantly with no human approval, and the result includes _meta["x402/payment-response"].

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesRequest id, e.g. C07-1A2B3C4D
tokenYestoken_consulta returned when the request was created

TDQS

A4.6/5.0
Behavior5/5

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

Goes well beyond the annotations: discloses the two-phase 402 handshake, that the first call returns isError=true with structuredContent, that settlement auto-confirms with no human approval, and that the response carries _meta["x402/payment-response"]. These are exactly the behavioral traits (protocol, settlement, side effects) an agent needs and that readOnlyHint=false / openWorldHint=true alone do not convey.

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

Conciseness4/5

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

Front-loads the action and precondition, then walks through the payment flow in a tight sequence. Four dense sentences with no filler, though the protocol details are somewhat crammed together and could be marginally easier to scan.

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

Completeness5/5

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

Given there is no output schema, the description compensates by explaining the error payload and the _meta payment-response on success. The payment protocol, precondition, retry mechanics and confirmation outcome are all covered, leaving nothing essential for a correct invocation.

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

Parameters4/5

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

Schema coverage is 100% so id and token are already documented (baseline 3). The description adds the non-obvious second-phase parameter params._meta["x402/payment"] carrying the signed PaymentPayload, which is absent from the declared schema and materially changes how the call is made.

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

Purpose5/5

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

States a specific verb and resource (pays a quoted custom request) plus the governing precondition (status = "cotizada"), which cleanly separates it from siblings like cotizar and consultar_estado. An agent can identify exactly what this tool does without opening the schema.

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

Usage Guidelines4/5

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

Gives explicit procedural guidance: only call once the request is 'cotizada', call once without payment to get PaymentRequired, then retry the SAME call with the signed payload. It stops short of naming sibling alternatives for the pre-quote or verification steps, but the when-to-use condition is unambiguous.

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

solicitar_verificacionHire a human verifier (pay with x402)AInspect

Books a vetted human verifier from the Código 07 network in Peru to check something in the physical world. The first available verifier accepts it and delivers a report with geotagged photos. Standard services are paid instantly and confirmed with no human approval. Payment: x402 v2 (v1 compatible), USDC on Base. Call once without payment to receive a PaymentRequired (isError=true, structuredContent). Retry the SAME call adding params._meta["x402/payment"] with the signed PaymentPayload. When it settles, the task is confirmed instantly with no human approval, and the result includes _meta["x402/payment-response"]. Returns id + token_consulta; store both. servicio "personalizado" (or an on-site visit outside Lima) creates a free quote request instead; pay it later with pagar_solicitud. Prohibited requests (surveillance of private individuals, entering private property, handling money/packages, impersonation, anything illegal) are rejected automatically before any charge.

ParametersJSON Schema
NameRequiredDescriptionDefault
rucNoPeruvian company tax ID (RUC, 11 digits), if relevant.
agenteNoName/identifier of your agent.
urgenteNoRush job (+50%, half the turnaround).
servicioYesverificacion_remota = USD 25, 24 h (phone call in Spanish + SUNAT/RUC lookup + web check, anywhere in Peru). visita_presencial_lima = USD 75, 48 h (on-site visit in Metropolitan Lima/Callao, 6+ geotagged photos). personalizado = free quote request for anything else (e.g. visits outside Lima), paid later with pagar_solicitud.
ubicacionNoFull address and district (for on-site visits) or city.
webhook_urlNoOptional https URL. Receives POST updates (cotizada, completada, cancelada) signed with X-Codigo07-Signature = sha256 HMAC of the raw body using your token_consulta.
que_verificarYesWhat exactly must be verified, in Spanish or English. Be specific: the question to answer and why.
contacto_emailNoOptional. Inbox where status updates can be sent.
acepta_terminosYesMust be true: you accept the terms and limits at https://codigo07.vercel.app/#terminos.
contacto_whatsappNoOptional WhatsApp number with country code.
entregable_esperadoNoWhat you expect back (e.g. "6 photos of storefront + yes/no on whether it is open").

TDQS

A4.7/5.0
Behavior5/5

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

Annotations only supply safety hints (readOnly=false, openWorld=true, idempotent=false); the description adds substantial context beyond them: the x402 payment handshake, instant no-human-approval settlement, what the result contains (_meta['x402/payment-response']), the need to store id and token_consulta, and the prohibited-request filtering that happens before any charge.

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

Conciseness4/5

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

Front-loaded with the purpose and payment flow, and nearly every sentence carries operational weight. There is some mild redundancy ('confirmed with no human approval' is stated twice) and one long run-on sentence listing prohibited requests, but density is justified by the complexity.

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?

For an 11-parameter async payment tool with no output schema, the description covers the call flow, error mode (isError=true, structuredContent), settlement behavior, returned identifiers, and webhook triggers. It is nearly complete; only the exact content of the delivered report beyond 'geotagged photos' is left implicit.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3, but the description adds meaning the schema cannot: it explains the hidden runtime parameter params._meta['x402/payment'] that is not in the schema (additionalProperties: false), and clarifies the special behavior of servicio='personalizado'. The other parameters gain no extra semantics from the description.

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

Purpose5/5

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

States a specific verb and resource ('Books a vetted human verifier from the Código 07 network in Peru') plus the concrete deliverable (report with geotagged photos). It also distinguishes itself from the quote path and from sibling pagar_solicitud, so an agent can identify the tool immediately.

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

Usage Guidelines5/5

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

Gives explicit two-step invocation instructions (call once to get PaymentRequired, retry the SAME call with params._meta['x402/payment']), names the alternative flow for 'personalizado'/out-of-Lima (free quote, pay later with pagar_solicitud), and lists conditions under which requests are auto-rejected before charge.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 2 tool updates
    • Addedcalificar_servicio
    • Changedsolicitar_verificacion1 field changed
      • addedInput schema / properties / webhook_url
        Added value: +{
        +  "description": "Optional https URL. Receives POST updates (cotizada, completada, cancelada) signed with X-Codigo07-Signature = sha256 HMAC of the raw body using your token_consulta.",
        +  "format": "uri",
        +  "type": "string"
        +}
  2. 5 tool updates
    • First observedconsultar_estado
    • First observedcotizar
    • First observedlistar_servicios
    • First observedpagar_solicitud
    • First observedsolicitar_verificacion

Related MCP Connectors

Related MCP Servers

  • F
    license
    A
    quality
    C
    maintenance
    Verified Latin American data for autonomous AI agents via x402 micropayments. Sanctions screening (OFAC SDN + SARLAFT + CNBV + COAF + UAF) with EU AI Act Art.12/13 compliant hash-chain audit trail, entity enrichment (RUES/CNPJ/RFC), and real-time LATAM central bank rates including Argentina dólar blue. $0.02–$0.10 USDC per call on Base and Solana. No API key required.
    4
    1
    -
  • A
    license
    A
    quality
    F
    maintenance
    Lets an AI agent hire and pay a verified human: post real-world tasks (voice, observation, judgment) and pay in USDC via a non-custodial x402 auth-capture escrow on Base, budget frozen at deploy. Humans verify their X identity before submitting.
    8
    67 npm
    1
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    Enables AI agents to hire verified human operators for tasks requiring physical presence, human perception, or judgment, such as real-world verification, product testing, and data collection.
    6
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources