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.

Highland Intel APIs

REMOTE · API.HIGHLND-INTEL.GROUP

70 pay-per-call APIs: DNS, email auth, security headers, web search, scraping, AI. x402 USDC/Base

+3 this week 64 Trust /100

Last scanned (15 hours ago)

Scores higher than 45% of remote servers

Reachable. Last reached 5 Nov 2026.

Category Developer Tools

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 Security57
Transport & Reachability100
Schema Quality & AI Usability70
  • AI-judged instruction clarity (excellent).Pass
  • Context-footprint check failed: tool/resource definitions use about 9785 tokens (~139/item across 70 items; 70 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management27
  • Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 100% of tool parameters carry a description.Pass
Tool Safety75
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • 0 of 1 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "cors-check" implies "send" and declares readOnlyHint instead, contradicting what its own name says it does. See how to fix → Fail
  • An AI judge read all 71 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities60
  • Spec-recency check failed: implements MCP spec 2025-06-18; the latest is 2026-07-28. See how to fix → Fail
What we tested

Checks we ran (12)

  • TLS certificate
  • HTTPS
  • HSTS header
  • DNSSEC
  • Transport
  • Schema quality
  • Stability
  • Tool coverage
  • Injection markers
  • Destructive annotations
  • Judged manipulation
  • MCP protocol

Checks we could not complete (1)

These are gaps on our side, not findings about this hosted endpoint. We only credit what we can confirm, so a category made up entirely of them scores 0.

  • Authorization in Endpoint SecurityAuthorisation not fully verified: no authorisation is required to call this server, and 1 tool(s) never declared a destructiveHint. The MCP spec treats an absent hint as destructive by default, so we cannot call this surface safe.

Does not apply to this hosted endpoint (2)

  • Supply Chain SecurityScored on package channels only. This is a hosted endpoint, so there is nothing to install or inspect.
  • Provenance & TransparencyScored on package channels only. This is a hosted endpoint, so there is nothing to install or inspect.

The score does not measure everything. What the score does not measure →

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 +1

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

  • 2 Nov 26 +1

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

  • 31 Oct 26 +1

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

  • 29 Oct 26 +1
    • Stability: unverified → 0.03 ▲ functional
  • 28 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 5 Nov 2026 · Probed https://api.highlnd-intel.group/mcp

TLS valid

Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .

Subject Issuer Valid from Valid until Key Signature Serial
CN=highlnd-intel.group CN=WE1,O=Google Trust Services,C=US 5 Oct 2026 3 Jan 2027 ECDSA 256 ECDSA-SHA256 d92ab332b5c670fa0eb4778b88657d71
SANs: highlnd-intel.group, api.highlnd-intel.group, *.api.highlnd-intel.group
CN=WE1,O=Google Trust Services,C=US (CA) CN=GTS Root R4,O=Google Trust Services LLC,C=US 13 Dec 2023 20 Feb 2029 ECDSA 256 ECDSA-SHA384 7ff31977972c224a76155d13b6d685e3
CN=GTS Root R4,O=Google Trust Services LLC,C=US (CA) CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE 15 Nov 2023 28 Jan 2028 ECDSA 384 SHA256-RSA 7fe530bf331343bedd821610493d8a1b

Background: What to check on a remote MCP endpoint →

DNSSEC insecure

Validation of api.highlnd-intel.group. — Not signed

Zone DS Keys Algorithms Outcome
. Trust anchor 20326, 38696 8, 8 Verified
group. DS published 23501, 63685 8, 8 Verified
highlnd-intel.group. No DS Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation
Authentication No authorisation required

The endpoint answered without asking for a token. Anyone who knows the URL can reach it.

Result No authorisation required
HTTP status 200

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

Transports 2 probes
Transport URL Outcome Status Location
streamable-http https://api.highlnd-intel.group/mcp Verified 200
http (plaintext) http://api.highlnd-intel.group/mcp HTTPS enforced 301 https://api.highlnd-intel.group/mcp
MCP tools · 70 exposed · ~9,756 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
base64 ~172

Encodes UTF-8 text to standard or url-safe base64, or decodes either form; binary results that are not valid UTF-8 come back as hex. Returns encode: { base64, variant, bytes } · decode: { text | null, hex | null, utf8, bytes } Price: 1 credit (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
datastringyesText to encode, or base64 (standard or url-safe, padding optional) to decode.
modestringyesencode turns text into base64; decode turns base64 into text (or hex).
variantstring–Output alphabet when encoding: standard (+/ and padding) or url (-_ without padding).

No output schema declared.

No examples provided.

cf-ip-check ~110

Says whether an IPv4 or IPv6 address is in Cloudflare's published edge ranges, and which range. Returns { ip, version, cloudflare, range, rangesAsOf }: range is the matching CIDR or null. Price: 1 credit (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
ipstringyesIPv4 (dotted quad) or IPv6 address, without a port or zone id.

No output schema declared.

No examples provided.

chunk-text ~230

Splits text for retrieval by estimated tokens, sentences or markdown headings, with token overlap and stable SHA-256 chunk ids. Returns { chunks: [{ id (sha-256 hex of the chunk text), index, text, tokens, start, end, heading? }], count, mode, size, overlap, family, method } Price: 2 credits (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
familystring–Tokenizer family used for counts: cl100k, o200k, claude or llama (all estimates).
modestring–Split by estimated tokens, by sentence boundaries, or by markdown heading sections (each chunk carries its heading).
overlapinteger–Estimated tokens repeated from the end of one chunk at the start of the next; must be under half of size.
sizeinteger–Target maximum estimated tokens per chunk, 32 to 4000.
textstringyesText or markdown to chunk, up to 60,000 characters.

No output schema declared.

No examples provided.

classify ~156

Picks one label from your list (2 to 20 labels) for a piece of text. Returns { label, labels }: the chosen label (one of yours, or null if none fit) and the labels sent. Price: 3 credits (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
labelsarrayyesCandidate labels, 2 to 20, each 1 to 40 characters; the answer is always one of these or null.
textstringyesText to process, 1 to 8,000 characters. Emails, phone numbers, card numbers, SINs and IPv4s are redacted before the model sees it.

No output schema declared.

No examples provided.

claude-md-lint ~138

Lints a CLAUDE.md: size, structure, @imports, and secrets, passwords or email addresses that should not be there. Returns { ok, stats { characters, lines, approxTokens, headings, imports }, findings[{ severity: error|warning|info, code, path, message }] and counts { error, warning, info } }. Paths are line numbers. Price: 2 credits (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
textstringyesThe CLAUDE.md text, up to 60,000 characters.

No output schema declared.

No examples provided.

code-review ~116

Reviews a code snippet and returns concrete issues (bugs, security, performance, style) with severity and a fix for each. Returns { language, summary, issues: [{ severity, line, issue, fix }] } Price: 4 credits (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
codestringyesSource code to review, up to 6,000 characters.
languagestring–Language name, or omit to auto-detect.

No output schema declared.

No examples provided.

commit-message ~90

Turns a unified diff into a Conventional Commits message: type, scope, subject and body. Returns { message, type, scope, subject, body } Price: 2 credits (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
diffstringyesUnified diff (git diff output), up to 7,000 characters.

No output schema declared.

No examples provided.

contrast-check ~114

Computes the WCAG 2.2 contrast ratio of two colours, pass/fail for AA and AAA, and the nearest passing foreground when it fails. Returns { ratio, aa_normal, aa_large, aaa_normal, aaa_large, ui_components, suggested_foreground } Price: 1 credit (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
backgroundstringyesBackground colour, hex.
foregroundstringyesText colour, hex.

No output schema declared.

No examples provided.

cors-check ~232

Sends a GET with an Origin header (and an OPTIONS preflight for non-simple methods, custom headers or credentials) to a public URL and reports the Access-Control-* headers with an allowed/blocked verdict. Returns { url, finalUrl, origin, status, preflight: { status } | null, headers: { acao, acac, acam, acah, vary }, allowed, issues } Price: 2 credits (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
credentialsboolean–Whether the call sends cookies or auth (credentials: include).
methodstring–Method the browser call would use; non-simple methods trigger a preflight.
originstring–Origin the browser would send, e.g. https://app.example.com.
requestHeadersarray–Request header names the call would send (triggers a preflight when non-empty).
urlstringyesPublic http(s) URL. Private, loopback, link-local, metadata and our own hosts are refused.

No output schema declared.

No examples provided.

cron-explain ~106

Explains a 5-field cron expression in plain English (UTC, as Cloudflare runs it). Returns { cron, explanation }: the expression and a plain-English reading of it. Price: 1 credit (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
cronstringyesFive-field cron expression (minute hour day-of-month month day-of-week), read as UTC like Cloudflare Cron Triggers.

No output schema declared.

No examples provided.

cron-to-cf ~143

Checks a cron expression against Cloudflare Cron Trigger syntax, explains it, lists the next runs and gives the wrangler snippet. Returns { valid, cron, errors, warnings, explanation, nextRuns (up to 5 ISO times, standard syntax only), snippets { jsonc, toml } }. Price: 1 credit (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
cronstringyesCron expression. Cloudflare uses 5 fields in UTC, weekdays 1 to 7 with 1 = Sunday (or SUN-SAT), and allows L, W and #.

No output schema declared.

No examples provided.

curl-to-code ~98

Converts a curl command into JavaScript fetch, Python requests, Go net/http or PHP code. Returns { language, request: { url, method, headers, data }, code } Price: 2 credits (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
curlstringyesA curl command line.
languagestring–Target language, default javascript.

No output schema declared.

No examples provided.

dataset-convert ~209

Converts JSONL between OpenAI-style chat, Anthropic-style messages and Alpaca rows. System prompts move between the system message and the top-level field; rows that cannot convert are listed. Returns { from, to, converted, skippedCount, skipped: [{ line, reason }], jsonl } Price: 2 credits (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
fromstring–openai (messages with system/user/assistant/tool), anthropic (top-level system + user/assistant messages), alpaca (instruction/input/output), or auto to detect from the first parseable row.
jsonlstringyesJSONL: one JSON object per line, up to 60,000 characters and 5,000 lines. Blank lines are ignored.
tostringyesTarget format: openai, anthropic or alpaca (alpaca takes single user/assistant exchanges only).

No output schema declared.

No examples provided.

dataset-split ~189

Deterministic seeded shuffle and train/val/test split of JSONL rows. The same seed and input always give the same split. Returns { seed, ratios, counts: { train, val, test, skipped }, train, val, test } (each split as JSONL) Price: 1 credit (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
jsonlstringyesJSONL: one JSON object per line, up to 60,000 characters and 5,000 lines. Blank lines are ignored.
seedstring–Shuffle seed; any string.
testnumber–Share of rows for test.
trainnumber–Share of rows for train. train + val + test must equal 1.
valnumber–Share of rows for validation.

No output schema declared.

No examples provided.

dataset-validate ~266

Checks chat (OpenAI-style), messages (Anthropic-style) or Alpaca JSONL: per-line errors, role order, empty turns, duplicates, token estimates and a training-cost estimate from your price. Returns { format, lines, valid, invalid, ok, errors: [{ line, code, message }] (first 100), errorCount, errorsTruncated, duplicates: [{ line, firstLine }], duplicateCount, tokens: { total, mean, max }, costEstimate } Price: 2 credits (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
epochsinteger–Training epochs for the cost estimate, 1 to 50.
formatstring–openai (messages with system/user/assistant/tool), anthropic (top-level system + user/assistant messages), alpaca (instruction/input/output), or auto to detect from the first parseable row.
jsonlstringyesJSONL: one JSON object per line, up to 60,000 characters and 5,000 lines. Blank lines are ignored.
pricePerMillionTokensnumber–Optional: your training price per million tokens, used only for costEstimate (any currency).

No output schema declared.

No examples provided.

dns-lookup ~124

A, AAAA, MX, NS and TXT records for a domain over DNS-over-HTTPS. Returns { domain, records: { A, AAAA, MX, NS, TXT } }: each record type as a list of strings. Price: 2 credits (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
domainstringyesPublic domain name, e.g. example.com; IP literals and private suffixes (.local, .internal, .lan, .corp) are refused.

No output schema declared.

No examples provided.

embed ~108

Embeds 1 to 16 short texts with the fixed Workers AI model @cf/baai/bge-base-en-v1.5 (768 dimensions) for search and clustering. Returns { model, dimensions, count, vectors: number[][] } Price: 3 credits (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
inputsarrayyes1 to 16 texts, each up to 2000 characters.

No output schema declared.

No examples provided.

enrich-company ~131

Company profile from public web sources: name, description, industry, recent signals and the sources used. Returns { name, domain, description, industry, signals, sources: [{ url, title }] }: up to 5 signals and 8 sources. Organisations only, never people. Price: 14 credits (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
domainstringyesPublic domain name, e.g. example.com; IP literals and private suffixes (.local, .internal, .lan, .corp) are refused.

No output schema declared.

No examples provided.

enrich-url ~150

Profiles one public page: title, summary, organisations and other entities, topics, sentiment and public contact points. Returns { url, finalUrl, title, summary, entities: [{ text, type }], topics, sentiment: { label, score }, contact_points: { emails, phones, pages, social } }. Only role mailboxes (info@, sales@ ...) are returned. Price: 12 credits (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
urlstringyesPublic http(s) URL. Private, loopback, link-local and metadata addresses, internal hostnames and this service's own hosts are refused.

No output schema declared.

No examples provided.

entity-extract ~158

Named entities of fixed types (person, organization, location, product, event, date, money, law, technology), each found verbatim in your text. Returns { entities: [{ text, type }], counts }: up to 50 entities, each present in the (redacted) text, and a count per type. Price: 10 credits (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
textstringyesText to analyse, 1 to 8,000 characters. Emails, phone numbers, card numbers, SINs and IPv4s are redacted first.
typesarray–Entity types to return; default all nine.

No output schema declared.

No examples provided.

find-similar ~152

Pages similar in meaning to a given public URL, with highlights. Up to 10 results. Returns { url, results: [{ title, url, publishedDate, score, highlights }] }. Price: 8 credits (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
excludeSourceDomainboolean–Leave out pages from the same domain as the URL (default true).
numResultsinteger–Results to return, 1 to 10.
urlstringyesPublic http(s) URL. Private, loopback, link-local and metadata addresses, internal hostnames and this service's own hosts are refused.

No output schema declared.

No examples provided.

hash ~97

SHA-1/256/384/512 hex digest of UTF-8 text. Returns { algorithm, hex }: the lower-case hex digest. Price: 1 credit (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
algorithmstring–Digest algorithm.
textstringyesText to hash as UTF-8, up to 64,000 characters.

No output schema declared.

No examples provided.

header-audit ~122

Which security headers a site's HTTPS front page sends, with a simple grade. Returns { domain, status, present, missing, grade, server }: security headers sent and missing, and a grade A, B, C or F. Price: 3 credits (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
domainstringyesPublic domain name, e.g. example.com; IP literals and private suffixes (.local, .internal, .lan, .corp) are refused.

No output schema declared.

No examples provided.

hooks-validate ~132

Validates a Claude Code hooks block (or a whole settings.json): events, matchers, hook types, timeouts and risky commands. Returns { ok, events, hookCount, findings[{ severity: error|warning|info, code, path, message }] and counts { error, warning, info } }. Price: 2 credits (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
config–yesThe config as a JSON string (comments and trailing commas allowed) or as an object, up to 60,000 characters.

No output schema declared.

No examples provided.

hst-calc ~153

Adds 14% NS HST to a subtotal, or splits a tax-included total. Confirm the rate with CRA. Returns { subtotalCents, hstCents, totalCents, rate }. Price: 1 credit (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
amountCentsintegeryesPre-tax subtotal, or the tax-included total when included is true. Integer CAD cents.
includedboolean–amountCents already includes HST: split it instead of adding to it.
ratenumber–HST rate as a fraction (0.14 is the Nova Scotia rate).

No output schema declared.

No examples provided.

http-status ~100

Name, meaning, class, retryability and default cacheability of an HTTP status code, including Cloudflare's 52x codes. Returns { code, name, meaning, class, known, retryable, cacheableByDefault } Price: 1 credit (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
codeintegeryesStatus code, 100 to 599.

No output schema declared.

No examples provided.

https-redirect ~120

Whether plain HTTP redirects to HTTPS, and whether HSTS is set. Returns { domain, redirectsToHttps, hsts, hstsMaxAge, hstsStrong }: HTTP-to-HTTPS redirect and HSTS status. Price: 2 credits (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
domainstringyesPublic domain name, e.g. example.com; IP literals and private suffixes (.local, .internal, .lan, .corp) are refused.

No output schema declared.

No examples provided.

invoice-number ~148

Formats PREFIX-YYYYMM-NNNNN-C with a Luhn check digit, or validates one. Returns { invoice } when formatting, or { valid } when validating. Price: 1 credit (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
prefixstring–Two to six upper-case letters.
sequenceinteger–Invoice sequence number. Required unless validate is given.
validatestring–An invoice number to check instead of formatting one; when given, the other fields are ignored.
yyyymmstring–Year and month as YYYYMM; defaults to the current UTC month.

No output schema declared.

No examples provided.

json-extract ~112

Pulls the fields you name out of free text (emails, invoices, tickets) and returns strict JSON, null when a field is absent. Returns { data: { <field>: value | null }, found, total } Price: 3 credits (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
fieldsarrayyesField names to extract.
textstringyesSource text, up to 6,000 characters.

No output schema declared.

No examples provided.

json-validate ~135

Validates a JSON value against a JSON-Schema subset and lists every error path. Returns { valid, errors }: true when the value matches, and one message per error path (up to 50). Price: 1 credit (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
schemaobjectyesJSON Schema subset to check against: type, required, properties, items, enum, minimum, maximum, minLength, maxLength.
value–yesAny JSON value to validate (object, array, string, number, boolean or null).

No output schema declared.

No examples provided.

jwt-decode ~129

Decodes a JWT header and payload without verifying it, with warnings for alg none, missing or past exp, future nbf/iat and risky header fields. Returns { header, payload, signatureBytes, times: { exp, nbf, iat, expired }, verified: false, warnings, note } Price: 1 credit (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
tokenstringyesCompact JWS (header.payload.signature). It is decoded only; do not send production tokens you cannot rotate.

No output schema declared.

No examples provided.

keywords ~142

Key phrases of your text, each found verbatim in it; falls back to a frequency ranking if the model answer is unusable. Returns { keywords, source }: up to `max` phrases and whether they came from the model or the frequency fallback. Price: 10 credits (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
maxinteger–Keywords to return, 1 to 25.
textstringyesText to analyse, 1 to 8,000 characters. Emails, phone numbers, card numbers, SINs and IPv4s are redacted first.

No output schema declared.

No examples provided.

mail-auth ~122

SPF and DMARC presence and policy strength for a domain. Returns { domain, spf, dmarc, dmarcPolicy, findings, pass }: the SPF and DMARC records, the DMARC policy and finding codes. Price: 3 credits (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
domainstringyesPublic domain name, e.g. example.com; IP literals and private suffixes (.local, .internal, .lan, .corp) are refused.

No output schema declared.

No examples provided.

mcp-config-validate ~140

Validates a Claude Code .mcp.json: transports, commands, URLs, headers and env, and flags literal secrets by path. Returns { ok, servers[{ name, transport }], findings[{ severity: error|warning|info, code, path, message }] and counts { error, warning, info } }. Values are never echoed. Price: 2 credits (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
config–yesThe config as a JSON string (comments and trailing commas allowed) or as an object, up to 60,000 characters.

No output schema declared.

No examples provided.

mock-response ~112

Generates realistic sample JSON from a JSON Schema or OpenAPI schema object, with field-aware values (emails, UUIDs, dates, URLs). Returns { data } or { data: [...], count } Price: 1 credit (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
countinteger–Items to generate, default 1.
schemaobjectyesJSON Schema (or OpenAPI schema object) of one response item.

No output schema declared.

No examples provided.

og-preview ~136

Fetches a public page (first 512 KB) and returns its link-preview metadata: title, description, image, Open Graph and Twitter tags, canonical URL, icons and missing tags. Returns { url, finalUrl, status, title, description, image, siteName, canonical, icons, lang, og, twitter, missing, truncated } Price: 3 credits (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
urlstringyesPublic http(s) URL. Private, loopback, link-local, metadata and our own hosts are refused.

No output schema declared.

No examples provided.

openapi-lint ~136

Checks an OpenAPI 3.0/3.1 document (as JSON): version, info, paths, responses, unique operationIds, declared path parameters and unresolved local $refs. Returns { valid, version, operations, refs, unresolvedRefs, errors: [{ path, message }], warnings: [{ path, message }] } Price: 2 credits (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
specobjectyesThe OpenAPI document as a JSON object (convert YAML first). Request bodies are capped at 64 KiB.

No output schema declared.

No examples provided.

page-markdown ~121

Fetches a public page and returns clean, LLM-ready Markdown of the main content, with title, word and link counts. No third-party scraper. Returns { url, title, words, links, truncated, markdown } Price: 3 credits (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
max_charsinteger–Markdown kept, default 20,000.
urlstringyesPublic http(s) URL to fetch. Private and internal hosts are refused.

No output schema declared.

No examples provided.

pii-redact ~124

Strips emails, phone numbers, card numbers, SINs and IPv4s. Runs locally, no model. Returns { text, counts }: the redacted text with [EMAIL]-style placeholders and a count per kind (email, card, sin, phone, ip). Price: 1 credit (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
ipboolean–Also redact IPv4 addresses.
textstringyesText to redact, up to 32,000 characters.

No output schema declared.

No examples provided.

prompt-inject-scan ~118

Scans untrusted text (web pages, emails, tool output) for prompt-injection patterns before it reaches your agent; returns a risk score and the hits. Returns { risk: none|low|medium|high, score, hits: [{ rule, weight, match, index }] } Price: 1 credit (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
textstringyesUntrusted text, up to 100,000 characters.

No output schema declared.

No examples provided.

prompt-lint ~127

Flags prompt-injection phrasing, chat-template tokens, hidden characters, PII and secrets per line, and lists {{variables}}. Rule-based, no model call; flagged text is never echoed. Returns { ok, findings: [{ kind, severity, line, detail }], counts: { high, medium, low }, variables } Price: 1 credit (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
promptstringyesPrompt or template text to check, up to 60,000 characters.

No output schema declared.

No examples provided.

quote-build ~140

Totals line items, applies a discount and HST, and computes a deposit. No customer details taken. Returns { lines, grossCents, discountCents, subtotalCents, hstCents, totalCents, rate, depositCents }. Price: 5 credits (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
depositPctnumber–Deposit as a percent of the tax-included total.
discountPctnumber–Discount on the gross total, in percent.
itemsarrayyesLine items, 1 to 100.

No output schema declared.

No examples provided.

rdap-lookup ~129

Modern WHOIS over RDAP: registrar, creation and expiry dates, days to expiry, status codes, nameservers and DNSSEC. Returns { domain, registrar, created, updated, expires, days_to_expiry, status, nameservers, dnssec } Price: 2 credits (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
domainstringyesPublic domain name, e.g. example.com; IP literals and private suffixes (.local, .internal, .lan, .corp) are refused.

No output schema declared.

No examples provided.

regex-from-english ~129

Writes a JavaScript regex from a plain-English description, compiles it, and tests it against your sample strings. Returns { pattern, flags, literal, explanation, tests: [{ input, expected, got }], passed, total } Price: 3 credits (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
descriptionstringyesWhat the regex should match, in plain English.
should_matcharray–Strings that must match.
should_not_matcharray–Strings that must not match.

No output schema declared.

No examples provided.

regex-test ~143

Runs a JavaScript regex over sample text and returns matches and groups (capped sizes). Returns { count, matches }: up to 100 matches, each { match, index, groups }. Price: 1 credit (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
flagsstring–Regex flags from g, i, m, s, u, y; g is always added.
patternstringyesJavaScript regular expression source, without slashes, up to 200 characters.
textstringyesSample text to search, up to 2,000 characters.

No output schema declared.

No examples provided.

robots-check ~131

Reads a site's robots.txt and says whether a crawler may fetch a path, with the matching rule, the major AI crawlers' access and the sitemaps. Returns { robots_url, robots_status, agent, path, allowed, rule, ai_crawlers, sitemaps } Price: 1 credit (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
agentstring–Crawler user agent, default *.
urlstringyesPublic http(s) URL to fetch. Private and internal hosts are refused.

No output schema declared.

No examples provided.

security-txt ~120

Fetches /.well-known/security.txt and reports Contact and Expires (RFC 9116). Returns { domain, present, hasContact, expires, expired }: whether security.txt exists, has a Contact and has expired. Price: 2 credits (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
domainstringyesPublic domain name, e.g. example.com; IP literals and private suffixes (.local, .internal, .lan, .corp) are refused.

No output schema declared.

No examples provided.

semver ~105

Sorts versions by SemVer 2.0 precedence, returns the latest stable and pre-release, and the next major, minor and patch. Returns { sorted, latest_stable, latest, invalid, next: { major, minor, patch, from } } Price: 1 credit (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
versionsarrayyesVersion strings, optionally v-prefixed.

No output schema declared.

No examples provided.

sentiment ~137

Positive, negative or neutral, with a score from -1 to 1, from a sentiment classifier over up to 8,000 characters. Returns { label, score, positive, negative, chunks }: label is positive, negative or neutral (below 0.6 confidence); score is positive minus negative. Price: 10 credits (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
textstringyesText to analyse, 1 to 8,000 characters. Emails, phone numbers, card numbers, SINs and IPv4s are redacted first.

No output schema declared.

No examples provided.

seo-audit ~132

Audits a live page: title and description length, H1s, canonical, robots, lang, viewport, image alts, structured data and links, scored 0-100. Returns { url, status, score, title, description, h1_count, images, images_missing_alt, links, checks: [{ id, pass, weight }] } Price: 3 credits (1 credit = 1 CAD cent) per successful call; input that does not match the schema is rejected before billing.

NameTypeReqDescription
urlstringyesPublic http(s) URL to fetch. Private and internal hosts are refused.

No output schema declared.

No examples provided.

Install

How do I install the Highland Intel APIs MCP server?

Highland Intel APIs is a hosted endpoint at https://api.highlnd-intel.group/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 · api.highlnd-intel.group

# add to Claude Code
claude mcp add --transport http group-highlnd-intel-highland-apis 'https://api.highlnd-intel.group/mcp'
Common questions

What is the Highland Intel APIs MCP server?

Highland Intel APIs is an MCP server listed in the public MCP registry as group.highlnd-intel/highland-apis. 70 pay-per-call APIs: DNS, email auth, security headers, web search, scraping, AI. x402 USDC/Base. This page covers its hosted endpoint (https://api.highlnd-intel.group/mcp).

Is the Highland Intel APIs MCP server safe to use?

Highland Intel APIs scores 64 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the Highland Intel APIs MCP server expose?

Highland Intel APIs exposes 70 tools: dns-lookup, mail-auth, header-audit, https-redirect, security-txt, and 65 more. Their descriptions and schemas cost roughly 9,756 tokens of context every time the server is loaded.

Does the Highland Intel APIs MCP server require authentication?

No. We connected to Highland Intel APIs without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.

Is the Highland Intel APIs MCP server still maintained?

Highland Intel APIs is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

What did VerifyMCP test on the Highland Intel APIs MCP server?

VerifyMCP ran 12 checks on Highland Intel APIs, covering TLS certificate, HTTPS, HSTS header, DNSSEC and 8 more. One item could not be completed, a gap on our side rather than a finding about Highland Intel APIs: Authorization. Supply Chain Security and Provenance & Transparency do not apply to a hosted endpoint, so they were not tested. The score does not measure everything, and the scoring documentation lists what it leaves out.