Papaya Pay Any Bill (USA)
Server Details
Ready for a new way to bill pay? Pay any US bill in a snap, right from your AI assistant. Describe or snap a photo of your bill (electric, water, gas, internet, phone, medical, credit card, rent, parking tickets, traffic violations and more) and Papaya reads it, then hands you a secure link to pay by card. Fast, secure, and no juggling twelve logins, with full or partial payments and status updates. Available in the US only. Powered by Papaya (papayapay.com).
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Average 4.4/5 across 6 of 6 tools scored.
Each tool has a clearly distinct function: initial bill analysis, optional payment method check, final confirmation, status checking, token refresh, and cancellation. No two tools overlap in purpose.
All tool names follow a consistent verb_noun pattern in snake_case (e.g., analyze_bill, confirm_payment_intent), with no mixing of conventions or vague verbs.
Six tools cover the essential steps of the payment workflow without unnecessary duplication. The count is well-scoped for a bill payment server.
The tool set covers the full payment lifecycle: create, pay, check status, cancel, plus auth refresh. The only minor gap is the absence of a tool to list or retrieve past bills, but the core flow is complete.
Available Tools
6 toolsanalyze_billAnalyze BillInspect
Read a bill from the user's description and create it for payment. This is the
first step. Capture every address and identifier on the bill (remit-to address,
account/invoice number, any code or pin) - missing details can delay or fail
the payment. The remit-to address (where payment is sent) is especially important:
it is what identifies the correct biller, and a wrong or missing one can match the
bill to the wrong biller and cause a failed or delayed payment. Always include it. If
the bill does not show a remit-to address, research the biller's official remit-to /
payment address online and use that rather than omitting it. For the same reason,
capture the bill's online-payment URL in payUrl and any payment phone number in
otherInfo whenever the bill shows them - these strongly identify the correct biller.
Always secure a user identifier so the payment can be applied to the right account or
charge: capture the account/customer number in the account field, and any invoice,
ticket, or reference number in otherInfo - capture all that the bill shows, since some
billers need the account number plus another identifier. If the bill shows none, ask
the user for one rather than proceeding without it.
Before calling, ask the user how much they want to pay (the full
balance amountDue, or a partial amount), then pass it as amount_to_pay and quote
what they said in user_amount_statement - both are required (never invent the
amount). If the payment carries a fee, the result includes a fees list - show any
returned fee to the user before continuing. The result also includes a
payment_link: give this link to the user as-is so they can enter their card on the
secure form (the only way to set a payment method). If the user already exists from a
prior bill, pass their user_id and auth_token to reuse the account.
Args:
bill_description: structured bill details, including amountDue, amount_to_pay
and user_amount_statement
Returns:
bill/user identifiers, tokens, provider, amount due, the chosen amount_to_pay,
a payment_link to the secure card form, and any user-facing fees
| Name | Required | Description | Default |
|---|---|---|---|
| bill_description | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
check_payment_methodCheck Payment MethodRead-onlyInspect
Optional: check whether the user has finished the secure form and a card is on the bill yet. Returns the card's last 4 digits and name when one is set, or a PENDING status when the form has not been completed. Use only if you need to confirm the card landed (e.g. the user asks) - it is not a required step; the normal path is analyze_bill -> user fills the form -> confirm_payment_intent.
Args:
check_input: the user_id and bill_id to look up
| Name | Required | Description | Default |
|---|---|---|---|
| check_input | Yes | Identifiers to look up whether a card has been set on a bill yet. |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
confirm_payment_intentConfirm PaymentDestructiveInspect
Final step: submit the bill for payment, after a card has been set. You must have confirmed the amount with the user first (amount_to_pay may be partial) and quote their confirmation in user_amount_statement - do not call this until you have asked. If analyze_bill reported a need for extra information, supply it in extra_infos or submission will fail. Use entered_account / entered_provider only to correct a mis-extracted value. Pass the user's current refresh_token (from analyze_bill or a prior confirm) - do not guess.
Args:
confirm_input: identifiers, the amount to pay, contact info and any extra info
| Name | Required | Description | Default |
|---|---|---|---|
| confirm_input | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
fetch_bill_statusFetch Bill StatusRead-onlyInspect
Check the payment status of a submitted bill. Read value for the current status.
statusEvaluatedDescription is only present when the payment was declined or failed,
and then explains why - relay that reason to the user. It is omitted for every other
status, so treat its presence as a decline/failure.
Args:
bill_status_input: the bill identifier and auth token
Returns:
dictionary with keys value, statusDescription, and - only for declined/failed
bills - statusEvaluatedDescription explaining why the payment did not go through
| Name | Required | Description | Default |
|---|---|---|---|
| bill_status_input | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
get_new_auth_tokenRefresh Auth TokenInspect
Get a fresh auth token when another tool fails with an authorization error. Pass the user's current refresh_token; returns a new auth_token/refresh_token pair to use on the retried call and on later calls. Call this only in response to an auth failure, not preemptively.
Args:
new_token_input: contains the user's refresh token
Returns:
a new auth_token and refresh_token pair, or an error if the refresh token is
missing or invalid
| Name | Required | Description | Default |
|---|---|---|---|
| new_token_input | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
request_bill_cancellationCancel BillDestructiveInspect
Cancel a submitted bill so it will not be paid. Use when the user wants to stop a bill they submitted; cancellation may be rejected if the payment has already progressed too far - relay any error to the user. Not for correcting bill details: re-run analyze_bill for that.
Args:
bill_cancel_input: the bill identifier and auth token
Returns:
the cancelled bill id and status, or error details
| Name | Required | Description | Default |
|---|---|---|---|
| bill_cancel_input | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!
Related MCP Servers
- Alicense-qualityFmaintenanceEnables integration with Abacate Pay API for managing payments, customers, and billing through AI assistants. Supports multi-tenancy, PIX QR codes, discount coupons, and payment simulation with secure per-request API key authentication.Last updated394MIT
- AlicenseAqualityAmaintenanceEnables interaction with the Centrapay payments API for testing NZ payment flows, including creating, managing, and settling payment requests through natural language.Last updated9111MIT
- Alicense-qualityBmaintenanceLets AI agents accept US payments (cards, Apple Pay, Google Pay) via Stripe hosted checkout. Includes tools to create payment links and query payment status.Last updatedMIT
- Alicense-qualityBmaintenanceAccept crypto payments from AI agents: create an invoice in one call and get a hosted checkout link (USDC/USDT on Celo, Base, Arbitrum, Polygon, BSC). No API key, instant self-custody settlement.Last updatedMIT