Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

Benchline

REMOTE · BENCHLINE.FABWASEEM.COM

Open-source developer, PDF, image, SEO and security tools over a stateless HTTP MCP server. No key.

0 this week 18 Trust /100

Last scanned (22 hours ago)

Scores higher than 4% of remote servers

Unreachable for 1 day in a row. Last reached 3 Nov 2026.

Recent critical change

TLS certificate (4 Nov 2026). See the changelog before you install this server.

Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →

Endpoint Security0
Transport & Reachability0
Schema Quality & AI Usability0
  • Schema not yet verified: we couldn't read the endpoint's schema, or could read only part of its tool list.Unverified
Stability & Change Management0
  • Stability not yet verified: not enough scan history yet (needs a 30-day window).Unverified
Tool Coverage0
  • Tool coverage not yet verified: we couldn't read the endpoint's tools, or could read only part of the list.Unverified
Tool Safety0
  • Tool safety not yet verified: we couldn't read the endpoint's tools, or could read only part of the list.Unverified
Capabilities0
  • Capabilities not yet verified: we couldn't read the endpoint's capabilities.Unverified

Unverified: 5 categories

Categories scored 0 because we could not verify them: authentication we do not have, an unreachable endpoint, or not enough scan history. We only credit what we can confirm.

Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 4 Nov 26 0
    • TLS certificate: pass → fail ▼ critical
    • Score status: scored → failed ▼ critical
    • Endpoint reachability: not serving MCP → unreachable ▼ security
    • HSTS header: fail → unverified ▼ security
    • Transport: Transport check failed: declared streamable-http, but the TLS certificate failed verification. security
  • 24 Oct 26 −44
    • Endpoint reachability: reachable → not serving MCP ▼ security
    • Stability: 0.13 → unverified ▼ security
    • Tool safety: pass → unverified ▼ security
    • HTTPS: pass → unverified ▼ security
    • Transport: pass → fail ▼ security
    • Authorization: Authorisation not yet verified: we couldn't confirm whether this endpoint requires it. security
    • Capabilities: pass → unverified ▼ functional
    • Tool coverage: 100 → unverified ▼ functional
    • First check of Schema quality: unverified functional
  • 23 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 10 to 13. That category is still filling its 30-day observation window: 3 days of observed history at the previous scan, 4 at this one. The score rises as the window fills, whether or not the server changes.

  • 21 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 3 to 7. That category is still filling its 30-day observation window: 1 days of observed history at the previous scan, 2 at this one. The score rises as the window fills, whether or not the server changes.

  • 20 Oct 26 0
    • Stability: unverified → 0.03 ▲ functional
  • 19 Oct 26 60

    First indexed and scored.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 4 Nov 2026 · Probed https://benchline.fabwaseem.com/mcp

TLS invalid

Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .

Chain error: hostname_mismatch

Subject Issuer Valid from Valid until Key Signature Serial
CN=TRAEFIK DEFAULT CERT CN=TRAEFIK DEFAULT CERT 4 Nov 2026 4 Nov 2027 RSA 2048 SHA256-RSA 30a0febffd06e6ad8a334a4763dc8c96
SANs: 155ec223a28ef6b36b374722ead37691.f60aaa0ee38b2a2d971ddd1ae7c54f35.traefik.default

Background: What to check on a remote MCP endpoint →

DNSSEC insecure

Validation of benchline.fabwaseem.com. — Not signed

Zone DS Keys Algorithms Outcome
. trust_anchor 20326, 38696 8, 8 Verified
com. present 19718 13 Verified
fabwaseem.com. absent Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation
Authentication Inconclusive

We could not reach the endpoint well enough to judge its authorisation posture.

Result Inconclusive

Background: How OAuth 2.1 works in the 2026 MCP spec →

Transports 2 probes
Transport URL Outcome Status Location
streamable-http https://benchline.fabwaseem.com/mcp TLS failed
http (plaintext) http://benchline.fabwaseem.com/mcp Inconclusive 503
MCP tools · 82 exposed · ~8,833 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
generate_fake_data ~86

Generate seeded lorem ipsum, or fake JSON, CSV, or SQL rows from a list of field types.

NameTypeReqDescription
countinteger––
fieldsarray––
formatstring––
kindstring––
modestring––
rowsinteger––
seedinteger––
tablestring––
NameTypeReqDescription
formatstringyes–
outputstringyes–
rowsintegeryes–

No examples provided.

generate_favicon ~147

Build a favicon pack from an image or up to three letters. The ZIP contains favicon.ico, PNG sizes, a web manifest, an HTML snippet, and a Next.js metadata snippet. Letters are drawn with a built-in bitmap font so the result does not depend on a system font. Send base64 or a public URL. Private addresses are refused and the decoded file is capped at 10 MB.

NameTypeReqDescription
backgroundstring––
colorstring––
fileobject–A square-or-any image. Provide file or text.
namestring––
textstring–Up to three letters drawn as the mark. Provide file or text.
NameTypeReqDescription
bytesintegeryes–
datastringyesZIP of the favicon files as base64.
filenamestringyes–
htmlstringyes–
manifeststringyes–
mimestringyes–
nextMetadatastringyes–
previewstringyes32 pixel PNG as base64.

No examples provided.

generate_invoice ~72

Build an invoice or quote PDF from company and client details, line items with quantities and rates, a tax rate, and an optional percent or flat discount. All money is computed in integer cents, so there are no float rounding errors. Returns the PDF as base64 plus the total.

NameTypeReqDescription
invoiceobjectyes–
NameTypeReqDescription
bytesintegeryesPDF size in bytes.
currencystringyesISO currency code used for the invoice.
datastringyesInvoice or quote PDF as base64.
totalCentsintegeryesGrand total in integer cents.

No examples provided.

generate_keypair ~123

Generate an RSA, EC, or Ed25519 key pair as PEM and JWK, or convert between PEM and JWK. The private key is returned in the result and is not stored. The page in the browser generates keys locally and does not send them.

NameTypeReqDescription
actionstring––
algstring––
jwkstring–JWK JSON to convert. Required for to_pem.
modulusLength–––
pemstring–SPKI or PKCS8 PEM to convert. Required for to_jwk.
NameTypeReqDescription
algstringyes–
jwksstringyes–
privateJwkstringyes–
privatePemstringyes–
publicJwkstringyes–
publicPemstringyes–

No examples provided.

generate_llms_txt ~78

Render llms.txt and llms-full.txt from a site name, a summary, and a list of pages. It does not crawl. Grouping follows the page URLs.

NameTypeReqDescription
pagesarrayyesPages you already know. This tool does not fetch them.
siteNamestringyes–
summarystringyes–
NameTypeReqDescription
fullstringyes–
llmsstringyes–

No examples provided.

generate_meme ~161

Render a classic top/bottom-caption meme as a PNG. Give it an image (base64, data URI, or public URL) or pick a gradient style, and it returns captioned meme artwork.

NameTypeReqDescription
bottomstring––
fontScalenumber–Caption size multiplier.
imageobject–Base image as base64, a data URI, or a public URL. Private addresses are refused. 10 MB cap. Omit to use a gradient style background.
styleIdstring–Gradient style id when no image is given: sunset, ocean, grape, forest, mono, candy. Default: sunset.
topstring––
upperboolean–Uppercase captions, classic meme style.
NameTypeReqDescription
heightintegeryes–
mimeTypestringyes–
pngstringyesPNG bytes, base64 encoded.
widthintegeryes–

No examples provided.

generate_password ~123

Generate cryptographic passwords or EFF-wordlist passphrases and report the entropy in bits. Randomness comes from the platform CSPRNG.

NameTypeReqDescription
capitalizeboolean––
countinteger––
digitboolean––
digitsboolean––
excludeAmbiguousboolean––
lengthinteger––
lowercaseboolean––
separatorstring––
stylestring––
symbolsboolean––
uppercaseboolean––
wordsinteger––
NameTypeReqDescription
bitsnumberyes–
labelstringyes–
scoreintegeryes–
valuesarrayyes–

No examples provided.

generate_qr_code ~115

Build a static QR code for text, a URL, Wi-Fi, or a vCard. Returns the payload, an SVG string, and a PNG as base64.

NameTypeReqDescription
darkstring––
eccstring––
lightstring––
margininteger––
sizeinteger––
textstring––
typestring––
urlstring––
vcardobject––
wifiobject––
NameTypeReqDescription
payloadstringyes–
pngBase64stringyes–
svgstringyes–

No examples provided.

generate_resume ~71

Build a resume PDF from profile, experience, education, and skills. A name plus at least one experience, education, or skills entry is required. Choose the clean, modern, or compact template. Returns the A4 PDF as base64.

NameTypeReqDescription
resumeobjectyes–
templatestring––
NameTypeReqDescription
bytesintegeryes–
datastringyesResume PDF as base64.
pageCountintegeryes–

No examples provided.

generate_totp ~117

Compute RFC 4226/6238 one-time passcodes from a base32 secret. Supports 6/8 digits, SHA1/SHA256/SHA512, and custom periods.

NameTypeReqDescription
algorithmstring––
atinteger–Unix time in milliseconds; defaults to now
counterinteger–HOTP counter
digits–––
modestring––
periodinteger–TOTP period in seconds
secretstringyesBase32 TOTP/HOTP secret
NameTypeReqDescription
algorithmstringyes–
codestringyes–
digitsintegeryes–
modestringyes–
periodintegeryes–
secondsRemaining–yes–

No examples provided.

generate_uuid ~78

Generate UUID version 4 or version 7 from cryptographic randomness, up to 10,000 at once, or inspect the version, variant, and v7 timestamp.

NameTypeReqDescription
actionstring––
countinteger––
valuestring–UUID to inspect when action is inspect.
versionstring––
NameTypeReqDescription
idsarrayyes–
timestampstringyes–
variantstringyes–
version–yes–

No examples provided.

hash_data ~119

Compute MD5, SHA-1, SHA-256, and SHA-512 for UTF-8 text or base64 bytes. Pass hmacKey for HMAC and expected to see which digest matches.

NameTypeReqDescription
base64string–Raw bytes as standard base64.
expectedstring–Hex or base64 digest to compare.
hmacKeystring–UTF-8 HMAC key. Omit it for a plain digest.
textstring–UTF-8 text to hash. Use this or base64.
NameTypeReqDescription
hashesarrayyes–
hmacbooleanyes–
matchesarrayyes–

No examples provided.

hash_password ~184

Hash a password with bcrypt or argon2id, or verify a hash. Returns an htpasswd line when a username is set. The password is not stored or logged. The page in the browser never sends the password; this call only hashes the arguments you send.

NameTypeReqDescription
algorithmstring––
costinteger–Bcrypt cost factor, from 4 to 12.
hashstring–Existing bcrypt or argon2id hash. When set, the password is verified instead of hashed.
iterationsinteger––
memoryinteger–Argon2id memory in KiB.
parallelisminteger––
passwordstringyesPassword to hash or verify. It is used only for this call and is not stored.
usernamestring–Optional htpasswd username. A colon is not allowed.
NameTypeReqDescription
algorithmstringyes–
hashstringyes–
htpasswdstringyes–
verifiedboolean|nullyes–

No examples provided.

images_to_pdf ~92

Turn images, sent as base64 or public URLs in order, into one PDF. JPEG and PNG are embedded directly. Other formats are converted to PNG first. Page size is A4, Letter, or fit. Private addresses are refused. Returns the PDF as base64.

NameTypeReqDescription
imagesarrayyes–
marginnumber––
orientationstring––
pagestring––
NameTypeReqDescription
bytesintegeryes–
datastringyesPDF bytes as base64.
pageCountintegeryes–

No examples provided.

inspect_meta_tags ~60

Fetch one public HTML page and report title, description, canonical, Open Graph, Twitter, and JSON-LD. Use this to see what a live URL advertises.

NameTypeReqDescription
urlstringyesA public HTML page. Only that URL is fetched.
NameTypeReqDescription
canonicalstringyes–
checksarrayyes–
descriptionstringyes–
finalUrlstringyes–
iconsarrayyes–
jsonLdTypesarrayyes–
langstringyes–
ogobjectyes–
redirectsarrayyes–
robotsstringyes–
statusnumberyes–
themeColorstringyes–
titlestringyes–
twitterobjectyes–
viewportstringyes–

No examples provided.

list_og_templates ~38

List Open Graph card templates with ids, names, categories, defaults, color presets, and field schemas.

NameTypeReqDescription
categorystring––
NameTypeReqDescription
templatesarrayyes–

No examples provided.

lookup_dns ~106

Query A, AAAA, MX, TXT, CNAME, and CAA for a public hostname over DNS-over-HTTPS, and parse SPF and DMARC. Private names are refused. The resolver is Cloudflare or Google.

NameTypeReqDescription
mailboolean–Also fetch the _dmarc TXT record and parse SPF.
namestringyesPublic hostname, such as example.com. Private names are refused.
resolverstring––
typesarray––
NameTypeReqDescription
dmarc–yes–
namestringyes–
queriesarrayyes–
recordsarrayyes–
resolverstringyes–
spf–yes–

No examples provided.

make_collage ~143

Arrange up to 9 photos into a collage layout (duo, trio, focus, quad, six, nine) with a gap and background color, and get back a square PNG.

NameTypeReqDescription
backgroundstring––
gapinteger–Gap between cells in pixels.
imagesarrayyesPhotos as base64, data URIs, or public URLs. Private addresses are refused. 10 MB cap each.
layoutstring–Layout id: duo, duo-stack, trio, focus, quad, six, nine. Unknown ids fall back to quad.
widthinteger–Output width in pixels; the collage is square.
NameTypeReqDescription
cellsintegeryesCells in the layout; cells beyond the image count stay background-colored.
heightintegeryes–
mimeTypestringyes–
pngstringyesPNG bytes, base64 encoded.
widthintegeryes–

No examples provided.

merge_pdf ~56

Combine PDF files. Each file is base64 or a public URL, and can keep a page range such as 1-3,5. Private addresses are refused. Returns one PDF as base64.

NameTypeReqDescription
filesarrayyes–
NameTypeReqDescription
bytesintegeryes–
datastringyesMerged PDF as base64.
pageCountintegeryes–

No examples provided.

minify_code ~84

Minify source code with Terser (JS), csso (CSS), or a structural HTML pass and report before/after byte counts.

NameTypeReqDescription
codestringyes–
cssLevel–––
htmlAggressiveboolean––
jsCompressboolean––
jsMangleboolean––
languagestringyes–
NameTypeReqDescription
afterBytesintegeryes–
beforeBytesintegeryes–
codestringyes–
savedBytesintegeryes–
savedPctnumberyes–

No examples provided.

optimize_svg ~117

Minify an SVG with SVGO. Send markup or a file as base64 or a public URL. Private addresses are refused and the file is capped at 10 MB. The viewBox is kept unless removeViewBox is true. Returns the optimized markup and the byte counts.

NameTypeReqDescription
fileobject–An SVG file. Provide svg or file.
precisioninteger––
removeDimensionsboolean––
removeViewBoxboolean––
svgstring–SVG markup. Provide svg or file.
NameTypeReqDescription
afterBytesintegeryes–
beforeBytesintegeryes–
savedBytesintegeryes–
savedPercentnumberyes–
svgstringyes–

No examples provided.

organize_pdf ~142

Reorder, rotate, or drop PDF pages. Each entry names a 1-based source page and a rotation of 0, 90, 180, or 270. The same page may be listed twice. Send base64 or a public URL. Private addresses are refused.

NameTypeReqDescription
datastring–PDF bytes as base64 or a data URI. Decoded size is capped at 10 MB. Provide data or url.
filenamestring––
mimeTypestring––
pagesarrayyes–
urlstring–Public URL of a PDF. Private and local addresses are refused. Provide data or url.
NameTypeReqDescription
bytesintegeryes–
datastringyesOrganized PDF as base64.
pageCountintegeryes–

No examples provided.

protect_pdf ~199

Protect a PDF with AES-256, or unlock one when the password is known. action is protect or unlock. password is the user password. ownerPassword is optional. permissions cover printing, copying, modifying, annotating, filling forms, accessibility, and assembly. Send base64 or a public URL. Private addresses are refused.

NameTypeReqDescription
actionstring––
datastring–PDF bytes as base64 or a data URI. Decoded size is capped at 10 MB. Provide data or url.
filenamestring––
mimeTypestring––
ownerPasswordstring–Owner password. Blank uses the user password.
passwordstring–User password. Required to protect or unlock. Unlock only works when this is the known password.
permissionsobject––
urlstring–Public URL of a PDF. Private and local addresses are refused. Provide data or url.
NameTypeReqDescription
bytesintegeryes–
datastringyesPDF bytes as base64.
encryptedbooleanyes–

No examples provided.

query_jsonpath ~91

Evaluate a JSONPath Plus query against a JSON document and return the matches with their paths. A number that does not fit in a JavaScript number is returned as its original digits, with a precision warning.

NameTypeReqDescription
jsonstringyesJSON document text
limitinteger–Maximum matches to return
querystringyesJSONPath query, e.g. $.store.book[*].author
NameTypeReqDescription
countintegeryes–
matchesarrayyes–
truncatedbooleanyes–
warningstringyes–

No examples provided.

read_barcode ~74

Read QR codes and barcodes from an image. Send base64 or a public URL. Private addresses are refused and the decoded file is capped at 10 MB. Returns each code's text and format. An image with no code returns an empty list.

NameTypeReqDescription
fileobjectyesThe image. Provide url or data.
NameTypeReqDescription
codesarrayyes–
countintegeryes–

No examples provided.

read_exif ~129

Read EXIF tags, including GPS, or strip them. action is read or strip. scope is all or gps. gps-only removal keeps the other JPEG tags. Other formats are re-encoded, which drops every tag. Send base64 or a public URL. Private addresses are refused and the decoded file is capped at 10 MB.

NameTypeReqDescription
actionstring––
fileobjectyesThe photo. Provide url or data.
scopestring–Used when action is strip. gps removes the GPS block from a JPEG. all re-encodes and drops every tag.
NameTypeReqDescription
bytesintegeryes–
camerastringyes–
datastringyesCleaned image as base64. Empty when action is read.
filenamestringyes–
gps–yes–
heightintegeryes–
mimestringyes–
notestringyes–
strippedstringyes–
tagsarrayyes–
whenstringyes–
widthintegeryes–

No examples provided.

read_image_text ~121

Extract text from an image with Tesseract. language defaults to eng. Other codes in the list are fetched when first used. Send base64 or a public URL. Private addresses are refused and the decoded file is capped at 10 MB. Returns the text and a confidence from 0 to 100. An image with no text returns an empty string.

NameTypeReqDescription
fileobjectyesThe image. Provide url or data.
languagestring–A Tesseract language code such as eng, spa, fra, deu, or jpn.
NameTypeReqDescription
confidencenumberyes–
languagestringyes–
textstringyes–

No examples provided.

remove_background ~173

Remove a solid or near-solid background by flood-filling from the border. color is an optional #rrggbb. The portrait model runs in the browser, not in this handler: MODNet is Apache-2.0, RMBG-1.4 is non-commercial, and the ONNX runtime is too large for the serverless function. Send base64 or a public URL. Private addresses are refused and the decoded file is capped at 10 MB. Returns a PNG as base64.

NameTypeReqDescription
colorstring–Background color as #rgb or #rrggbb. Blank samples the corners.
featherboolean––
fileobjectyesThe image. Provide url or data.
tolerancenumber–How far a border pixel may be from the background color, in RGB distance.
NameTypeReqDescription
bytesintegeryes–
datastringyesPNG with transparency as base64.
filenamestringyes–
heightintegeryes–
methodstringyes–
mimestringyes–
notestringyes–
widthintegeryes–

No examples provided.

render_pdf_pages ~212

Render PDF pages to PNG or JPEG. DPI is 72 to 216. A page range such as 1-3,5 is optional. At most 24 pages and 25 MB of images. Send base64 or a public URL. Private addresses are refused. Returns image base64 and a ZIP when there is more than one page.

NameTypeReqDescription
datastring–PDF bytes as base64 or a data URI. Decoded size is capped at 10 MB. Provide data or url.
dpiinteger––
filenamestring––
formatstring––
mimeTypestring––
qualityinteger–JPEG quality from 1 to 100. Ignored for PNG.
rangestring–Pages to render, such as 1-3,5. Blank renders every page, up to 24.
urlstring–Public URL of a PDF. Private and local addresses are refused. Provide data or url.
NameTypeReqDescription
imagesarrayyes–
pageCountintegeryes–
zipstring|nullyesZIP of the images when there is more than one, otherwise null.

No examples provided.

resize_image ~108

Resize an image by pixels or percent. Fit is contain, cover, or stretch. Send base64 or a public URL. Private addresses are refused and the decoded file is capped at 10 MB. Returns the image as base64.

NameTypeReqDescription
fileobjectyesThe image. Provide url or data.
fitstring––
height–––
lockAspectboolean––
modestring––
percentnumber––
width–––
NameTypeReqDescription
bytesintegeryes–
datastringyesResized image as base64.
extensionstringyes–
filenamestringyes–
heightintegeryes–
mimestringyes–
widthintegeryes–

No examples provided.

resize_social_image ~157

Crop and resize an image to an exact social media preset: instagram-post (1080x1080), instagram-portrait (1080x1350), instagram-story (1080x1920), youtube-thumbnail (1280x720), x-post (1200x675), x-header (1500x500), linkedin-post (1200x627), or facebook-post (1200x630). The cover crop keeps the center subject. Send base64 or a public URL. Private addresses are refused and the decoded file is capped at 10 MB. Returns the image as base64 PNG.

NameTypeReqDescription
fileobjectyesThe image. Provide url or data.
presetstringyesSocial platform preset with exact pixel dimensions.
NameTypeReqDescription
bytesintegeryes–
datastringyesResized image as base64 PNG.
heightintegeryes–
widthintegeryes–

No examples provided.

score_ai_seo ~75

Fetch a public page plus its robots.txt, sitemap, and llms.txt, then score how ready it is for AI search crawlers. Use this when you have a live URL.

NameTypeReqDescription
urlstringyesA public page. The check also reads robots.txt, sitemap.xml, and llms.txt on that origin.
NameTypeReqDescription
checksarrayyes–
finalUrlstringyes–
scorenumberyes–
statusnumberyes–

No examples provided.

sign_pdf ~99

Stamp a PNG signature image onto one or more PDF pages at given positions (fractions of the page, x and y measured from the top-left, width as a fraction of page width). The signature keeps its aspect ratio. Returns the signed PDF as base64.

NameTypeReqDescription
fileobjectyesThe PDF to sign.
placementsarrayyes–
signatureobjectyesThe signature as a PNG image, base64 or a public URL.
NameTypeReqDescription
bytesintegeryes–
datastringyesSigned PDF as base64.
pageCountintegeryes–

No examples provided.

split_pdf ~172

Extract a page range into one PDF, or split into single pages or chunks of N. Send base64 or a public URL. Private addresses are refused. Returns PDF base64 and a ZIP when there are several files.

NameTypeReqDescription
datastring–PDF bytes as base64 or a data URI. Decoded size is capped at 10 MB. Provide data or url.
everyinteger–Used when mode is chunks.
filenamestring––
mimeTypestring––
modestring––
namestring––
rangestring–Pages to keep, such as 1-3,5. Blank keeps every page.
urlstring–Public URL of a PDF. Private and local addresses are refused. Provide data or url.
NameTypeReqDescription
filesarrayyes–
pageCountintegeryes–
zipstring|nullyesZIP of the PDFs when there is more than one, otherwise null.

No examples provided.

test_regex ~83

Run a JavaScript regular expression against a sample and return every match, capture group, a short explanation, and an optional replacement.

NameTypeReqDescription
flagsstring––
patternstringyesJavaScript regular expression body, without slashes.
replacementstring–When set, the sample is replaced and returned.
textstringyesSample to search.
NameTypeReqDescription
explanationarrayyes–
matchesarrayyes–
replacementstring|nullyes–
truncatedbooleanyes–

No examples provided.

trim_audio ~118

Trim a WAV audio file to a time range with optional fade in and out, returning a 16-bit PCM WAV as base64. Only WAV is accepted; the web UI handles MP3/OGG/M4A.

NameTypeReqDescription
endSecnumberyesTrim end in seconds, after startSec.
fadeInSecnumber–Linear fade-in length in seconds.
fadeOutSecnumber–Linear fade-out length in seconds.
fileobjectyes–
startSecnumberyesTrim start in seconds.
NameTypeReqDescription
bytesintegeryesWAV file size in bytes.
datastringyesTrimmed audio as a 16-bit PCM WAV, base64.
durationSecnumberyesDuration of the trimmed audio in seconds.
sampleRateintegeryesSample rate in Hz.

No examples provided.

url_codec ~69

Percent-encode or decode text, or parse a URL into its host, path, hash, and query parameters.

NameTypeReqDescription
actionstring––
modestring––
plusAsSpaceboolean–When decoding, treat + as a space.
valuestringyes–
NameTypeReqDescription
hashstringyes–
hostnamestringyes–
paramsarrayyes–
pathnamestringyes–
portstringyes–
protocolstringyes–
querystringyes–
usernamestringyes–
valuestringyes–

No examples provided.

validate_json_schema ~72

Infer a JSON Schema from a sample, or validate JSON against a schema. Returns error paths plus TypeScript and Zod generated from the sample.

NameTypeReqDescription
jsonstringyesJSON document to infer from or validate.
schemastring–JSON Schema. Omit it to infer a schema from the document.
NameTypeReqDescription
errorsarrayyes–
schemastringyes–
typescriptstringyes–
validbooleanyes–
zodstringyes–

No examples provided.

validate_sitemap ~119

Validate sitemap XML or a public sitemap URL, including a sitemap index and a sample of HTTP statuses. Or generate a urlset from a list of URLs. Private addresses are refused and responses are size-capped.

NameTypeReqDescription
probeboolean–Request a sample of locations and report HTTP status.
urlstring–Public sitemap URL. Private addresses are refused.
urlsarray–URLs to place in a generated sitemap. When set, url and xml are ignored.
xmlstring–Sitemap XML. Use this or url.
NameTypeReqDescription
issuesarrayyes–
kindstringyes–
probesarrayyes–
sitemapCountnumberyes–
sitemapsarrayyes–
sourcestringyes–
urlCountnumberyes–
urlsarrayyes–
xmlstringyes–

No examples provided.

validate_websocket_url ~50

Validate and parse a ws:// or wss:// URL into its components, and optionally decode a WebSocket close code.

NameTypeReqDescription
explainCloseCodeinteger––
urlstringyes–
NameTypeReqDescription
closeCodestring––
errorstring––
hoststring––
pathstring––
portinteger––
protocolstring––
secureboolean––
validbooleanyes–

No examples provided.

zip_files ~70

Create a ZIP archive from files or list and extract the contents of a ZIP archive. Everything is handled in memory; no files are stored.

NameTypeReqDescription
archiveobject–Archive to extract (unzip mode).
filesarray–Files to zip (zip mode).
modestring––
NameTypeReqDescription
fileCountintegeryes–
filesarray–Extracted files (unzip mode).
modestringyes–
totalBytesintegeryes–
zipstring–Base64 ZIP bytes (zip mode).

No examples provided.

Install

How do I install the Benchline MCP server?

Benchline is a hosted endpoint at https://benchline.fabwaseem.com/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

remote · benchline.fabwaseem.com

# add to Claude Code
claude mcp add --transport http fabwaseem-benchline 'https://benchline.fabwaseem.com/mcp'
Common questions

What is the Benchline MCP server?

Benchline is an MCP server listed in the public MCP registry as io.github.fabwaseem/benchline. Open-source developer, PDF, image, SEO and security tools over a stateless HTTP MCP server. No key. This page covers its hosted endpoint (https://benchline.fabwaseem.com/mcp).

What tools does the Benchline MCP server expose?

Benchline exposes 82 tools: generate_llms_txt, score_ai_seo, build_open_graph, list_og_templates, decode_jwt, and 77 more. Their descriptions and schemas cost roughly 8,833 tokens of context every time the server is loaded.

Does the Benchline MCP server require authentication?

Its publisher declares no required credentials for Benchline. We have not been able to confirm that against the live endpoint, and a server can require authorisation without declaring it here.

Is the Benchline MCP server still maintained?

Benchline is still listed in the MCP registry, though our most recent checks did not reach this channel. We last reached this channel on 3 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.