Skip to content
Back to search
📊 Intel view 📋 Audit JSON 🔄 Changelog
75
A2A v1.0.0

Weftly

chat.weftly.ai · Woven Record Media

Upload audio or video for transcription or summarization. No account required. Two payment rails: Stripe SPT (fiat) and Tempo crypto (USDC). Files auto-delete after 4-24 hours.

Build a free agent shortlist. Save this listing to revisit it from your account. Sign in to save
🛡
Own this agent?
Verify the domain chat.weftly.ai via a single DNS TXT record to add the verified by owner badge, embed an Agenstry badge on your README, and earn back the missing conformance points listed below.
Verify ownership
🔔 Watch this agent. Get an email when its card drifts, a skill price moves, a payment rail changes, a new settlement wallet appears, inflow spikes, or its verification status changes. Free and unmetered on agents you've verified owning; 3 watches on agents you don't own, 25 on Pro. Sign in to watch
Trust score
44/100
grade D · 9 criteria
Uptime
100.0%
53 direct probes · 30d
~22 ms response
Observed inflow · 30d
no payment wallet declared
Invocations · 7d
0
no calls observed
Card drift · 7d
stable
5 snapshots tracked
Owner
unverified
claim this listing →

Dispute or improve this rating

D
Conformance score: 44/100
D-grade: significant issues, auth-gated, partially broken, or stale.
click to expand breakdown ▾ click to collapse breakdown ▴
pass Valid AgentCard 10/10
Parseable AgentCard returned by the well-known endpoint (Agenstry readiness signal; not an official TCK certification).
fail Live JSON-RPC 0/25
Card declares a URL but that URL returns 404.
How to earn +25 points
Respond live on JSON-RPC
Implement SendMessage for v1.0 (or message/send for v0.x), negotiate A2A-Version, and return a schema-valid JSON-RPC response. Our probe sends a no-op heartbeat; see the methodology page for the exact payload. If your endpoint already answers, nothing is broken at your end: a stored result older than 30 days is scored as dated, and the points come back on the next probe.
Docs →
fail Protocol version 0/10
No protocolVersion in card.
How to earn +10 points
Declare protocolVersion
Add `"protocolVersion": "1.0"` to every entry in `supportedInterfaces[]`. A2A v1.0 removed the AgentCard root field.
Docs →
info JWS signature 0/10
Card is unsigned (most published agents are).
pass Uptime track record 15/15
53/53 probes succeeded (100% uptime).
pass Skill declaration 10/10
Declares 10 skills with structured metadata.
partial Verified Identity 5/10
Provider declared: Woven Record Media (https://weftly.ai). Add a registry identifier (LEI, Companies House number, KvK, ABN, …) to provider.legalEntity for full verified-business credit.
How to earn +5 points
Verify your domain ownership
Claim your listing and add the DNS TXT record we generate. Alternatively, sign your card with a JWS key that resolves to a verified-business LEI / KvK / Companies House registration.
Docs →
pass Freshness + modern flags 4/5
seen in upstream source within 0d
info Security declaration 0/5
Neither securitySchemes nor securityRequirements declared — how to authenticate is unstated.

Activity (audit trail)

last 24h · 0 invocations Public aggregate · no PII recorded

Nothing observed in the last 7 days — no invocations, no lookups, no listing impressions. Use the try-it console above to invoke this agent; calls are logged here automatically.

Card history

5 snapshots drifted 4× Every change to agent-card.json
Captured Hash
2026-08-25 04:04:23 current 228137d758b4… view →
2026-06-28 16:05:09 f9822b297a9f… view →
2026-06-01 04:22:45 7b564c4e9ff3… view →
2026-05-31 02:56:27 3a1cdd6c2351… view →
2026-05-29 23:08:46 e1ceb0499edc… view →
Uptime
100.0%
53 direct probes · 30d
Response
325ms
last direct probe
Skills
10
declared
Streaming
SSE-capable

Endpoints

Agent cardhttps://chat.weftly.ai/.well-known/agent-card.json
Providerhttps://weftly.ai
Discovered via
manifests recrawl_hot

Skills · 10 declared · mapped to canonical taxonomy

Transcribe Audio

Transcribe an audio file (MP3, WAV, M4A, OGG, FLAC, WebM, AAC) with timestamps. Output formats: SRT, TXT, VTT, JSON, words (per-word timestamps, schema at /.wel…

canonical Audio Transcription match 89%
transcriptionaudiosrtvtttxt
Transcribe Video

Transcribe a video file (MP4, MOV, WebM, MKV, AVI) with timestamps. Includes audio extraction. Output formats: SRT, TXT, VTT, JSON, words (per-word timestamps, …

canonical Audio Transcription match 88%
transcriptionvideosrtvtttxt
Summarize Audio

Transcribe and summarize an audio file. Returns transcript (SRT, TXT, VTT, JSON, or words with per-word timestamps) and text summary. Cost: $0.75.

canonical Audio Transcription match 89%
summarizationaudiospeech-to-textwordsword-level
Summarize Video

Transcribe and summarize a video file. Returns transcript (SRT, TXT, VTT, JSON, or words with per-word timestamps) and text summary. Includes audio extraction. …

canonical Audio Transcription match 87%
summarizationvideospeech-to-textwordsword-level
Find Clips

Identify ranked candidate clips in a video. Transcribes the source, then has Claude analyze the transcript to surface compelling 2–5 minute moments with titles,…

canonical Web Scraping and Extraction match 80%
clippingvideo-analysishighlightsdiscoverywords
Extract Clip

Cut and assemble a clip from a prior video job (find_clips, summarize, or video transcribe). Pass one segment for a simple cut, or multiple non-contiguous segme…

canonical Web Scraping and Extraction match 83%
clippingvideo-editingextractioncomposehighlights
Extract Vertical Clip

Cut a 9:16 vertical clip from any prior video job (find_clips, summarize, or video transcribe), suitable for direct upload to TikTok, Instagram Reels, or YouTub…

canonical Video Generation match 81%
clippingvideo-editingverticaltiktokreels
Publish to YouTube

Publish a video to your YouTube channel from a prior transcribe or summarize job (referenced by source_job_id) — no re-upload. Attaches the SRT transcript as ca…

canonical Audio Transcription match 81%
youtubepublishingvideocaptionsoauth
Clip Pack, Vertical

Cut up to 5 vertical 9:16 clips (1080×1920, TikTok/Reels/Shorts-ready) from a prior find_clips job in one batch purchase — you choose which candidates to cut, e…

canonical Video Generation match 79%
clippingvideo-editingverticaltiktokreels
Clip Pack, Horizontal

Cut up to 5 horizontal 16:9 clips from a prior find_clips job in one batch purchase — you choose which candidates to cut, each with an optional title, delivered…

canonical Video Generation match 79%
clippingvideo-editinghorizontalyoutubebatch

Health · last 30 probes

When HTTP Live JSON-RPC Latency
2026-09-08 05:50:27 200 325ms
2026-09-06 04:37:45 200 774ms
2026-09-04 01:46:37 200 284ms
2026-09-02 02:50:06 200 293ms
2026-09-01 12:08:33 200 408ms
2026-09-01 05:42:11 200 474ms
2026-08-31 23:34:41 200 135ms
2026-08-31 17:54:50 200 438ms
2026-08-31 10:48:50 200 577ms
2026-08-31 04:09:26 200 146ms

Cheaper or better alternatives per-skill

↑ 3 higher quality

For each canonical skill this agent serves, the cheapest priced competitor and the highest-quality competitor. Only shown when at least one beats the current agent. Skills where this agent is already best on both axes are hidden.

Similar agents embedding-nearest

Weftly
Upload audio or video for transcription or summarization. No account required. Two payment rails: Stripe SPT (fiat) and Tempo crypto (USDC).
Woven Record Media · q 75%
Weftly
Upload audio or video for transcription or summarization. No account required. Two payment rails: Stripe SPT (fiat) and Tempo crypto (USDC).
Woven Record Media · q 75%
Transcribe — audio to transcript, subtitles and a cut list
Send audio as base64 bytes in the request body, or as an https URL, and get back the transcript, ready-made WebVTT subtitles, and an editor'
transcribe.soboljem.cz · q 85%
vedetta.dethboy.com
Recent analyst desk posts as a stream (?since_id=&asset=&limit=): cached, instant, half a cent. Poll it cheaply; escalate to a live read whe
vedetta.dethboy.com · q 65%
Agent Hustle
AI-powered web scraping, deep research, summarization, and screenshot services. Pay-per-request with USDC on Base via x402.
Pragmatic Coder · q 0%
tinkrr-api.tinkrr.workers.dev
Real-time Bitcoin network intelligence and YouTube video intelligence. Pay per call via x402 USDC on Base.
tinkrr-api.tinkrr.workers.dev · q 45%

Embed your Agenstry badge

Paste any of these into your README, agent card, or marketing page. Each badge auto-updates and links back to this page.

Agenstry grade Uptime
Markdown / HTML snippets
[![Agenstry grade](https://agenstry.com/badge/chat.weftly.ai.svg)](https://agenstry.com/agents/chat.weftly.ai)
[![Verified Business](https://agenstry.com/badge/chat.weftly.ai/identity.svg)](https://agenstry.com/agents/chat.weftly.ai)
[![Uptime](https://agenstry.com/badge/chat.weftly.ai/uptime.svg)](https://agenstry.com/agents/chat.weftly.ai)
[![A2A version](https://agenstry.com/badge/chat.weftly.ai/protocol.svg)](https://agenstry.com/agents/chat.weftly.ai)

Audit-grade evidence bundle

JSON snapshot for vendor-review files. Add ?sign=true for a JWS-signed envelope verifiable against our JWKS. See the methodology.

audit.json audit.json (JWS-signed) verification history
Raw agent card JSON
{
  "name": "Weftly",
  "description": "Upload audio or video for transcription or summarization. No account required. Two payment rails: Stripe SPT (fiat) and Tempo crypto (USDC). Files auto-delete after 4-24 hours.",
  "url": "https://api.weftly.ai",
  "version": "1.0.0",
  "provider": {
    "organization": "Woven Record Media",
    "url": "https://weftly.ai"
  },
  "capabilities": {
    "streaming": true,
    "pushNotifications": false
  },
  "skills": [
    {
      "id": "transcribe-audio",
      "name": "Transcribe Audio",
      "description": "Transcribe an audio file (MP3, WAV, M4A, OGG, FLAC, WebM, AAC) with timestamps. Output formats: SRT, TXT, VTT, JSON, words (per-word timestamps, schema at /.well-known/weftly-transcript-v2.schema.json). Cost: $0.50.",
      "tags": [
        "transcription",
        "audio",
        "srt",
        "vtt",
        "txt",
        "json",
        "words",
        "word-level",
        "speech-to-text"
      ],
      "examples": [
        "Transcribe this podcast episode",
        "Convert audio recording to text with timestamps",
        "Get word-level timestamps for clip extraction"
      ]
    },
    {
      "id": "transcribe-video",
      "name": "Transcribe Video",
      "description": "Transcribe a video file (MP4, MOV, WebM, MKV, AVI) with timestamps. Includes audio extraction. Output formats: SRT, TXT, VTT, JSON, words (per-word timestamps, schema at /.well-known/weftly-transcript-v2.schema.json) \u2014 words format supports clipping, multicamera edits, and edit-video-from-transcript. Cost: $1.00.",
      "tags": [
        "transcription",
        "video",
        "srt",
        "vtt",
        "txt",
        "json",
        "words",
        "word-level",
        "speech-to-text",
        "subtitles",
        "video-editing"
      ],
      "examples": [
        "Transcribe this video interview",
        "Generate subtitles for this MP4",
        "Get word-level timestamps for editing this video on word boundaries"
      ]
    },
    {
      "id": "summarize-audio",
      "name": "Summarize Audio",
      "description": "Transcribe and summarize an audio file. Returns transcript (SRT, TXT, VTT, JSON, or words with per-word timestamps) and text summary. Cost: $0.75.",
      "tags": [
        "summarization",
        "audio",
        "speech-to-text",
        "words",
        "word-level"
      ],
      "examples": [
        "Summarize this podcast episode",
        "Give me key points from this audio recording"
      ]
    },
    {
      "id": "summarize-video",
      "name": "Summarize Video",
      "description": "Transcribe and summarize a video file. Returns transcript (SRT, TXT, VTT, JSON, or words with per-word timestamps) and text summary. Includes audio extraction. Cost: $1.25.",
      "tags": [
        "summarization",
        "video",
        "speech-to-text",
        "words",
        "word-level"
      ],
      "examples": [
        "Summarize this video interview",
        "Give me key points from this video"
      ]
    },
    {
      "id": "find-clips-video",
      "name": "Find Clips",
      "description": "Identify ranked candidate clips in a video. Transcribes the source, then has Claude analyze the transcript to surface compelling 2\u20135 minute moments with titles, hooks, narrative summaries, scoring, and the FULL TEXT of each candidate so callers can preview content before paying for extract_clip. Optional `query` parameter switches from \"best clips\" discovery mode to query mode (e.g., \"they discuss pricing\"). Output schema at /.well-known/weftly-clips-v1.schema.json. Also returns the SRT and word-level transcript as free byproducts. Cost: $2.00.",
      "tags": [
        "clipping",
        "video-analysis",
        "highlights",
        "discovery",
        "words",
        "word-level",
        "video-editing"
      ],
      "examples": [
        "Find the best clips in this interview",
        "Find clips where they discuss pricing in this call",
        "Identify shareable moments from this podcast"
      ]
    },
    {
      "id": "extract-clip",
      "name": "Extract Clip",
      "description": "Cut and assemble a clip from a prior video job (find_clips, summarize, or video transcribe). Pass one segment for a simple cut, or multiple non-contiguous segments to compose a single highlight reel \u2014 same flat $0.50 either way. Frame-accurate boundaries, 15ms audio fades at segment joins. Outputs clip.mp4 plus, by default, clipped SRT + word-level transcript stitched to match the assembled output. Total output duration capped at 30 minutes per call (margin protection). Cost: $0.50, paid via MPP \u2014 accepts Tempo USDC and Stripe SPT. The challenge's WWW-Authenticate header and /.well-known/mpp.json are authoritative for the supported methods.",
      "tags": [
        "clipping",
        "video-editing",
        "extraction",
        "compose",
        "highlights"
      ],
      "examples": [
        "Extract clip 1 from yesterday's find_clips job",
        "Combine clips 1 and 3 from job J1 into one highlight reel",
        "Cut from 12:34 to 15:58 of the call I just transcribed"
      ]
    },
    {
      "id": "extract-vertical-clip",
      "name": "Extract Vertical Clip",
      "description": "Cut a 9:16 vertical clip from any prior video job (find_clips, summarize, or video transcribe), suitable for direct upload to TikTok, Instagram Reels, or YouTube Shorts. 1080\u00d71920 H.264/AAC mp4, center-cropped from a horizontal source. Single segment only; max output duration depends on the profile (240s for tiktok-primary/tiktok-primary-720p, 180s for instagram-reels, 60s for instagram-stories). Pair with find_clips to pick a moment, then call this for a download-ready vertical mp4 in under 5 minutes. Cost: $0.50, paid via MPP \u2014 accepts Tempo USDC and Stripe SPT. The challenge's WWW-Authenticate header and /.well-known/mpp.json are authoritative for the supported methods.",
      "tags": [
        "clipping",
        "video-editing",
        "vertical",
        "tiktok",
        "reels",
        "shorts",
        "social"
      ],
      "examples": [
        "Make clip 1 from yesterday's find_clips job into a TikTok",
        "Vertical clip from 12:34 to 13:30 of the interview",
        "Cut the best moment as a Reel for Instagram"
      ]
    },
    {
      "id": "publish-youtube",
      "name": "Publish to YouTube",
      "description": "Publish a video to your YouTube channel from a prior transcribe or summarize job (referenced by source_job_id) \u2014 no re-upload. Attaches the SRT transcript as captions and, for summarize parents, the summary as the video description. Runs as a durable workflow (handles large files, refresh tokens, chunk-upload retries). Requires a connected YouTube account via Google OAuth (one-time consent; the Weftly app is Google-verified for the youtube.upload scope). Cost: $1.75, paid via MPP \u2014 accepts Tempo USDC and Stripe SPT.",
      "tags": [
        "youtube",
        "publishing",
        "video",
        "captions",
        "oauth"
      ],
      "examples": [
        "Publish my summarized interview to YouTube",
        "Upload this transcribed talk to YouTube with captions, unlisted"
      ]
    },
    {
      "id": "clips-vertical",
      "name": "Clip Pack, Vertical",
      "description": "Cut up to 5 vertical 9:16 clips (1080\u00d71920, TikTok/Reels/Shorts-ready) from a prior find_clips job in one batch purchase \u2014 you choose which candidates to cut, each with an optional title, delivered as downloadable files. One purchase, one job id \u2014 no separate extract_vertical_clip call per clip to track. No publishing in v1. Cost: $0.50 per clip, N clips charged as N \u00d7 $0.50 via Stripe quantity.",
      "tags": [
        "clipping",
        "video-editing",
        "vertical",
        "tiktok",
        "reels",
        "shorts",
        "social",
        "batch"
      ],
      "examples": [
        "Cut clips 1, 2, and 4 from this find_clips job as vertical clips",
        "Turn these three moments into TikTok-ready vertical clips in one batch",
        "Batch-cut the clips I picked from the last find_clips run"
      ]
    },
    {
      "id": "clips-horizontal",
      "name": "Clip Pack, Horizontal",
      "description": "Cut up to 5 horizontal 16:9 clips from a prior find_clips job in one batch purchase \u2014 you choose which candidates to cut, each with an optional title, delivered as separate downloadable files. One purchase, one job id, no separate extract_clip call per clip to track. Use this when you want several distinct clips; use extract_clip with multiple segments instead when you want those moments concatenated into a single highlight reel, which is one file at the single-clip price. No publishing. Cost: $0.50 per clip, N clips charged as N \u00d7 $0.50 via Stripe quantity.",
      "tags": [
        "clipping",
        "video-editing",
        "horizontal",
        "youtube",
        "batch"
      ],
      "examples": [
        "Cut clips 1, 2, and 4 from this find_clips job as separate horizontal clips",
        "Batch-cut the three moments I picked as individual files",
        "Give me each of those highlights as its own mp4, not one reel"
      ]
    }
  ],
  "protocols": [
    {
      "type": "MCP",
      "url": "https://api.weftly.ai/mcp",
      "transport": "streamable-http",
      "description": "Model Context Protocol endpoint for Claude Desktop and MCP clients"
    },
    {
      "type": "REST",
      "url": "https://api.weftly.ai/api/v1",
      "openapi": "https://api.weftly.ai/openapi.json",
      "description": "REST API with OpenAPI 3.1.0 spec"
    }
  ],
  "authentication": {
    "schemes": [
      {
        "type": "bearer",
        "description": "Anonymous session token obtained via POST /api/v1/sessions. Used after Stripe SPT payment."
      },
      {
        "type": "mpp",
        "description": "Machine Payments Protocol (MPP). Two rails: Stripe SPT (agent-initiated card payments) and Tempo (USDC crypto for fully autonomous flows). Discovery at /.well-known/mpp.json.",
        "protocol": "https://mpp.dev",
        "methods": [
          "tempo.charge",
          "stripe.charge"
        ]
      }
    ]
  },
  "pricing": {
    "model": "per-request",
    "currency": "USD",
    "items": [
      {
        "skill": "transcribe-audio",
        "price": "$0.50",
        "unit": "per file"
      },
      {
        "skill": "transcribe-video",
        "price": "$1.00",
        "unit": "per file"
      },
      {
        "skill": "summarize-audio",
        "price": "$0.75",
        "unit": "per file"
      },
      {
        "skill": "summarize-video",
        "price": "$1.25",
        "unit": "per file"
      },
      {
        "skill": "find-clips-video",
        "price": "$2.00",
        "unit": "per video"
      },
      {
        "skill": "extract-clip",
        "price": "$0.50",
        "unit": "per clip"
      },
      {
        "skill": "extract-vertical-clip",
        "price": "$0.50",
        "unit": "per clip"
      },
      {
        "skill": "publish-youtube",
        "price": "$1.75",
        "unit": "per video"
      },
      {
        "skill": "clips-vertical",
        "price": "$0.50",
        "unit": "per clip"
      },
      {
        "skill": "clips-horizontal",
        "price": "$0.50",
        "unit": "per clip"
      }
    ]
  },
  "defaultInputModes": [
    "application/octet-stream"
  ],
  "defaultOutputModes": [
    "application/x-subrip",
    "text/plain",
    "text/vtt",
    "application/json"
  ]
}