Benchline MCP Server
by fabwaseemio.github.fabwaseem/benchlinev0.1.1
Open-source developer, PDF, image, SEO and security tools over a stateless HTTP MCP server. No key.
context tax
~17,459 tok/turn82 tools
security
100/100
cold start
hosted
freshness
Activetoday
Our reading of Benchline, from the data
Benchline is a security MCP server from fabwaseem, listed in the official MCP Registry.
Its 82 tools add about 17,459 tokens to every model turn, heavier than the security median of 2,214 tokens across 70 measured servers (measured 2026-10-19).
Maintenance is active: the last public signal was in the last day (2026-10-18). For comparison, 67% of security servers are active or maintained.
With 0 GitHub stars it ranks #579 of 1,263 security servers we index.
It runs as a hosted endpoint, so there is nothing to install.
Install Benchline MCP server
Install in Claude Code
claude mcp add --transport http benchline https://benchline.fabwaseem.com/mcpInstall in Cursor
{
"mcpServers": {
"benchline": {
"url": "https://benchline.fabwaseem.com/mcp"
}
}
}Install in Claude Desktop
{
"mcpServers": {
"benchline": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://benchline.fabwaseem.com/mcp"
]
}
}
}Or add it as a custom connector under Settings → Connectors. The config above bridges via mcp-remote.
Install in VS Code
{
"servers": {
"benchline": {
"type": "http",
"url": "https://benchline.fabwaseem.com/mcp"
}
}
}Install in Windsurf
{
"mcpServers": {
"benchline": {
"serverUrl": "https://benchline.fabwaseem.com/mcp"
}
}
}Remote endpoints
- streamable-http
https://benchline.fabwaseem.com/mcp
Context tax
Connecting this server adds ~17,459 tokens of tool definitions to every model turn (bloated, 82 tools). Measured 2026-10-19 via its hosted endpoint; o200k tokenizer, worst case for clients that load all tools up front. How we measure
| Model | Per 1,000 turns | With prompt caching |
|---|---|---|
| Claude Opus 5.5 | $69.84 | $3.49 |
| Claude Sonnet 5.5 | $34.92 | $3.49 |
| Claude Haiku 5.5 | $1.75 | — |
Input prices as of 2026-10-06. Excludes your own prompt and output.
Tools (82)
build_open_graph584 tokRender one of the Open Graph templates as a PNG and a Next.js opengraph-image.tsx file. Pass a template id from list_og_templates, the fields that template uses, colors, a size, and optional base64 images.
sign_pdf502 tokStamp 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.
generate_invoice432 tokBuild 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.
protect_pdf372 tokProtect 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.
generate_resume367 tokBuild 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.
generate_qr_code346 tokBuild a static QR code for text, a URL, Wi-Fi, or a vCard. Returns the payload, an SVG string, and a PNG as base64.
make_collage338 tokArrange 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.
crop_image326 tokCrop an image to a pixel box or a 0 to 1 ratio box. circle cuts a round mask. format is png, jpeg, or webp. Send base64 or a public URL. Private addresses are refused and the decoded file is capped at 10 MB. Returns the image as base64.
generate_meme317 tokRender 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.
remove_background316 tokRemove 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.
convert_unix_timestamp314 tokConvert epoch seconds, milliseconds, microseconds, or nanoseconds to ISO-8601 and RFC 2822 in an IANA time zone, or convert a calendar time back to epoch.
resize_social_image311 tokCrop 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.
resize_image299 tokResize 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.
fill_pdf_form295 tokFill an interactive PDF form's text fields, checkboxes, dropdowns, and radios by field name, with an option to flatten the result. Pass inspectOnly to list the fields first.
generate_favicon289 tokBuild 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.
hash_password287 tokHash 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.
organize_pdf283 tokReorder, 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.
render_pdf_pages283 tokRender 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.
trim_audio276 tokTrim 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.
read_exif273 tokRead 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.
generate_fake_data273 tokGenerate seeded lorem ipsum, or fake JSON, CSV, or SQL rows from a list of field types.
compress_image272 tokRe-encode an image at a quality from 1 to 100, optionally capping the longest edge. Send base64 or a public URL. Private addresses are refused and the decoded file is capped at 10 MB. Returns the image as base64.
build_nextjs_dockerfile269 tokGenerate a production Dockerfile, dockerignore, compose file, and next.config snippet for a Next.js app. Defaults match a pnpm standalone image.
images_to_pdf264 tokTurn 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.
generate_totp261 tokCompute RFC 4226/6238 one-time passcodes from a base32 secret. Supports 6/8 digits, SHA1/SHA256/SHA512, and custom periods.
generate_password258 tokGenerate cryptographic passwords or EFF-wordlist passphrases and report the entropy in bits. Randomness comes from the platform CSPRNG.
optimize_svg255 tokMinify 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.
read_image_text248 tokExtract 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.
split_pdf239 tokExtract 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.
build_csp238 tokBuild a Content-Security-Policy from directives, or lint an existing policy. Returns the header line, a Next.js headers() snippet, and warnings for unsafe sources.
merge_pdf230 tokCombine 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.
generate_keypair228 tokGenerate 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.
count_tokens224 tokCount tokens with the o200k or cl100k encoder and price the count against the published model table. Claude and Gemini rows are estimates, not those vendors' tokenizers.
compress_pdf222 tokRecompress embedded images in a PDF. Presets are light, medium, and strong. Send base64 or a public URL. Private addresses are refused. An optional target size tries harder. Returns the PDF and the sizes before and after.
convert_csv_json221 tokConvert CSV to JSON or JSON to CSV. Supports comma, tab, semicolon, and pipe delimiters, an optional header, type inference, and dotted flattening. Inferred numbers that do not fit in a JavaScript number keep their digits.
convert_image218 tokConvert an image to JPEG, PNG, WebP, or AVIF. Send base64 or a public URL. Private addresses are refused and the decoded file is capped at 10 MB. Returns the image as base64. HEIC is not decoded here.
calculate_cidr215 tokReturn the network, broadcast, host range, and host count for an IPv4 or IPv6 CIDR. Optionally test whether an address is inside it, split it, or merge it with other CIDRs.
build_json_ld210 tokBuild schema.org JSON-LD for one type, plus a script tag and a list of missing fields. Use this when you already know the fields. It does not fetch a page.
date_difference208 tokCount calendar days, elapsed time, and business days between two dates. Business days skip weekends and any YYYY-MM-DD holidays you list.
calculate_programmer206 tokEvaluate integer expressions with C-like precedence (hex/octal/binary literals, bitwise ops, shifts) and report base conversions plus signed/unsigned interpretations.
read_barcode195 tokRead 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.
lookup_dns194 tokQuery 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.
zip_files192 tokCreate a ZIP archive from files or list and extract the contents of a ZIP archive. Everything is handled in memory; no files are stored.
base64_codec185 tokEncode UTF-8 text as Base64, or decode Base64 and data URIs. URL-safe output uses - and _ and omits padding. Decode reports the sniffed media type and whether the bytes are UTF-8 text.
format_sql184 tokFormat SQL for PostgreSQL, MySQL, BigQuery, Snowflake, and other dialects. Choose keyword case and an indent of 2 or 4 spaces.
convert_units184 tokConvert length, mass, volume, temperature, area, speed, time, and data size. Decimal bytes (kB, MB) and binary bytes (KiB, MiB) are separate categories.
convert_currency182 tokConvert money between ISO 4217 currencies using live exchange rates from the Frankfurter API, fetched through the SSRF-safe outbound guard. Supports historical dates.
execute_graphqlshell180 tokSend a GraphQL query with optional variables and headers to a public http or https endpoint on port 80 or 443 and return the response data or errors. Local, private, and internal addresses are refused.
generate_llms_txt175 tokRender 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.
explain_cron174 tokTurn a cron expression into English, the next UTC run times, and snippets for crontab, GitHub Actions, Vercel, Kubernetes, and node-cron.
validate_sitemap172 tokValidate 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.
minify_code167 tokMinify source code with Terser (JS), csso (CSS), or a structural HTML pass and report before/after byte counts.
aes_crypt163 tokAES-256-GCM encryption with PBKDF2-SHA256 key derivation. Encrypt returns a base64 bundle (salt, IV, ciphertext); decrypt reverses it.
calculate_percentage162 tokCalculate percent of a value, what percent one number is of another, percent change, the reverse, an increase or decrease, and margin versus markup.
calculate_emi158 tokCalculate a reducing-balance loan installment and its amortization schedule. Money is rounded half up to cents. An optional extra monthly payment reduces principal.
convert_case156 tokConvert text to camelCase, snake_case, kebab-case, CONSTANT_CASE, and AP or Chicago title case. Returns every style unless one is requested.
hash_data155 tokCompute 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.
extract_pdf_text153 tokRead the selectable text layer of a PDF. Returns per-page text, markdown-style headings, and an o200k token count. Does not OCR scans. Send base64 or a public URL. Private addresses are refused.
query_jsonpath152 tokEvaluate 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.
format_json149 tokPretty-print or minify JSON. A number that does not fit in a JavaScript number keeps the digits you sent. Returns the formatted text when it is valid, or the line and column of each syntax error.
convert_data_format147 tokConvert between JSON, YAML, TOML, and XML. Auto-detects the source. Numbers that do not fit in a JavaScript number keep their digits. Errors include a line and column. TOML refuses null and a non-table root.
generate_uuid140 tokGenerate UUID version 4 or version 7 from cryptographic randomness, up to 10,000 at once, or inspect the version, variant, and v7 timestamp.
convert_json_to_types140 tokInfer types from a JSON document and generate TypeScript interfaces, Zod schemas, Python Pydantic models or dataclasses, and Go structs.
diff_text139 tokCompare two texts by line, word, or character, or compare JSON so object key order does not matter. Returns an inline diff, side-by-side rows for line and JSON modes, and a unified patch.
convert_color128 tokConvert HEX, RGB, HSL, OKLCH, or CMYK into every format, name the nearest Tailwind token, and report the WCAG 2 contrast ratio against a background.
url_codec126 tokPercent-encode or decode text, or parse a URL into its host, path, hash, and query parameters.
analyze_har125 tokParse a HAR (HTTP Archive) capture and summarize it: request counts, status distribution, slowest and largest requests, top hosts, and per-request timings.
test_regex124 tokRun a JavaScript regular expression against a sample and return every match, capture group, a short explanation, and an optional replacement.
explain_chmod111 tokConvert an octal or symbolic file mode into octal, symbolic notation, and a chmod command, including setuid, setgid, and the sticky bit.
convert_markdown_html111 tokConvert GitHub-flavored Markdown to HTML, or HTML to Markdown. to is html or markdown. sanitize strips scripts from the text output. The conversion does not fetch a URL.
score_ai_seo107 tokFetch 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.
fetch_page_markdownhttp107 tokFetch a public HTML page and return the article as Markdown, plus a title, excerpt, and o200k token count. Private and local addresses are refused. The response is capped at 800 KB.
validate_json_schema106 tokInfer a JSON Schema from a sample, or validate JSON against a schema. Returns error paths plus TypeScript and Zod generated from the sample.
check_robots_txt104 tokFetch a public robots.txt and report whether the wildcard group blocks the site and whether Sitemap lines are absolute. Use this when you have a URL, not a pasted file.
check_ssl101 tokConnect to a public host on port 443 and report certificate expiry, subject alternative names, protocol, and chain. Private addresses are refused. The handshake times out after 8 seconds.
check_http_headers100 tokFetch a public URL, follow redirects, and grade HSTS, Content-Security-Policy, framing, nosniff, and Referrer-Policy. Private addresses are refused. The body is not stored.
convert_curlhttp100 tokParse a curl command and generate equivalent JavaScript fetch, Python requests, Go, PHP, or Rust code.
validate_websocket_url99 tokValidate and parse a ws:// or wss:// URL into its components, and optionally decode a WebSocket close code.
decode_jwt93 tokDecode a signed JSON Web Token into its header, payload, and registered claims. Dates are absolute ISO timestamps. The signature is not checked.
inspect_meta_tags92 tokFetch one public HTML page and report title, description, canonical, Open Graph, Twitter, and JSON-LD. Use this to see what a live URL advertises.
count_text81 tokCount words, code points, graphemes, sentences, and paragraphs, and compare the length with SEO and social limits.
list_og_templates75 tokList Open Graph card templates with ids, names, categories, defaults, color presets, and field schemas.
Security signals
100/100 — no known issues found as of 2026-10-19, from the checks below. This is not a guarantee of safety; review what a server can do before connecting it.
Deductions
No findings from the checks that ran.
Checks
- ✓Repository hygiene (archived, activity, license, security policy)
- ○Package metadata (install scripts, provenance) — pending
- ○Tool descriptions (prompt-injection and hidden-text heuristics) — pending
- ○Source scan (secrets, CVEs, risky code) by vectra-guard — pending
Scan it yourself before installing with vectra-guard, the open-source agent security CLI. Scoring rules
Freshness
Active — last maintenance signal today. The newest of the signals below sets the band.
Last commit (default branch)
2026-10-18 · today · GitHub
Latest release
no data · GitHub
Package published
no data · npm/PyPI
Registry entry updated
2026-10-18 · today · official registry · v0.1.1
How it compares in Security
Against the most-starred security servers we index. Token cost is per model turn, measured from each server's live tool list.
| Server | Stars | Tools | Tokens / turn | Freshness | Runs |
|---|---|---|---|---|---|
| Benchline (this) | 0 | 82 | 17,459 | Active | hosted |
| Semgrep | 17,123 | — | not measured | Active | — |
| Ida Pro | 13,002 | — | not measured | Active | — |
| Ghidra | 11,390 | — | not measured | Active | — |
| Robin: AI-Powered Dark Web OSINT | 7,591 | — | not measured | Active | local |
| Claude Code Ultimate Guide | 6,196 | — | not measured | Active | local |
FAQ
›How do I install the Benchline MCP server in Claude Code?
Run: claude mcp add --transport http benchline https://benchline.fabwaseem.com/mcp. For Cursor, VS Code, Claude Desktop and Windsurf, use the install tabs above.
›Does Benchline require an API key?
No required environment variables are declared in its published metadata.
›Can I use Benchline as a remote (hosted) MCP server?
Yes. It is a hosted MCP server; connect to its URL with any client that supports remote MCP.
›Is Benchline in the official MCP registry?
Yes, as io.github.fabwaseem/benchline.
›How many tokens does Benchline add to my context?
Its tool definitions total about 17,459 tokens, resent on every turn.
Sources and method
- Official MCP Registry entry
- updated 2026-10-18
- GitHub repository
- fetched 2026-10-19
- Tool list (tools/list), measured by us
- 2026-10-19
- Security signals, computed by us
- 2026-10-19
- Last checked against all sources
- 2026-10-19
The description, packages and links come from the maintainer's own published metadata. Token cost, security signals, freshness and the reading above are MCPSkillHub's own measurements; see the methodology. Spot an error? Request a correction or claim the listing.
Alternatives to Benchline
Other security MCP servers.