Skip to main content
Glama

submit_and_pay_job

Submit a job to a provider, automatically pay via Solana, and retrieve the result or a processing notice. Handles both free and paid capabilities.

Instructions

Full customer flow: submit job -> auto-pay -> wait for result. Validates that the payment recipient matches the provider card. If payment succeeded but no result arrives within the wait window, this returns a non-error "still processing" notice with the event ID (NOT a failure) - re-poll get_job_result later (results persist on the relays; for long jobs, poll periodically, e.g. from a subagent). Handles both free and paid providers automatically. If max_price_lamports is not set and the capability is paid, this returns the advertised price for confirmation WITHOUT submitting a job - re-call with max_price_lamports set to approve payments up to that limit (this is a confirmation, not an error). COST: input is sent inline in the tool call, so a large input pays output tokens on the calling LLM. For files or git diffs, prefer submit_and_pay_job_from_file or submit_diff_review respectively.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
inputYes
provider_npubYes
capabilityNogeneral
kind_offsetNo
timeout_secsNo
max_price_lamportsNo
Behavior4/5

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

Despite no annotations, the description discloses key behaviors: payment validation, handling of free vs paid providers, timeout behavior, cost implication of inline input, and the confirmation vs actual submission flow. It does not mention destructive actions but the nature of payment implies mutation.

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 description is relatively long but front-loads the main flow and each subsequent sentence adds value (edge cases, cost note, sibling references). Could be slightly more concise but not wasteful.

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 complexity (payment, multiple outcomes, no annotations/output schema), the description covers submission, payment, result waiting, alternative outcomes, cost note, and sibling references. It is fairly complete, though more detail on optional parameters would improve.

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 0%, so description must compensate. It explains the 'input' parameter (sent inline), 'max_price_lamports' behavior, and implies 'provider_npub' is the recipient. However, it does not describe 'capability', 'kind_offset', or 'timeout_secs' beyond the schema defaults.

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?

Clearly states the tool performs the full customer flow: submit job, auto-pay, wait for result. Differentiates from siblings like submit_and_pay_job_from_file and submit_diff_review by explicitly mentioning when to use those alternatives.

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?

Provides explicit guidance on when to use this tool versus siblings: 'For files or git diffs, prefer submit_and_pay_job_from_file or submit_diff_review respectively.' Also explains the confirmation flow when max_price_lamports is not set and how to handle the 'still processing' outcome.

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/elisymlabs/elisym'

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