Commits
Expose libgen-mcp's full sitemap-index (all EN/ES pages + lastmod + hreflang)
to crawlers that discover URLs via robots.txt, not just the hub homepage index.
MCP server (Go) for searching and downloading from Library Genesis.
Docs: https://jmrplens.github.io/libgen-mcp/
The personal (Q140455276) and project (Q140389426, Q140393352,
Q140451720, Q140447586) Wikidata items were deleted by a Wikidata admin
in a notability sweep on 2026-07-07. Remove the dead sameAs entries,
the per-project wikidata identifier field and its JSON-LD emission, and
the llms.txt knowledge-graph pointers.
Claude-Session: https://claude.ai/code/session_016KQnnNLPVouuFYJqLd6kzv
Claude-Session: https://claude.ai/code/session_01BLj9EK2QsNv6suMJi66YCn
Claude-Session: https://claude.ai/code/session_01BLj9EK2QsNv6suMJi66YCn
Claude-Session: https://claude.ai/code/session_01BLj9EK2QsNv6suMJi66YCn
Claude-Session: https://claude.ai/code/session_01BLj9EK2QsNv6suMJi66YCn
The hub only had an SVG favicon (rel=icon) and an apple-touch-icon.
Add a 32x32 PNG and a multi-res favicon.ico (16/32/48) rasterized
from favicon.svg for browsers/crawlers with weak or no SVG favicon
support (older Safari, Google's SERP favicon fetcher, RSS readers).
Claude-Session: https://claude.ai/code/session_01Jcg86btaDWS2iBTkPG3HJb
Same host-root verification pattern as bingVerify — covers the hub and
all project sub-path docs (e.g. jmrplens.github.io/cs-routeros-bouncer/).
Claude-Session: https://claude.ai/code/session_01Jcg86btaDWS2iBTkPG3HJb
Mirrors the treatment gitlab-mcp-server already has: adds the wikidata
field and identifier/sameAs to its project entry in site.ts (flows into
the JSON-LD ItemList automatically), references it from public/llms.txt
(project line + Optional section), and corrects operatingSystem to
include FreeBSD per the project's .goreleaser.yaml build matrix.
Synthesised from a 5-agent GEO audit (composite ~67 baseline). All additions
use verified facts mirrored from the canonical Person node at jmrp.io.
Structured data (Base.astro):
- Person: add jobTitle (R&D Engineer), description, knowsAbout, and the full
verified sameAs (GitHub, LinkedIn, Mastodon, Matrix, Keyoxide, Scholar,
ORCID, ResearchGate, MathWorks); canonical name aligned with jmrp.io for
cross-site @id entity merging.
- SoftwareSourceCode: add license (MIT), keywords, runtimePlatform,
operatingSystem, applicationCategory, dateModified, and sameAs. GitLab MCP
Server now links Wikidata Q140389426 (sameAs + identifier PropertyValue) —
completing the reciprocal knowledge-graph link.
- Add FAQPage (3 citable Q&A), ProfilePage/WebSite dateModified, and speakable.
Freshness:
- Replace the static sitemap with a build-time endpoint that emits <lastmod>
for the hub + both doc sites on every deploy.
- Visible 'Updated <Mon YYYY>' line in the footer.
Content/citability:
- Hero: one-line author descriptor (answers 'who is he'); .intro class for
speakable; 'Written in Go.' on the RouterOS card for self-contained language.
- Visible FAQ section mirroring the FAQPage.
Discovery/technical:
- llms.txt: inline Wikidata + new ## Optional section (Wikidata/LinkedIn/
Scholar/ORCID/Mastodon).
- robots.txt: Content-Signal (ai-train/search/ai-retrieval=yes) + more AI bots.
- Preload the LCP display font; per-scheme theme-color without JS; trim meta
description to ~155 chars.
Claude-Session: https://claude.ai/code/session_01PuVd2s3rFHhCb1HSz5vACK
Replace the single static index.html with an Astro site that reuses the
beta.jmrp.io 'Lab / Engineering' design system (dark-first, amber + teal,
Space Grotesk / IBM Plex Sans / IBM Plex Mono, terminal-prompt logo, ambient
grid, hairline surfaces, mono kickers, status pills).
- jmrp.io is surfaced as the primary destination throughout (nav, hero lead,
primary CTA, preference banner, footer) while still listing each repo's docs.
- Data-driven: src/data/site.ts is the single source for identity + projects,
feeding the page, JSON-LD @graph, and llms.txt.
- SEO/GEO: canonical, OG/Twitter with a generated 1200x630 image, JSON-LD
@graph (Person -> jmrp.io, WebSite, ProfilePage, ItemList of SoftwareSourceCode),
Bing verification meta at host root, self-hosted fonts (CSP-friendly),
theme-color per scheme, favicon/apple-touch-icon/manifest, llms.txt.
- Static assets (robots.txt, sitemap.xml with the two doc sites, IndexNow key)
move to public/ and ship at the domain root unchanged.
- Deploy via GitHub Actions (Pages build type switched to 'workflow'); the
workflow also pings IndexNow for the hub + doc URLs.
- Accessibility: AA light theme, :focus-visible, prefers-reduced-motion,
skip-link, real <button>/<a> controls.
Claude-Session: https://claude.ai/code/session_01PuVd2s3rFHhCb1HSz5vACK
- Add Bing Webmaster msvalidate.01 meta to the hub root so the single
host property (jmrplens.github.io) verifies and covers every sub-path
doc site under it.
- Expand sitemap.xml to list the referenced documentation sites
(gitlab-mcp-server, cs-routeros-bouncer) alongside the hub root, so
crawlers discover them from the host-root sitemap.
Claude-Session: https://claude.ai/code/session_01PuVd2s3rFHhCb1HSz5vACK
Remove redmine-mcp-server, a11y-diagrams and kleidos — those repos are private,
so their GitHub links would 404 for the public. Keep gitlab-mcp-server and
cs-routeros-bouncer (both public).
Claude-Session: https://claude.ai/code/session_01PuVd2s3rFHhCb1HSz5vACK
List redmine-mcp-server, a11y-diagrams, cs-routeros-bouncer, and kleidos
alongside gitlab-mcp-server. Fix invalid nested <a> (card is now <article>
with a linked title). biosite omitted — its bio.jmrp.io origin returns 526.
Claude-Session: https://claude.ai/code/session_01PuVd2s3rFHhCb1HSz5vACK
Landing page linking my open-source projects (GitLab MCP Server docs) and
jmrp.io, with Person/ProfilePage JSON-LD. Hosts the IndexNow verification key
at the domain root so IndexNow host verification succeeds for project pages
under jmrplens.github.io.
Claude-Session: https://claude.ai/code/session_01PuVd2s3rFHhCb1HSz5vACK
The personal (Q140455276) and project (Q140389426, Q140393352,
Q140451720, Q140447586) Wikidata items were deleted by a Wikidata admin
in a notability sweep on 2026-07-07. Remove the dead sameAs entries,
the per-project wikidata identifier field and its JSON-LD emission, and
the llms.txt knowledge-graph pointers.
Claude-Session: https://claude.ai/code/session_016KQnnNLPVouuFYJqLd6kzv
The hub only had an SVG favicon (rel=icon) and an apple-touch-icon.
Add a 32x32 PNG and a multi-res favicon.ico (16/32/48) rasterized
from favicon.svg for browsers/crawlers with weak or no SVG favicon
support (older Safari, Google's SERP favicon fetcher, RSS readers).
Claude-Session: https://claude.ai/code/session_01Jcg86btaDWS2iBTkPG3HJb
Mirrors the treatment gitlab-mcp-server already has: adds the wikidata
field and identifier/sameAs to its project entry in site.ts (flows into
the JSON-LD ItemList automatically), references it from public/llms.txt
(project line + Optional section), and corrects operatingSystem to
include FreeBSD per the project's .goreleaser.yaml build matrix.
Synthesised from a 5-agent GEO audit (composite ~67 baseline). All additions
use verified facts mirrored from the canonical Person node at jmrp.io.
Structured data (Base.astro):
- Person: add jobTitle (R&D Engineer), description, knowsAbout, and the full
verified sameAs (GitHub, LinkedIn, Mastodon, Matrix, Keyoxide, Scholar,
ORCID, ResearchGate, MathWorks); canonical name aligned with jmrp.io for
cross-site @id entity merging.
- SoftwareSourceCode: add license (MIT), keywords, runtimePlatform,
operatingSystem, applicationCategory, dateModified, and sameAs. GitLab MCP
Server now links Wikidata Q140389426 (sameAs + identifier PropertyValue) —
completing the reciprocal knowledge-graph link.
- Add FAQPage (3 citable Q&A), ProfilePage/WebSite dateModified, and speakable.
Freshness:
- Replace the static sitemap with a build-time endpoint that emits <lastmod>
for the hub + both doc sites on every deploy.
- Visible 'Updated <Mon YYYY>' line in the footer.
Content/citability:
- Hero: one-line author descriptor (answers 'who is he'); .intro class for
speakable; 'Written in Go.' on the RouterOS card for self-contained language.
- Visible FAQ section mirroring the FAQPage.
Discovery/technical:
- llms.txt: inline Wikidata + new ## Optional section (Wikidata/LinkedIn/
Scholar/ORCID/Mastodon).
- robots.txt: Content-Signal (ai-train/search/ai-retrieval=yes) + more AI bots.
- Preload the LCP display font; per-scheme theme-color without JS; trim meta
description to ~155 chars.
Claude-Session: https://claude.ai/code/session_01PuVd2s3rFHhCb1HSz5vACK
Replace the single static index.html with an Astro site that reuses the
beta.jmrp.io 'Lab / Engineering' design system (dark-first, amber + teal,
Space Grotesk / IBM Plex Sans / IBM Plex Mono, terminal-prompt logo, ambient
grid, hairline surfaces, mono kickers, status pills).
- jmrp.io is surfaced as the primary destination throughout (nav, hero lead,
primary CTA, preference banner, footer) while still listing each repo's docs.
- Data-driven: src/data/site.ts is the single source for identity + projects,
feeding the page, JSON-LD @graph, and llms.txt.
- SEO/GEO: canonical, OG/Twitter with a generated 1200x630 image, JSON-LD
@graph (Person -> jmrp.io, WebSite, ProfilePage, ItemList of SoftwareSourceCode),
Bing verification meta at host root, self-hosted fonts (CSP-friendly),
theme-color per scheme, favicon/apple-touch-icon/manifest, llms.txt.
- Static assets (robots.txt, sitemap.xml with the two doc sites, IndexNow key)
move to public/ and ship at the domain root unchanged.
- Deploy via GitHub Actions (Pages build type switched to 'workflow'); the
workflow also pings IndexNow for the hub + doc URLs.
- Accessibility: AA light theme, :focus-visible, prefers-reduced-motion,
skip-link, real <button>/<a> controls.
Claude-Session: https://claude.ai/code/session_01PuVd2s3rFHhCb1HSz5vACK
- Add Bing Webmaster msvalidate.01 meta to the hub root so the single
host property (jmrplens.github.io) verifies and covers every sub-path
doc site under it.
- Expand sitemap.xml to list the referenced documentation sites
(gitlab-mcp-server, cs-routeros-bouncer) alongside the hub root, so
crawlers discover them from the host-root sitemap.
Claude-Session: https://claude.ai/code/session_01PuVd2s3rFHhCb1HSz5vACK
Landing page linking my open-source projects (GitLab MCP Server docs) and
jmrp.io, with Person/ProfilePage JSON-LD. Hosts the IndexNow verification key
at the domain root so IndexNow host verification succeeds for project pages
under jmrplens.github.io.
Claude-Session: https://claude.ai/code/session_01PuVd2s3rFHhCb1HSz5vACK