Skip to main content
Glama

Junto

The payment protocol for people and agents.

Send and receive money through any AI assistant. Any payment rail. Built-in guardrails.

Named after Benjamin Franklin's Junto — a society of tradesmen who built civic infrastructure together. Different providers, same table, mutual benefit.


Why

AI assistants are starting to move real money — paying invoices, splitting bills, sending transfers. But every payment provider has a different API, different auth, different settlement times. Nobody should have to teach their assistant how Pix works vs Stripe vs Wise.

Junto fixes that with one MCP server that:

  • Exposes a universal payment toolkit to any MCP-compatible client (Claude, Cursor, custom agents)

  • Routes to the right provider based on currency, country, and rail

  • Enforces spending limits so agents can't go rogue

  • Supports human-in-the-loop confirmation for high-value transactions

  • Logs every action for audit and accountability

Related MCP server: Payments MCP

Tools

Tool

Description

pay

Send money to a destination (Pix key, email, IBAN, etc.)

charge

Create a payment request / invoice / QR code

status

Check payment status by correlation ID

refund

Reverse a completed transaction

balance

Check available funds on a provider

providers

List configured providers and their capabilities

limits

Show spending limits and today's usage

Quick Start

npm install -g junto-mcp

Set your provider API key:

export WOOVI_APP_ID="your-woovi-app-id"

Run as CLI (human mode):

junto pay 25.00 maria@email.com
junto charge 10.00 "Coffee"
junto balance

Run as MCP server (for AI clients):

junto --mcp

Portuguese / Portugues

Junto auto-detects your system language, or set manually:

JUNTO_LANG=pt-BR junto ajuda
junto pagar 25.00 maria@email.com
junto cobrar 10.00 "Cafe"
junto saldo

See CLI.md for the full command reference in both languages.

Add to Claude Desktop or Cursor

{
  "mcpServers": {
    "junto": {
      "command": "npx",
      "args": ["-y", "junto-mcp"],
      "env": {
        "WOOVI_APP_ID": "your-woovi-app-id"
      }
    }
  }
}

That's it. Your AI assistant now has payment tools.

Guardrails

All amounts are in cents (smallest currency unit).

Setting

Env Var

Default

Meaning

Daily limit

JUNTO_DAILY_LIMIT

50000 (R$500)

Max total spend per day

Per-tx max

JUNTO_PER_TX_MAX

20000 (R$200)

Max single transaction

Confirm above

JUNTO_CONFIRM_ABOVE

5000 (R$50)

Ask human before sending

Allowed providers

JUNTO_ALLOWED_PROVIDERS

(all)

Comma-separated allowlist

Allowed destinations

JUNTO_ALLOWED_DESTINATIONS

(all)

Comma-separated type allowlist

When an agent tries to send above the JUNTO_CONFIRM_ABOVE threshold, the server pauses and returns a confirmation prompt. The agent must relay this to the user and get approval before proceeding.

⚠️ Confirmation required

  Amount:      BRL 150.00
  To:          maria@email.com
  Reason:      Amount (15000 cents) exceeds confirmation threshold (5000 cents)

Please confirm with the user before proceeding.

Architecture

┌─────────────────────────────────────┐
│  MCP Client (Claude, Cursor, etc.)  │
└──────────────┬──────────────────────┘
               │ MCP Protocol (stdio)
┌──────────────▼──────────────────────┐
│           junto-mcp                 │
│                                     │
│  ┌───────────┐  ┌────────────────┐  │
│  │  Router    │  │  Guardrails    │  │
│  │  (picks    │  │  (spend caps,  │  │
│  │  provider) │  │  HITL confirm, │  │
│  │           │  │  audit log)    │  │
│  └─────┬─────┘  └────────────────┘  │
│        │                            │
│  ┌─────▼─────────────────────────┐  │
│  │  Provider Adapters            │  │
│  │  ┌────────┐ ┌──────┐ ┌────┐  │  │
│  │  │ Woovi  │ │Stripe│ │Wise│  │  │
│  │  └────────┘ └──────┘ └────┘  │  │
│  └───────────────────────────────┘  │
│                                     │
│  ┌───────────────────────────────┐  │
│  │  Audit Ledger (JSONL)         │  │
│  └───────────────────────────────┘  │
└─────────────────────────────────────┘

Providers

Provider

Region

Rails

Status

Woovi/OpenPix

Brazil

Pix

🟢 Live (tested with real Pix transactions)

Ebanx

Brazil + LATAM

Pix payouts, Boleto, Cards

🟡 Next

Belvo

Brazil

Open Finance (all banks)

🟡 Next

Stripe

Global

Cards, ACH, SEPA

🟡 Next

Wise

Global

Bank transfers

🔴 Planned

Mercado Pago

LATAM

Pix, Cards

🔴 Planned

PayPal

Global

Email-based

🔴 Planned

Why Woovi/Pix first?

  • Pix settles instantly (perfect for demos and real use)

  • Brazil's Central Bank mandates open APIs for payments

  • 180M+ Pix users, 80B+ transactions in 2025

  • Pix Automático (launched June 2025) enables recurring payments

  • Low fees, no intermediaries

  • Verified: charge, status, and payment flows tested with real Pix transactions (March 2026)

Demo

You:   "Pay R$25 to maria@email.com via Pix"

Agent:  I'll send the following payment:
          Amount: R$ 25,00
          To: maria@email.com (Pix)
          Via: Woovi
        Shall I go ahead?

You:   "Yes"

Agent:  Done! Payment sent.
          Amount: R$ 25,00
          To: maria@email.com
          Via: Pix (Woovi)
          Status: Completed
          ID: junto-1739612345-a1b2c3

Adding a Provider

Each provider is a single file implementing the PaymentProvider interface:

// src/providers/your-provider.ts
import { PaymentProvider } from "../types.js";

export class YourProvider implements PaymentProvider {
  name = "your-provider";
  supportedCurrencies = ["USD"];
  supportedRails = ["card"];
  settlementTime = "1-3 days";

  async pay(req) { /* send money */ }
  async charge(req) { /* create invoice */ }
  async status(id) { /* check status */ }
  async refund(id) { /* reverse payment */ }
  async balance() { /* check funds */ }
  info() { /* return capabilities */ }
}

Copy src/providers/_template.ts to get started, then register your provider in src/index.ts.

Testing

npm test              # Guardrail unit tests
npm run test:smoke    # Full flow smoke tests (mock provider)

Live testing with real Pix

# Create a Pix charge (R$1.00)
WOOVI_APP_ID=your-key npx tsx test/live-pix.ts charge 100 "Test charge"

# Check status
WOOVI_APP_ID=your-key npx tsx test/live-pix.ts status <correlation-id>

# Send a Pix payment
WOOVI_APP_ID=your-key npx tsx test/live-pix.ts pay 100 user@email.com EMAIL

# Refund
WOOVI_APP_ID=your-key npx tsx test/live-pix.ts refund <correlation-id>

Interactive demo

npx tsx demo/demo.ts          # Full demo with typewriter narration + real API calls
npx tsx demo/demo.ts --fast   # Fast mode for rehearsals

Audit Log

Every transaction is logged to ~/.junto/audit-YYYY-MM-DD.jsonl:

{
  "timestamp": "2026-02-15T14:32:07Z",
  "type": "payment",
  "action": "pay",
  "tool": "pay",
  "amount": 2500,
  "currency": "BRL",
  "provider": "woovi",
  "destination": "maria@email.com",
  "status": "executed"
}

Roadmap

  • Core MCP server with universal tool interface

  • Woovi/OpenPix provider (Pix) — live-tested with real transactions

  • Guardrails (daily limits, per-tx max, HITL confirmation)

  • Audit ledger

  • junto-skill (Claude behavioral layer)

  • Interactive demo (npx tsx demo/demo.ts)

  • Ebanx provider (Pix payouts, Boleto, Cards — Brazil + LATAM)

  • Belvo provider (Open Finance — all Brazilian banks)

  • Stripe provider (Cards, ACH, SEPA)

  • junto-approve (Telegram/WhatsApp confirmation for HITL)

  • junto-dashboard (web UI for tx history and limits)

  • junto-compute (agent-to-agent budget delegation)

  • AP2 compatibility layer (Google Agent Payments Protocol)

  • Wise provider (international bank transfers)

Contributing

We need help with:

  • Provider adapters — Ebanx, Stripe, Wise, Belvo, Mercado Pago, PayPal, UPI

  • Routing logic — Cheapest vs fastest vs most reliable provider selection

  • HITL patterns — Approval flows across different MCP clients

  • Security audit — Review of the guardrails and auth system

  • Multi-currency — FX handling, cross-border routing

  • Docs — Compliance and regulatory guides per region

License

MIT

Available Tools

7 tools
balanceB

Check available funds on a payment provider.

ParametersJSON Schema
NameRequiredDescriptionDefault
providerNoWhich provider to check. Checks all if omitted.

TDQS

B3.1/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. While 'Check' implies a read-only operation, the description lacks critical details: whether data is real-time or cached, what format/currency the balance is returned in, error handling for invalid providers, or rate limiting.

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 a single, front-loaded sentence of six words with zero redundancy. It efficiently conveys the core action without filler, making it appropriately sized for quick comprehension.

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?

Given the tool's simplicity (one optional parameter, no nested objects), the description adequately covers the basic invocation pattern. However, lacking an output schema, it omits what the agent/user receives (e.g., balance amount, currency, timestamp), which would be necessary for the agent to handle the response correctly.

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?

With 100% schema description coverage (the 'provider' parameter is fully documented in the schema as optional with default behavior), the description meets the baseline. It references 'payment provider' aligning with the parameter name, but adds no semantic value regarding valid provider formats or examples beyond what the schema already provides.

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 uses a clear verb ('Check') and identifies the specific resource ('available funds on a payment provider'). However, it does not differentiate from the sibling tool 'limits', which could also relate to financial thresholds or quotas, potentially causing selection confusion.

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?

The description provides no guidance on when to use this tool versus siblings like 'limits' or 'status'. It fails to mention common workflows such as checking balance before invoking 'charge' or 'pay', and does not note prerequisites like authentication requirements.

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

chargeC

Create a payment request, invoice, or QR code.

ParametersJSON Schema
NameRequiredDescriptionDefault
amountYesAmount in cents
currencyNoISO 4217 currency codeBRL
descriptionNoWhat the charge is for
customer_emailNoCustomer email
customer_nameNoCustomer name
expires_inNoSeconds until expiry
providerNoForce a specific provider

TDQS

C2.8/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of disclosure but fails to explain side effects (e.g., whether emails are sent), idempotency, or which of the three output types is generated under what conditions. It does not indicate what the tool returns or how expiration behaves.

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

Conciseness3/5

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

The description is a single terse sentence of six words. While it avoids redundancy, it is insufficiently detailed for a financial tool with seven parameters and three potential output variants, leaving critical behavioral questions unanswered.

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

Completeness2/5

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

Given the complexity of a payment creation tool with multiple output formats and no output schema or annotations, the description is incomplete. It fails to resolve the ambiguity of 'payment request, invoice, or QR code' (mutually exclusive? selected how?) or describe the response structure.

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?

The input schema has 100% description coverage, documenting all seven parameters including units (cents) and formats (ISO 4217). The description adds no specific parameter guidance beyond what the schema already provides, meeting the baseline expectation for well-documented schemas.

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 identifies the action ('Create') and the resources ('payment request, invoice, or QR code'), which distinguishes it from siblings like 'refund' or 'pay'. However, it does not explicitly clarify the relationship between these three distinct outputs or when to expect each one.

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?

The description provides no guidance on when to use this tool versus alternatives like 'pay' (which likely sends funds) or when to prefer specific output types. There are no stated prerequisites, conditions, or exclusions for its use.

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

limitsA

Check current spending limits and today's usage (all values in cents).

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.5/5.0
Behavior3/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure and adds critical context that output values are 'in cents,' explaining the data format. However, it omits other behavioral details such as whether the data is real-time, cached, or subject to rate limiting.

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 single-sentence description is efficiently front-loaded with the action verb and packs essential information about the resource and data format without waste. Every clause serves a distinct purpose: identifying the action, the resources, and the value format.

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 simplicity (no parameters) and lack of output schema, the description adequately covers the return values by specifying both spending limits and today's usage with their monetary unit. It fulfills the minimum requirements for a read-only status tool, though it could further clarify the scope.

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 input schema contains zero parameters, establishing a baseline score of 4, and the description appropriately does not invent parameter details. The schema coverage is vacuously 100%.

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 uses the specific verb 'Check' and clearly identifies the resource as 'current spending limits and today's usage,' distinguishing it from sibling tools like balance or status. While it effectively communicates the tool's function through resource specificity, it does not explicitly contrast with specific alternatives.

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?

The description provides no explicit guidance on when to select this tool over siblings such as balance or status, nor does it mention prerequisites. Users must infer applicability solely from the resource description without explicit when-to-use criteria.

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

payC

Send money to a destination via the best available provider. Amount in cents.

ParametersJSON Schema
NameRequiredDescriptionDefault
amountYesAmount in cents. Example: 5000 = R$50.00
currencyNoISO 4217 currency codeBRL
destinationYesRecipient: Pix key, email, phone, CPF, CNPJ, IBAN
destination_typeNoType hint: EMAIL, PHONE, CPF, CNPJ, RANDOM, IBAN
noteNoPayment memo
providerNoForce a specific provider

TDQS

C2.9/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions 'best available provider' selection logic but fails to disclose critical financial operation traits: whether the transaction is irreversible (requiring 'refund'), if it requires pre-authorization, rate limits, or failure behaviors.

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?

The two-sentence structure is appropriately front-loaded with the action verb. While 'Amount in cents' appears redundant given complete schema coverage, it earns its place as critical safety information preventing decimal errors in financial transactions.

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?

Given the high schema coverage, the description meets minimum viability. However, for a high-stakes financial mutation tool lacking annotations and output schema, it omits expected safety context about fund availability checks and transaction finality.

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%, establishing a baseline of 3. The description repeats 'Amount in cents' which appears verbatim in the schema's amount parameter description, adding no new semantic value. It does not clarify parameter interdependencies (e.g., destination_type hinting destination 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 core action ('Send money') and target ('destination'), distinguishing it from siblings like 'charge' (receive) and 'refund' (reverse). However, it stops short of explicitly clarifying that this debits funds from the user's account, which would strengthen differentiation from non-financial tools.

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?

No guidance is provided on when to use this versus 'charge' or 'refund', nor are prerequisites mentioned (e.g., verifying sufficient balance via the 'balance' tool first). The description lacks 'when-not-to-use' exclusions or alternative recommendations.

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

providersA

List configured payment providers and their capabilities.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4/5.0
Behavior3/5

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

No annotations provided, so description carries full burden. Adds value by mentioning 'capabilities' (what providers can do), but lacks operational details like read-only safety, caching behavior, or response format that annotations would typically cover.

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?

Single sentence with zero waste. Front-loaded with verb and resource. Appropriate length for a simple discovery tool with no parameters.

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?

Adequate for a low-complexity tool (0 params, no nested objects). Specifies return value content (providers + capabilities) even without output schema. Could improve by mentioning return format or structure.

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?

Input schema has zero parameters. Per baseline rules for 0-param tools, score is 4.

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?

Uses specific verb 'List' with clear resource 'configured payment providers' and includes 'capabilities' to specify scope. Distinct from action-oriented siblings (charge, pay, refund) and status tools (balance, status, limits).

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?

No explicit when-to-use or alternative guidance provided. However, usage is implied by the contrast with transactional siblings - this is a discovery/configuration tool versus payment execution tools.

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

refundB

Refund a completed payment by correlation ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesCorrelation ID of the payment to refund
providerNoProvider that handled the transaction

TDQS

B3.4/5.0
Behavior2/5

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

No annotations provided, so description carries full burden. States the operation is a refund on completed payments, but lacks critical details: idempotency, failure modes, partial vs full refunds, or synchronous/asynchronous behavior.

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?

Single 7-word sentence with zero redundancy. Action verb front-loaded. Every word earns its place.

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

Completeness2/5

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

High-stakes financial mutation tool with no annotations, no output schema, and minimal behavioral description. Inadequate for the operational complexity and risk level.

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 has 100% description coverage. Description mentions 'correlation ID' reinforcing the id parameter, but adds no semantic value for the optional 'provider' parameter or usage scenarios beyond what the schema already provides.

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?

Clear specific verb 'Refund' and resource 'completed payment', clearly distinguishes from sibling tools like 'charge' or 'pay' which create payments rather than reverse 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?

Implies usage restriction via 'completed payment' (suggesting not for pending transactions), but lacks explicit when-to-use guidance or comparison to sibling alternatives.

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

statusB

Check payment or charge status by correlation ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesPayment or charge correlation ID
providerNoProvider that handled the transaction

TDQS

B3.1/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It fails to mention error handling (e.g., invalid ID), whether this requires specific permissions, what status values are returned, or if the operation is idempotent/safe. The word 'Check' implies read-only but doesn't confirm it.

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 a single, efficient sentence of eight words with the action verb front-loaded. There is no redundant or wasted language; every word contributes to understanding the tool's function.

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?

Given the simple 2-parameter input schema with no output schema, the description is minimally adequate. However, it could be improved by describing the expected return value (status values, transaction details) or behavior when the ID is not found, especially since no output schema exists to document this.

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?

With 100% schema description coverage, the baseline is 3. The description mentions 'correlation ID' which aligns with the 'id' parameter description in the schema, but adds no additional semantic context (e.g., format, where to obtain it) beyond what the schema already provides for either parameter.

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 uses the specific verb 'Check' with the resource 'payment or charge status' and identifies the lookup key 'correlation ID'. It implicitly distinguishes from action-oriented siblings like 'charge', 'pay', and 'refund' by being a read operation, though it doesn't explicitly contrast 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 Guidelines2/5

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

The description provides no explicit guidance on when to use this tool versus alternatives. While the correlation ID requirement implies use for existing transactions (vs. creating new ones via 'charge' or 'pay'), there is no explicit 'when-to-use' or mention of prerequisites like obtaining the ID from a prior call.

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

TDQS

A3.6/5.0
Disambiguation5/5

Each tool has a clearly distinct purpose with no ambiguity: balance checks funds, charge creates payment requests, limits checks spending, pay sends money, providers lists providers, refund processes refunds, and status checks status. The descriptions clearly differentiate these operations, making it easy for an agent to select the right tool.

Naming Consistency5/5

All tool names follow a consistent, simple noun-based pattern (balance, charge, limits, pay, providers, refund, status) that is readable and predictable. There are no deviations in style or convention, making the set coherent and easy to navigate.

Tool Count5/5

With 7 tools, this server is well-scoped for payment processing, covering key operations like checking funds, creating charges, sending payments, listing providers, handling refunds, and checking status. Each tool earns its place without feeling excessive or insufficient for the domain.

Completeness4/5

The tool set provides strong coverage for core payment workflows, including create (charge), read (balance, limits, providers, status), and update/delete-like actions (pay, refund). A minor gap is the lack of a tool for updating payment details or managing providers beyond listing, but agents can likely work around this with existing tools.

Maintenance

ActivityInactive
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • F
    license
    B
    quality
    Not graded
    maintenance
    Enables Claude to interact with the Vaultix Payment API for managing charges, customers, refunds, payment links, payouts, and balance transactions. Supports Brazilian payment methods including PIX, card, and boleto payments.
    32
  • A
    license
    Not graded
    quality
    D
    maintenance
    Centralizes payment gateway integrations for Pagar.me (customers, recipients, Pix, credit card, splits, charges) and Woovi/OpenPix (Pix charges, refunds, webhook verification) through MCP tools.
    12
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Enables AI agents to generate static Pix QR codes for Brazilian payments using natural language, with EMV 4.0 compliance and no external API required.
    2
    29
    3
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables Pix payment operations (cash-in/cash-out) and webhook management for Intra Pay via natural language, supporting multi-tenant authentication.
    1

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/vrllrv/junto-mcp'

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