@mate-tools/mcp-server

@mate-tools/mcp-server

MCP server providing 35 utility tools for AI agents including text analysis, encoding, hashing, password generation, JSON/CSV/XML parsing, regex, color, date, finance, URL metadata, SEO tags, DNS lookup, SSL inspection, and JWT decoding. Free, zero-dependency, and works with any MCP client.

Category
Visit Server

README

@mate-tools/mcp-server

npm version npm downloads Node.js License: MIT

Model Context Protocol server for mate.tools. 35 utility tools for AI agents — text analysis, encoding, hashing, password generation, JSON/CSV/XML/sitemap parsing, regex, color, date, finance, URL metadata extraction, SEO meta-tag generation, text cleanup, CSPRNG random generators, hashtag tools, DNS lookup, SSL/TLS certificate inspection, JWT decoding and more. Wraps the public mate.tools JSON API so Claude Desktop, Claude Code, Cursor, Windsurf, and any other MCP-compatible client can call them directly.

Zero dependencies · Free · No API key · CORS open · Node 18+

Quick install

Add this to your Claude Desktop / Claude Code / Cursor / Windsurf config:

{
  "mcpServers": {
    "mate-tools": {
      "command": "npx",
      "args": ["-y", "@mate-tools/mcp-server"]
    }
  }
}

Restart your client and all 35 tools appear in the picker. That's it.

All 35 tools, by category

Text (8)

Tool What it does
count_lines 16 text metrics: lines, words, sentences, paragraphs, characters, duplicates, line endings (LF/CRLF/CR), longest word, reading & speaking time.
case_convert Convert text into 9 case styles in one call: upper, lower, title, sentence, snake, kebab, camel, pascal, constant.
slugify Convert any text to a URL-safe slug. Unicode-aware, configurable separator/length, optional transliteration of non-Latin characters.
sort_lines Sort lines: asc/desc, case-sensitivity, dedupe, natural-sort (line2 before line10), locale-aware collation.
lorem_ipsum Generate placeholder text — paragraphs, sentences or words.
regex_test Match / replace / split text with a PCRE regex. Returns capture-group offsets. ReDoS-protected.
text_diff Diff two strings by line, word or character. Returns structured changes + unified diff string + Jaccard similarity.
text_cleanup Chained cleanup pipeline: trim, collapse_spaces, dedupe_lines, strip HTML/emoji/URLs/emails, normalize quotes/dashes, lower/uppercase.

Encoding (4)

Tool What it does
base64_encode Base64-encode text. Standard or URL-safe alphabet (RFC 4648 §5).
base64_decode Base64-decode. Auto-fixes missing padding; returns hex when not valid UTF-8.
url_encode Percent-encode a string. Component / form / path mode.
url_decode Decode percent-encoded URL strings.

Crypto & auth (5)

Tool What it does
hash MD5, SHA-1, SHA-256, SHA-384, SHA-512, SHA3-256, SHA3-512, CRC32 (or any subset of PHP's hash algorithms).
password Generate cryptographically random passwords (CSPRNG). Configurable length, count, character classes, ambiguous-char exclusion. Reports entropy.
password_strength Score a password 0–4 (zxcvbn-style), entropy bits, offline-GPU crack-time estimate, concerns and suggestions.
credit_card_validate Luhn check + brand detection (Visa, MC, Amex, Discover, JCB, Diners, UnionPay, Maestro, RuPay). PAN never logged.
jwt_decode Decode a JWT — header, payload, expiry status. Verify HS256/384/512 with a secret or RS256/384/512 with a PEM public key. Token never logged.

Data & structure (13)

Tool What it does
json_format Validate, pretty-print, minify or analyse a JSON document. Returns structural summary (node counts, max depth, top keys).
json_to_csv Convert a JSON array of objects to CSV. Configurable delimiter, columns, optional flattening of nested objects (meta.city, meta.zip).
xml_validate Validate XML well-formedness + optional XSD schema. Errors with line/column. XXE-safe.
sitemap_extract Fetch + parse XML sitemaps. SSRF-protected (refuses private/loopback/link-local/cloud-metadata IPs). Optional recursive expansion of sub-sitemaps.
stats Descriptive statistics for a list of numbers: mean / median / mode / stddev / variance / percentiles / IQR / geometric / harmonic.
number_base Convert integers between bases 2..36 + Roman numerals. Big-int safe via GMP.
finance_calc Multi-mode financial calculations: loan, compound interest, simple interest, discount, tip, sales tax, ROI, percentage, markup.
aspect_ratio Compute reduced aspect ratio (16:9, 4:3, 21:9, ...) from width × height, or scale a dimension to a target ratio.
color_convert Convert any color into hex / rgb / rgba / hsl / hsv / cmyk + closest named color + WCAG luminance and contrast (AA / AAA flags).
url_metadata Fetch a URL and extract title / description / OpenGraph / Twitter Card / canonical / language / hreflang / JSON-LD / favicon / response headers / element counts. SSRF-protected, 2 MB cap.
meta_tags_generate Generate a full HTML head block (meta + OpenGraph + Twitter Card + JSON-LD) from title/description/url/image. Returns ready-to-paste HTML + SEO score 0-100 with concrete warnings.
dns_lookup Resolve DNS records (A, AAAA, MX, TXT, NS, CNAME, SOA, CAA, PTR, SRV) via the system resolver. Includes reverse PTR for A records.
ssl_check Inspect a domain's TLS certificate: subject, issuer, validity, fingerprint, alt names, full chain, days remaining, negotiated protocol/cipher. SSRF-protected.

Date & time (3)

Tool What it does
timestamp Bidirectional epoch ↔ ISO 8601 ↔ RFC 3339 ↔ human. Auto-detects epoch resolution. Timezone-aware. Accepts natural language ("next monday", "+2 weeks").
date_math Add/subtract a duration from a date, or compute the diff between two dates. Optional business-day count (Mon–Fri).
age_calc Calculate age in years/months/days from DOB. Returns next birthday, days until, Western zodiac sign, generation label.

Generators & social (2)

Tool What it does
random_gen CSPRNG-backed generator: number, string (alpha/alphanumeric/numeric/hex/base58/base64url), word, picker (with/without replacement), team balancer, dice (NdM), coin, country, UUID v4 / v7.
hashtag_tools Hashtag operations on text: extract (with offsets), remove, generate (stop-word-filtered word frequency), format (camel/snake/lower/preserve). Unicode-aware.

The catalog grows over time. npx -y always fetches the latest published version — your client just needs a restart to pick up new tools.

Install snippets for every major client

Claude Desktop

Open the Claude Desktop config:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • Linux: ~/.config/Claude/claude_desktop_config.json

Add the mcpServers entry from the Quick install above and restart.

Claude Code

claude mcp add mate-tools npx -- -y @mate-tools/mcp-server

Cursor

Add to ~/.cursor/mcp.json:

{
  "mcpServers": {
    "mate-tools": {
      "command": "npx",
      "args": ["-y", "@mate-tools/mcp-server"]
    }
  }
}

Windsurf and other MCP clients

The server speaks MCP over stdio with the standard JSON-RPC 2.0 framing. Any MCP-compatible client can launch it as a subprocess with the same configuration shape.

Manual install (no npx)

npm install -g @mate-tools/mcp-server
mate-tools-mcp   # speaks JSON-RPC over stdio; plug into a client

How to verify it's working

Once installed, ask your AI agent any of these to confirm the tools are wired:

"Use mate-tools to count the lines and reading time of this paragraph."

"Hash the string secret with SHA-256."

"Generate 10 strong passwords, 20 chars, no ambiguous characters."

"Score this password: correct horse battery staple."

"Convert #ff5733 to all color spaces and tell me the WCAG contrast vs white."

"What's the aspect ratio of 3840 × 2160?"

"Diff these two paragraphs for me."

"What's the monthly payment on a $300k loan at 6.5% APR over 30 years?"

"How old is someone born on 1990-04-15? What's their zodiac sign?"

"Extract all URLs from https://example.com/sitemap.xml recursively."

"Fetch the metadata and OpenGraph tags from https://example.com for me."

"Generate SEO meta tags for an article titled and score the result."

"Roll 4d6 drop lowest, six times, for me."

"Suggest hashtags for this caption."

"Look up the MX and TXT records for example.com."

"Is the SSL certificate on github.com valid? When does it expire?"

"Decode this JWT and tell me if it's expired."

The agent will pick the right tool automatically.

How it works

The server is a single ~600-line zero-dependency Node script. Every tool call:

  1. Receives a JSON-RPC tools/call request from the MCP client.
  2. Forwards the arguments to the public mate.tools API at https://mate.tools/api/v1/{tool}.php.
  3. Returns a human-readable summary plus the full JSON response back to the client.

Nothing runs locally besides the JSON-RPC plumbing. Computation runs on mate.tools' servers behind Cloudflare. Every endpoint is rate-limited at 60 req/min and 600 req/hour per IP.

Configuration

Override the API endpoint (e.g. for testing against a staging deployment):

MATE_TOOLS_API_BASE=https://staging.mate.tools/api/v1 npx -y @mate-tools/mcp-server

Privacy

Each tool call:

  • ✅ Sends only the arguments you provide to the MCP tool.
  • ✅ Hits HTTPS in transit.
  • ✅ Is processed in memory and not logged with content.
  • ❌ Does not collect telemetry.
  • ❌ Does not require an account, API key or sign-in.

The mate.tools server logs only request method, hashed-IP (rotating daily salt), endpoint name and duration — never request content.

credit_card_validate and password_strength are explicitly engineered so the sensitive input never leaves request-handler memory. Only the validation outcome and metrics are returned.

sitemap_extract, url_metadata, and ssl_check refuse to fetch / connect to any host whose name resolves to a private (RFC 1918), loopback, link-local, or cloud-metadata IP. For HTTP-based tools, each redirect destination is re-validated, so SSRF tricks via 302 don't work. url_metadata additionally caps the response body at 2 MB. ssl_check uses a 5-second connect timeout.

jwt_decode never logs the token. Decoding runs entirely in request-handler memory; only the algorithm name, signature verification outcome, and request duration are written to the per-day access log. Use it confidently with production tokens.

regex_test enforces a hard PCRE backtrack ceiling (100,000 steps) per request — catastrophic regex patterns return a clean 422 rather than hanging the server.

random_gen is backed by PHP's random_int / random_bytes (CSPRNG) — never the Mersenne Twister. UUIDs are RFC 4122 v4 with proper version/variant bits, or v7 with millisecond-precision timestamp.

Source and documentation

Issues / feedback

Open an issue at the mate.tools contact form — please mention "@mate-tools/mcp-server" in the subject line. New tools land roughly every 1–2 weeks; if there's a specific utility you want exposed, just ask.

License

MIT — free for personal and commercial use. See LICENSE.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured