Skip to main content
Glama

Tool Offer Agent

Turn public API/MCP documentation and your seller terms into a source-attributed offer draft you can review, correct, assess and export. Tool Offer Agent is by Kingan Logic; this public judging repository is maintained under the GitHub organization Max-ROI-LLCt.

Try It In ASI:One

Open Tool Offer Agent, choose Launch Agent, and send start to @tool-offer-builder. Choose Start with my tool, supply public documentation and the requested seller terms, then ask for draft, review intake, readiness or buyer explanation. Try a fictional example is a restricted demonstration, not a live Parcel API or permission to sell it.

Known live limitation: ASI:One delivery remains under investigation. Some requests stay on “Reasoning…” despite generated hosted replies; Agentverse manual Testing returned responses. A read receipt or outgoing envelope is not confirmed ASI display. Use the included local instructions to inspect the implementation; this documentation update does not resolve or conceal the delivery incident.

Related MCP server: mcplane

Feedback Into Corrections

Competition feedback, November 7, 2026: the owner shared Trick or Feedback notes from Thạch Hồ Lê Minh, who tried the fictional Parcel journey through WebMCP and ASI:One. The tester praised field-level source links and clear noncommercial limits, requested a shorter buyer summary, and reported two WebMCP invocation errors and an unfinished ASI buyer-explanation follow-up. Feedback provenance, response and limits distinguish those open observations from confirmed fixes; no counted-feedback or delivery-success claim is made.

Separate earlier testing reported an introductory-only natural-language readiness response, intake review opening a blank replacement form, and crowded draft headings. Revision 86 routes supported readiness requests to the substantive assessment, displays retained intake with a correction/cancellation path, and separates draft headings and fields. Identical replacements preserve revision; fictional restrictions remain enforced. The dated correction report records the changes and completed checks.

Deployed product: Tool Offer Agent 1.4.9, Agentverse revision 86, release 66979784d826683d48d83d6639e924078a3a3476c3ab488a93a9a57519767f19. The canonical manifest and public Agentverse README both matched this release on the November 7 documentation readback. Deployment evidence identifies the executable source; this public Git commit identifies the judging snapshot and its documentation/license additions.

Registry history is separate: the completed 1.4.9 publication at 03:32:16.914361 UTC on November 7 corresponds to release 294379abcc1a2df39f22d9aa94423f2902e5353bb74fc29411e657e6d2c0afa1, not revision 86. The later correction deployment retained application version 1.4.9 but has the distinct release ID above. The generated discovery block below preserves the historical receipt's wording: publication alone did not deploy corrections; the later revision-86 deployment did. No new registry publication or version bump is claimed. See the dated source mapping.

VerifyMCP report for Tool Offer Agent.

The live badge links to a third-party report, not blanket security certification. No score is fixed in this repository.

For machines

Machine-readable profile (canonical): https://tooloffer.kinganlogic.com/manifest.json

This manifest is the authority for capabilities, invocation and payment boundaries. Read it first; no Agentverse page rendering or ASI:One login is required for discovery.

Capabilities

  • Read public API/MCP documentation and retain source-attributed evidence.

  • Collect seller-stated customer, pricing, payment, access and invocation terms.

  • Draft, review and revise an offer within an isolated conversation.

  • Explain the buyer offer and prepare listing guidance without publication.

  • Assess retained offer readiness deterministically without inference or payment.

  • Export structured and human-readable records, with verified multipart retrieval when needed.

Boundaries

  • Does not certify sellers, prove service execution, grant resale rights or publish listings.

  • Does not share ASI:One conversation history with machine sessions.

  • Does not connect wallets, create checkouts, execute FAHCE or make payments through MCP/REST.

  • Does not sign, spend automatically or authorize a purchase on a buyer's behalf.

MCP protocol endpoint (POST, not a webpage): https://tooloffer.kinganlogic.com/mcp Human machine-access documentation: https://tooloffer.kinganlogic.com/machine/ Browser GET returns 405 (no standalone SSE stream). /mcp/ supports the same protocol without redirecting POST bodies. REST request template (not a webpage): POST https://tooloffer.kinganlogic.com/api/machine/{tool_name} Native Agentverse address: agent1qg0p9zy9rxqz83l5p8tr7vevguk3hny963luv4pd8nu8hp87qc0syk3c88a (Fetch Agent Chat Protocol). Public Agentverse JSON profile: https://agentverse.ai/v1/agents/agent1qg0p9zy9rxqz83l5p8tr7vevguk3hny963luv4pd8nu8hp87qc0syk3c88a/profile Calls require identity-bound credentials; discovery is public. Retain session_id, request_id and job_id. Poll get_result for the same job; an acknowledgement is not completion. Never retry uncertain work with a new request_id. Verify signed results and every multipart export part.

Registry publication

Published in the official MCP Registry as com.kinganlogic/tool-offer-agent: version 1.4.9 at 2026-11-07T03:32:16.914361Z, active/latest at the verified post-publication readback. The endpoint is https://tooloffer.kinganlogic.com/mcp. Publication is complete; no reenrollment or republication is required. Later local source corrections are not thereby deployed. Publication does not establish search indexing, adoption, execution certification or hackathon acceptance.

Drafting is free; operator inference costs and published quotas still apply. Optional FAHCE evaluation is separate and buyer-authorized: 0.15 USDC on Base mainnet via the private human checkout. A free preflight is not an evaluation. Checkout preparation, wallet connection and a 402 challenge are not payment authorization, settlement or a completed result. Changed price, network, token or recipient stops payment. No automatic spending.

Documentation is evidence of documented claims, not proof of service execution or seller rights. Price, access, customer and payment terms are seller statements. Review, readiness and export never certify an offer, publish a listing or authorize commercial use. Fictional restrictions survive correction, rebuilding and export. No fabricated integrations, buyers or rights are supplied.

Entrances

Discovery is public. Machine calls use identity-bound Bearer credentials obtained through automatic OAuth registration plus private_key_jwt, or existing Fetch identity proof. There is no human enrollment queue. Machine application sessions are isolated from each other and from native ASI conversations. Retain request, session and job IDs, poll existing jobs, and verify signed completed results and every export part. A manifest or acknowledgement is not completed delivery. See machine/contract.json for actual quotas and payment boundaries; machine/access-client.mjs and machine/client.mjs implement access and verified delivery.

Payment And Trust Boundaries

Offer drafting is free to users; operator inference costs and quotas remain. Optional buyer-authorized FAHCE evaluation is a separate native-chat checkout flow, not an MCP/REST operation and not native Fetch payment integration. wallet / purchase guide explain prerequisites, preflight is free screening, and explicit check can prepare eligible checkout. A checkout or 402 challenge is not buyer authorization, payment, settlement or a positive evaluation. Never retry payment to resolve an uncertain result.

The dedicated MCP Registry publisher authenticates publication only. Its credentials and signing infrastructure are separate from product runtimes and from FAHCE execution, receipts and attestations. Registry publication does not certify an offer or authorize a purchase. No operator credentials or signing material are needed for public code review.

Source Layout

  • tool_offer_agent/: Python runtime, retained evidence, restrictions, cards, readiness and native/machine operations.

  • machine/contract.json, machine/public-profile.txt, machine/public-profile.json, machine/guide.txt: canonical release inputs. machine/release.py, machine/discovery.py, machine/surfaces.py: release generation, mirror consistency and public-asset inventory.

  • site/src/: existing Cloudflare gateway, identity registry, signing and HTTP routes. site/public/: authored homepage/styles/assets plus generated profiles, examples, schemas and instructions.

  • bridge/custody/ and tool_offer_agent/cloudflare_custody.py: separate seller-side custody Worker, tests and Python client.

  • Current checkout/relay/wallet: bridge/checkout/ contains the reviewed companion implementation, dependency lockfile, tests and provenance. It connects to separate wallet, custody and FAHCE services; this correction release did not redeploy those services. See the bridge architecture.

  • tests/, site/tests/: regression suites. build_hosted.py: flat Agentverse packaging; its Python manifest does not describe the complete system.

  • docs/RELEASE-READINESS.md: retained historical readiness report. Publication history explains which later deployment/publication records supersede its status language without rewriting its evidence.

Setup And Tests

Use Python 3.12 and Node 24. Python package metadata remains at its historical packaging version; the product release version is machine/contract.json and generated runtime constants, not the wheel filename.

python3.12 -m venv .venv
. .venv/bin/activate
python -m pip install -c constraints-validated.txt -e '.[test]'
npm --prefix site ci
npm --prefix bridge/checkout ci
tool-offer --state data/judging-local.sqlite3 --sender judging-local --session inspect --message help
python scripts/test_offline.py
TOOL_OFFER_TEST_PYTHON="$(command -v python)" npm --prefix site run check
npm --prefix bridge/checkout test

Tests use synthetic/mocked services and require no purchases. The selected fixtures are explicitly labeled where synthetic. .avctl/config.toml is intentionally included as a public identity/profile reference, not authenticated CLI state; .env.example contains placeholders. Real authentication, .env files, private caches, databases and raw customer exports are not part of the judging snapshot. Configure your own identity for a separately hosted instance; do not reuse production credentials or deploy merely to review the code.

Already completed for the unchanged executable candidate: 550 Python tests with three skips, 163 staged tests, 51 site tests, and clean-package 550 Python tests with the same three skips. The dated report and deployment readback record their scope. These are retained results, not fresh tests from this documentation commit. No GitHub Actions run was present at the November 7 publication review; no green CI result is claimed.

External runtime services are Agentverse hosting, ASI:One/native chat, the configured extraction/conversation provider, Cloudflare Worker/Durable Objects, and (only for optional evaluation) the existing checkout/relay and FAHCE service. Configure placeholders from .env.example through the appropriate secret stores. Never put gateway, custody, checkout or inference credentials in public discovery. Public documentation URLs must be accessible; private/local URLs and credentials are rejected. Provider availability and wallet eligibility are not guaranteed by this repository.

Attribution, History And Limits

This is the owner-authorized public judging snapshot of Tool Offer Agent, not a publication of the private development repository. The GitHub repository was created on November 7, 2026 at 07:44:32 UTC. Its initial snapshot commit was created locally at 07:38:42 UTC before that repository was created. Publication history distinguishes those timestamps from deployment, tests and historical transactions; they are not independent proof of original development dates or organizer eligibility.

Tool Offer Agent's reviewed contribution covers offer preparation, source attribution, retained intake, native/machine integration, correction, readiness, exports, its gateway and companion integration. Kingan Logic branding and the external FAHCE engine/payment/receipt/attestation infrastructure pre-exist these corrections; the repository does not claim to implement those external services. The November 1, 2026 transaction evidence remains historical, not a transaction on revision 86.

The ASI delivery incident, three skipped custody integration checks, four inherited high-severity dependency entries from the dated review and missing verify_new_tooloffer.mjs harness remain explicit limitations. Source inspection and local tests do not certify live delivery, service execution, commercial rights or hackathon acceptance. Do not submit credentials in chat or documentation URLs; we do not control retention by ASI or other platform components.

Future updates are separately reviewed, owner-approved snapshots, not an automatic mirror of private working files. Historical manifests and frozen ZIPs remain unchanged; the quickstart explains integrity checks after this documentation/license update.

License

The original first-party software is source-available under PolyForm Noncommercial 1.0.0, adopted on November 7, 2026. You may use, modify and share it for noncommercial purposes under those terms, while preserving the required attribution notice. Copyright remains with Kingan Logic; commercial reuse or resale requires separate permission. This is not an open-source license.

NOTICE also expressly permits organizers and judges to run and test this submission for evaluation, including on behalf of a commercial organization. It does not grant production access, authorize payments or change hosted-service terms. The owner may offer separate commercial licenses. Third-party dependencies and bundled code keep their own licenses; ownership of Tool Offer Agent and FAHCE does not replace those terms. This license addition does not establish compliance with any organizer requirement for an open-source license.

Available Tools

7 tools
assess_offer_readinessA

Deterministic assessment of your retained session without revising seller terms. No fetching, inference, FAHCE, approval or payment. Returns a job, not the report: poll get_result for signed readiness JSON plus full human_readable content, or a resumable report manifest. Not seller certification or commercial clearance. Does not revise seller terms, but creates a metered asynchronous job and may retain delivery state.

Inputs: request_id (required), session_id (required). Returns: job_id, status, release_id, session_id

export_offerA

Export your session's saved offer, proposed plan or explicitly incomplete response without inference. Large responses use the agent's resumable manifest; retrieve each indexed part with get_export_part. An export is not publication or certification. Does not revise seller terms, but creates a metered asynchronous job and may retain delivery state.

Inputs: format (required), request_id (required), session_id (required).

get_export_partB

Retrieve one existing resumable export part from your session, without inference. Preserve the manifest and verify its hashes; do not claim completion until all parts are received. Does not revise seller terms, but creates a metered asynchronous job and may retain delivery state.

Inputs: index (required), export_id (required), request_id (required), session_id (required).

get_resultA

Read a job owned by your authenticated client. pending/processing/uncertain is not completion. Poll this same job; do not duplicate an uncertain message. No inference. Polling is metered and may wake queued processing; it is not annotated as a side-effect-free read.

Inputs: job_id (required).

get_statusA

Ask the existing agent for the current offer status without inference. Returns a job; poll get_result. Does not revise seller terms, but creates a metered asynchronous job and may retain delivery state.

Inputs: request_id (required), session_id (required).

send_messageA
Destructive

Send field: value lines, or a JSON-serialized StructuredIntake object in message, a product question, a revision or a drafting command. Intake keys: tool_url, docs (URL string or 1–3 URL strings), customer, pricing, payment, access, invocation; optional job and seller_name. All other values are strings. Optional schema is TOOL_OFFER_INTAKE_V1. Unknown/duplicate keys and invalid values reject the entire update. Card selections are separate. May use bounded operator model quota. Returns a stable job; optional HTTP Prefer: wait=1 through wait=5 waits without redispatch and may include the signed completed result. Otherwise poll get_result. Never resend uncertain work with a new request_id. No payments or FAHCE execution. May overwrite seller fields or rebuild retained drafts; not read-only. Request-ID deduplication is bounded by retained session/job lifetime, not an unqualified retry guarantee.

Inputs: message (required), request_id (required), session_id (required).

start_sessionA

Create an isolated seven-day offer conversation. Requires a unique request_id; replaying it returns the same session. No model inference.

Inputs: request_id (required).

Tool Schema Changelog

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

Loading tool schema changelog…

    TDQS

    A3.9/5.0

    Scored across 7 tools

    Disambiguation4/5

    The tools mostly have distinct purposes: session creation, message sending, status, readiness assessment, export, export-part retrieval, and job polling. However, the set has several async job-producing tools that all funnel into get_result, and get_status versus get_result versus get_export_part may require careful reading to distinguish.

    Naming Consistency5/5

    Names consistently use snake_case and a verb-first pattern: start_session, send_message, get_status, assess_offer_readiness, export_offer, get_export_part, get_result. The pattern is predictable and readable throughout.

    Tool Count5/5

    Seven tools is well within the appropriate range for this workflow. Each tool maps to a meaningful lifecycle step: start, interact, inspect status, assess readiness, export, retrieve export parts, and poll job results.

    Completeness4/5

    The core offer-conversation lifecycle is covered, including session start, messaging/intake, status, readiness assessment, export, export-part retrieval, and job result polling. Minor gaps remain around session listing/closure, job cancellation, and explicit session management, but agents can work around them.

    Maintenance

    ActivityMaintained
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      A
      quality
      B
      maintenance
      Enables AI listing assistants to validate marketplace draft listings against seller-provided item specifics, returning PUBLISH or REVIEW with the exact words behind every unbacked claim.
      1
      1
      MIT
    • A
      license
      Not graded
      quality
      B
      maintenance
      Enables coding agents to preflight MCP server submissions against store rejection causes, publish where automation is allowed, prepare form-based store submissions, and detect listing drift.
      50 npm
      3
      MIT
    • A
      license
      Not graded
      quality
      C
      maintenance
      Enables MCP clients such as Claude Desktop and Cursor to read tracked app keywords, opportunities, account apps, and action plans; generate or translate listing copy; review results; and apply accepted title, subtitle, keywords, or short-description fields to an editable draft without publishing to Apple or Google.
      40 npm
      MIT
    • A
      license
      A
      quality
      B
      maintenance
      Enables users to turn any API's documentation into a tested MCP server whose tools expose the API's own operations, with linting, contract tests, and live verification. It accepts OpenAPI/Swagger, Postman, RAML, WSDL, GraphQL, RSS, and HTML docs.
      14
      26 PyPI
      Apache 2.0