{"spec":"agent402-service-manifest/1","version":1,"name":"Blinka Machine Mouths","summary":"Bounded stateless paid machine services for JSON extraction, failed-workflow diagnosis/recovery, artifact-aware repair, Python code review, and compatibility checks.","resources":[{"resource":"https://blinka-machine-mouths.netlify.app/compatibility-receipt","method":"GET","name":"Blinka Compatibility Receipt","description":"Deterministic public seller/capability receipt and contract fingerprint for x402 compatibility checks.","tags":["x402","compatibility","seller-discovery","capability-receipt","agent-commerce"],"priceUsd":0.001,"accepts":[{"scheme":"exact","network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x3babf5340E5a14979CB91331Cb428b97584e26aE","amount":"1000","extra":{"name":"USD Coin","version":"2"}}]},{"resource":"https://blinka-machine-mouths.netlify.app/structure","method":"POST","name":"Blinka Extract JSON From Text + Schema","description":"Extract typed JSON from supplied prose, logs, notes, or unstructured text into a caller-supplied JSON Schema with source evidence; unsupported required facts fail closed instead of being invented.","tags":["prose-to-json","json-schema","typed-json","semantic-extraction","evidence"],"priceUsd":0.01,"inputSchema":{"type":"object","properties":{"text":{"type":"string","description":"Untrusted source text already in hand. Max 12,000 characters. No URLs are fetched."},"schema":{"type":"object","description":"JSON Schema the returned data must validate against."},"instruction":{"type":"string","description":"Optional extraction focus. It cannot authorize invention of facts."}},"required":["text","schema"],"additionalProperties":false},"accepts":[{"scheme":"exact","network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x3babf5340E5a14979CB91331Cb428b97584e26aE","amount":"10000","extra":{"name":"USD Coin","version":"2"}}]},{"resource":"https://blinka-machine-mouths.netlify.app/rescue-signal","method":"POST","name":"Blinka Failed Workflow Diagnosis Signal","description":"Cheap failed-run triage from a run log: identify the evidence-backed blocker, detect whether retrying unchanged will loop, return the smallest required state change, and flag whether artifact review is useful.","tags":["failed-run","run-log","retry-loop","agent-recovery","next-action"],"priceUsd":0.005,"inputSchema":{"type":"object","properties":{"goal":{"type":"string","description":"The bounded task the run was trying to accomplish."},"run_log":{"type":"string","description":"Short failed/stalled run excerpt. Max 3,500 characters."}},"required":["goal","run_log"],"additionalProperties":false},"accepts":[{"scheme":"exact","network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x3babf5340E5a14979CB91331Cb428b97584e26aE","amount":"5000","extra":{"name":"USD Coin","version":"2"}}]},{"resource":"https://blinka-machine-mouths.netlify.app/recover","method":"POST","name":"Blinka Failed Workflow Diagnosis + Recovery","description":"Recover a failed or stalled agent/software workflow from its goal and run log. Returns evidence-backed blockers, unchanged-retry traps, unknowns, the smallest safe next action, and a deterministic continuation contract constrained to the caller-supplied tool allowlist.","tags":["workflow-recovery","run-log","retry-trap","safe-continuation","next-action"],"priceUsd":0.25,"inputSchema":{"type":"object","properties":{"goal":{"type":"string","description":"The bounded task the failed run was trying to accomplish."},"run_log":{"type":"string","description":"Transcript, tool results, errors, or state summary from the failed/stalled run. Max 9,000 characters."},"available_tools":{"type":"array","items":{"type":"string"},"description":"Exact tool names the next agent is allowed to use."},"constraints":{"type":"string","description":"Optional hard constraints such as no network, read-only, or do-not-touch paths."}},"required":["goal","run_log"],"additionalProperties":false},"accepts":[{"scheme":"exact","network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x3babf5340E5a14979CB91331Cb428b97584e26aE","amount":"250000","extra":{"name":"USD Coin","version":"2"}}]},{"resource":"https://blinka-machine-mouths.netlify.app/rescue-pro","method":"POST","name":"Blinka Failed Workflow Diagnosis + Repair Pro","description":"Premium failed-workflow repair packet from run logs plus optional code/config: evidence-bound recovery, prioritized defects, repair sequence, retry traps, and a tool-bounded continuation handoff.","tags":["workflow-repair","run-log","code-review","repair-plan","continuation"],"priceUsd":3.0,"inputSchema":{"type":"object","properties":{"goal":{"type":"string","description":"The bounded task the failed run was trying to accomplish."},"run_log":{"type":"string","description":"Transcript, tool results, errors, or state summary from the failed/stalled run."},"available_tools":{"type":"array","items":{"type":"string"},"description":"Exact tool names the next agent is allowed to use."},"constraints":{"type":"string","description":"Optional hard constraints such as read-only, no-network, or do-not-touch paths."},"artifact":{"type":"string","description":"Optional code, config, diff, or text artifact related to the failure. It is reviewed but never executed."},"artifact_kind":{"type":"string","enum":["code","text"],"description":"How the artifact should be reviewed."},"artifact_intent":{"type":"string","description":"What the artifact is supposed to do or communicate; defaults to goal."},"language":{"type":"string","description":"Programming language hint for code artifacts; currently Python receives the strongest static checks."}},"required":["goal","run_log"],"additionalProperties":false},"accepts":[{"scheme":"exact","network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x3babf5340E5a14979CB91331Cb428b97584e26aE","amount":"3000000","extra":{"name":"USD Coin","version":"2"}}]},{"resource":"https://blinka-machine-mouths.netlify.app/code-signal","method":"POST","name":"Blinka Python Bug Signal","description":"Cheap static Python bug/security preflight before an agent retries or commits code: strongest detected issue, issue count, and whether deeper review is warranted. Source is never executed or retained.","tags":["python","bug-detection","security-review","preflight","static-analysis"],"priceUsd":0.005,"inputSchema":{"type":"object","properties":{"code":{"type":"string","description":"Python source for a fast static bug/security signal. Max 16,000 characters; never executed."},"intent":{"type":"string","description":"What the code should do. Max 1,800 characters."},"language":{"type":"string","enum":["python"]}},"required":["code","intent"],"additionalProperties":false},"accepts":[{"scheme":"exact","network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x3babf5340E5a14979CB91331Cb428b97584e26aE","amount":"5000","extra":{"name":"USD Coin","version":"2"}}]},{"resource":"https://blinka-machine-mouths.netlify.app/debug-python","method":"POST","name":"Blinka Debug Python Error Diagnosis","description":"Debug a Python traceback, exception, or observed error from caller-supplied source code. Returns a bounded diagnosis, evidence, strongest static issue, and suggested fix; code is never executed or retained.","tags":["python","traceback","exception","debugging","bug-diagnosis"],"priceUsd":0.01,"inputSchema":{"type":"object","properties":{"code":{"type":"string","description":"Python source associated with the observed failure. Max 16,000 characters; never executed."},"error":{"type":"string","description":"Observed Python error, exception, traceback, or failure message. Max 4,000 characters."},"intent":{"type":"string","description":"Optional intended behavior used to disambiguate the diagnosis. Max 1,800 characters."},"language":{"type":"string","enum":["python"]}},"required":["code","error"],"additionalProperties":false},"accepts":[{"scheme":"exact","network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x3babf5340E5a14979CB91331Cb428b97584e26aE","amount":"10000","extra":{"name":"USD Coin","version":"2"}}]},{"resource":"https://blinka-machine-mouths.netlify.app/code-review","method":"POST","name":"Blinka Python Code Review","description":"Conservative Python code review against stated intent for bugs, security issues, missing edge cases, correctness mismatches, and repair suggestions. Code is never executed or retained.","tags":["python","code-review","security-review","bugs","intent-mismatch"],"priceUsd":0.25,"inputSchema":{"type":"object","properties":{"code":{"type":"string","description":"Python source code to review statically. Max 16,000 characters; never executed."},"intent":{"type":"string","description":"What the code is supposed to do, used to detect correctness mismatches. Max 1,800 characters."},"language":{"type":"string","enum":["python"],"description":"Currently python only."}},"required":["code","intent"],"additionalProperties":false},"accepts":[{"scheme":"exact","network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x3babf5340E5a14979CB91331Cb428b97584e26aE","amount":"250000","extra":{"name":"USD Coin","version":"2"}}]},{"resource":"https://blinka-machine-mouths.netlify.app/okx-structure","method":"POST","name":"Blinka Structure Extract - X Layer","description":"The same evidence-backed structured extraction contract through X Layer USDT0 for OKX-compatible agent marketplaces.","priceUsd":0.01,"inputSchema":{"type":"object","properties":{"text":{"type":"string","description":"Untrusted source text already in hand. Max 12,000 characters. No URLs are fetched."},"schema":{"type":"object","description":"JSON Schema the returned data must validate against."},"instruction":{"type":"string","description":"Optional extraction focus. It cannot authorize invention of facts."}},"required":["text","schema"],"additionalProperties":false},"accepts":[{"scheme":"exact","network":"eip155:196","asset":"0x779ded0c9e1022225f8e0630b35a9b54be713736","payTo":"0x3babf5340E5a14979CB91331Cb428b97584e26aE","amount":"10000","extra":{"name":"USD₮0","version":"1"}}]},{"resource":"https://blinka-machine-mouths.netlify.app/okx-recover","method":"POST","name":"Blinka Recovery Handoff - X Layer","description":"The same evidence-bound workflow recovery handoff plus deterministic continuation contract through X Layer USDT0 for OKX-compatible agent marketplaces; failed-run authority never carries forward automatically.","priceUsd":0.25,"inputSchema":{"type":"object","properties":{"goal":{"type":"string","description":"The bounded task the failed run was trying to accomplish."},"run_log":{"type":"string","description":"Transcript, tool results, errors, or state summary from the failed/stalled run. Max 9,000 characters."},"available_tools":{"type":"array","items":{"type":"string"},"description":"Exact tool names the next agent is allowed to use."},"constraints":{"type":"string","description":"Optional hard constraints such as no network, read-only, or do-not-touch paths."}},"required":["goal","run_log"],"additionalProperties":false},"accepts":[{"scheme":"exact","network":"eip155:196","asset":"0x779ded0c9e1022225f8e0630b35a9b54be713736","payTo":"0x3babf5340E5a14979CB91331Cb428b97584e26aE","amount":"250000","extra":{"name":"USD₮0","version":"1"}}]}],"mcp":{"url":"https://blinka-machine-mouths.netlify.app/mcp","transport":"streamable-http","tools":["structure_json","rescue_signal","recover_workflow","code_signal_python","debug_python_error","code_review_python","rescue_workflow_pro","procurement_catalog","validate_procurement_request"]},"payment":{"x402":{"version":2,"currency":"USDC","networks":["base"],"primaryNetwork":"base","priceRange":"$0.001–$3.00","payTo":"0x3babf5340E5a14979CB91331Cb428b97584e26aE","nonCustodial":true}}}