io.github.karandaid/karandeepsingh-blog
REMOTE · KARANDEEPSINGH.CA · SCANNED AUG 14
Search and read Karandeep Singh's DevOps and AWS blog: articles and cheatsheets.
Available components
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 →
Endpoint Security80
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- No authorisation is required to call this server. Every tool declares its destructiveHint and none is destructive, so open access doesn't expose one. See how to fix → View diagnostics → Partial
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- The HSTS (Strict-Transport-Security) header is present. View diagnostics → Pass
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability87
- 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
- AI-judged instruction clarity (excellent).Pass
- Tool/resource definitions use about 6338 tokens (~52/item across 121 items; 11 tools + 110 resources), lean.Pass
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management13
- Stability observed for 4 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage96
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 87% of tool parameters carry a description.Partial
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.
remote · karandeepsingh.ca
claude mcp add --transport http karandaid-karandeepsingh-blog https://karandeepsingh.ca/mcp
[mcp_servers.karandaid-karandeepsingh-blog] url = "https://karandeepsingh.ca/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"karandaid-karandeepsingh-blog": {
"type": "remote",
"url": "https://karandeepsingh.ca/mcp",
"enabled": true
}
}
} openclaw mcp add karandaid-karandeepsingh-blog --url https://karandeepsingh.ca/mcp --transport streamable-http
mcp_servers:
karandaid-karandeepsingh-blog:
url: "https://karandeepsingh.ca/mcp" {
"mcpServers": {
"karandaid-karandeepsingh-blog": {
"type": "http",
"url": "https://karandeepsingh.ca/mcp"
}
}
} The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.
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.
- 13 Aug 26 +1
- New resource “atuin-shell-history-search” functional
- 12 Aug 26 +1
- New resource “lambda-cost-tuning-memory-graviton” functional
- New resource “atuin” functional
- 11 Aug 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 10 Aug 26 74
First indexed and scored.
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 14 Aug 2026 · Probed https://karandeepsingh.ca/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=karandeepsingh.ca | CN=YE1,O=Let's Encrypt,C=US | 23 Jul 2026 | 21 Oct 2026 | ECDSA 256 | ECDSA-SHA384 | 65d819801d5b3a0a8dd5dcd80ce53907ad6 |
| SANs: *.karandeepsingh.ca, karandeepsingh.ca | ||||||
| CN=YE1,O=Let's Encrypt,C=US (CA) | CN=Root YE,O=ISRG,C=US | 3 Sept 2025 | 2 Sept 2028 | ECDSA 384 | ECDSA-SHA384 | 5ddd70dd31f801c85c186a7a04b80afe |
| CN=Root YE,O=ISRG,C=US (CA) | CN=ISRG Root X2,O=Internet Security Research Group,C=US | 13 May 2026 | 2 Sept 2032 | ECDSA 384 | ECDSA-SHA384 | 872165fc34b6e5fba8add5b3705fb53a |
| CN=ISRG Root X2,O=Internet Security Research Group,C=US (CA) | CN=ISRG Root X1,O=Internet Security Research Group,C=US | 13 May 2026 | 2 Sept 2032 | ECDSA 384 | SHA256-RSA | 6c8f1dc727c7117f7baf853ac980f9cd |
DNSSEC insecure
Validation of karandeepsingh.ca. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| ca. | present | 26384 | 13 | Verified |
| karandeepsingh.ca. | absent | 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 |
| Header | Value |
|---|---|
| strict-transport-security | max-age=31536000 |
| x-content-type-options | nosniff |
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://karandeepsingh.ca/mcp | Verified | 200 | |
| http (plaintext) | http://karandeepsingh.ca/mcp | HTTPS enforced | 301 | https://karandeepsingh.ca/mcp |
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.
browse_by_tag Browse by tag ~53
List posts with a given tag (e.g. aws, lambda, cost, aurora). Use list_topics to see all tags.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | number | – | – |
| tag | string | yes | A tag name. |
No output schema declared.
No examples provided.
get_cheatsheet Get a cheatsheet ~53
Jump straight to a cheatsheet by topic (docker, cloudformation, cost, aurora, kubernetes, …) and get its full text.
| Name | Type | Req | Description |
|---|---|---|---|
| topic | string | yes | Cheatsheet topic or name. |
No output schema declared.
No examples provided.
get_commands Just the commands ~84
Return just the runnable commands and code blocks from the best-matching article or cheatsheet — no prose. Use when the user wants the command, not the explanation.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | number | – | Max code blocks to return (default 6, max 12). |
| topic | string | yes | Topic or tool, e.g. docker, kubectl, terraform, psql. |
No output schema declared.
No examples provided.
list_cheatsheets List cheatsheets ~23
List all cheatsheets (quick-reference guides) on the blog.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
list_recent Recent posts ~29
List the most recently published posts.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | number | – | Default 8, cap 20. |
No output schema declared.
No examples provided.
list_topics List topics ~24
List every tag on the blog with a post count, for discovering what's covered.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
quiz_me Quiz me ~95
Test the user's knowledge with real multiple-choice questions written for the blog's articles. Returns questions, options, and an answers section with explanations. Ask the questions first, then reveal the answers.
| Name | Type | Req | Description |
|---|---|---|---|
| count | number | – | How many questions (default 3, max 10). |
| topic | string | – | Topic to be quizzed on, e.g. aurora, lambda, docker. Omit for a random quiz. |
No output schema declared.
No examples provided.
random_post Random post ~20
Return a random post from the blog — a surprise pick.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
read_post Read an article ~77
Read a post's full text by URL, paginated. Returns a window of characters; call again with the returned next offset to continue.
| Name | Type | Req | Description |
|---|---|---|---|
| offset | number | – | Character offset to start from (default 0). |
| url | string | yes | Post URL or path, e.g. /posts/aurora-postgresql-setup-guide/. |
No output schema declared.
No examples provided.
related_posts Related posts ~42
Given a post URL, find other posts that share the most tags with it.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | number | – | – |
| url | string | yes | Post URL or path. |
No output schema declared.
No examples provided.
search_posts Search the blog ~103
Search Karandeep Singh's blog (DevOps/AWS articles and cheatsheets). Returns ranked cards with title, URL, tags, date, reading time, and summary.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | number | – | Max results (default 8, cap 20). |
| query | string | yes | Search terms, e.g. 'aurora failover' or 'lambda cold start'. |
| section | string | – | Optional: restrict to 'posts' or 'cheatsheets'. |
No output schema declared.
No examples provided.