Skip to main content
JGJenks Guo

Docs / reference

MCP tools

Every tool on the public and admin MCP servers, with arguments and examples.

Servers

Server URL Auth
Public https://jenksguo.xyz/mcp none
Admin https://jenksguo.xyz/mcp/admin Authorization: Bearer <admin token>
Local (stdio) jenks mcp / jenks mcp --admin env JENKSGUO_ADMIN_TOKEN for admin

Transport: Streamable HTTP, stateless, JSON-RPC 2.0 over POST (protocol 2025-06-18). GET on either URL returns a discovery document. Server name jenksguo, version 1.1.0.

curl -s https://jenksguo.xyz/mcp -H 'content-type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"get_brief","arguments":{}}}'

Public tools

get_brief — Get Jenks's brief

A one-page Markdown brief about Jenks Guo: positioning, current role, career arc, strengths, languages, contact, and how to explore further. Start here.

  • MCP: get_brief on https://jenksguo.xyz/mcp
  • REST: GET /api/v1/brief
  • CLI: jenks brief

No arguments.

curl -s "https://jenksguo.xyz/api/v1/brief"

list_experience — List experience

List Jenks's experiences, projects, community roles and education (newest first), optionally filtered by industry tag, role lens or kind. Returns short forms: title, organisation, period, summary, key result, page URL.

  • MCP: list_experience on https://jenksguo.xyz/mcp
  • REST: GET /api/v1/entries?tag=&lens=&kind=&locale=
  • CLI: jenks list [--tag it] [--lens solution-architect] [--kind project]
Argument Type Required Notes
tag it · engineering · ai · devrel · web3 · business · marketing · consulting · hospitality · community · creative no
lens head-of-ai · ai-transformation-consultant · engineering-manager · solution-architect · system-integrator · support-engineer · ict-specialist · developer-advocate · developer-evangelist · digital-marketer · hospitality no
kind experience · education · community · project no
locale en · zh · zh-hant · ja · fr · es · eo no Language for translated fields (default en).
curl -s "https://jenksguo.xyz/api/v1/entries"

get_entry — Get one entry

Full long-form write-up of one experience, project, community role or education entry by slug: overview, what Jenks did, achievements, why it matters to employers, key results, skills, proof links.

  • MCP: get_entry on https://jenksguo.xyz/mcp
  • REST: GET /api/v1/entries/{slug}?locale=
  • CLI: jenks get <slug>
Argument Type Required Notes
slug string yes Entry slug, e.g. xero-developer-evangelist
locale en · zh · zh-hant · ja · fr · es · eo no Language for translated fields (default en).
curl -s "https://jenksguo.xyz/api/v1/entries/xero-developer-evangelist"

list_lenses — List role lenses

The role lenses employers can view Jenks through (Head of AI, solution architect, developer advocate, digital marketer, hospitality…) with a pitch, honest gaps and evidence counts.

  • MCP: list_lenses on https://jenksguo.xyz/mcp
  • REST: GET /api/v1/lenses?locale=
  • CLI: jenks lenses
Argument Type Required Notes
locale en · zh · zh-hant · ja · fr · es · eo no Language for translated fields (default en).
curl -s "https://jenksguo.xyz/api/v1/lenses"

search_jenks — Search the corpus

Keyword search across every entry and document. Returns the best-matching passages with their slugs.

  • MCP: search_jenks on https://jenksguo.xyz/mcp
  • REST: GET /api/v1/search?q=
  • CLI: jenks search "<query>"
Argument Type Required Notes
query string yes
curl -s "https://jenksguo.xyz/api/v1/search"

get_document — Get a document

One of Jenks's reference documents: profile (core profile), credentials (education, certifications), capabilities (capability → evidence map), talks (talks, podcasts, writing), thinking (worldview).

  • MCP: get_document on https://jenksguo.xyz/mcp
  • REST: GET /api/v1/documents/{name}?locale=
  • CLI: jenks doc <name>
Argument Type Required Notes
name profile · credentials · capabilities · talks · thinking yes
locale en · zh · zh-hant · ja · fr · es · eo no Language for translated fields (default en).
curl -s "https://jenksguo.xyz/api/v1/documents/credentials"

ask_jenks — Ask Jenks's assistant

Ask the Ask Jenks assistant a natural-language question (role fit, consulting scoping, AI transformation advice, STAR stories, governance…). It runs its own tools over the corpus and answers in the requested language. Rate-limited.

  • MCP: ask_jenks on https://jenksguo.xyz/mcp
  • REST: POST /api/v1/ask
  • CLI: jenks ask "<question>"
Argument Type Required Notes
question string yes
locale en · zh · zh-hant · ja · fr · es · eo no Language for translated fields (default en).
history array no Optional earlier turns.
curl -s -X POST https://jenksguo.xyz/api/v1/ask \
  -H 'content-type: application/json' \
  -d '{"question":"Is Jenks a fit for a Head of AI role?"}'

Admin tools

admin_schema — Content schema

The content model: entry fields and rules, tags, lenses, kinds, writable paths, documents, and editing conventions. Read this before writing.

  • MCP: admin_schema on https://jenksguo.xyz/mcp/admin
  • REST: GET /api/admin/schema (admin token)
  • CLI: jenks admin schema

No arguments.

curl -s "https://jenksguo.xyz/api/admin/schema" \
  -H "Authorization: Bearer $JENKSGUO_ADMIN_TOKEN"

admin_list_files — List content files

List editable content files on a branch (path, size, sha), optionally inside one folder such as content/corpus/experiences.

  • MCP: admin_list_files on https://jenksguo.xyz/mcp/admin
  • REST: GET /api/admin/files?dir=&branch= (admin token)
  • CLI: jenks admin ls [dir]
Argument Type Required Notes
dir string no e.g. content/corpus/projects (default: all content)
branch main · dev no main publishes to jenksguo.xyz; dev previews on dev.jenksguo.xyz (default main).
curl -s "https://jenksguo.xyz/api/admin/files" \
  -H "Authorization: Bearer $JENKSGUO_ADMIN_TOKEN"

admin_read_file — Read a content file

Read the raw Markdown/JSON source of a content file (with its sha). Pass path, or slug for an entry, lens or skill.

  • MCP: admin_read_file on https://jenksguo.xyz/mcp/admin
  • REST: GET /api/admin/file?path=&slug=&branch= (admin token)
  • CLI: jenks admin get <slug|path>
Argument Type Required Notes
path string no
slug string no
branch main · dev no main publishes to jenksguo.xyz; dev previews on dev.jenksguo.xyz (default main).
curl -s "https://jenksguo.xyz/api/admin/file" \
  -H "Authorization: Bearer $JENKSGUO_ADMIN_TOKEN"

admin_validate — Validate a change

Validate file content against the content schema without committing. Returns a list of problems (empty = valid).

  • MCP: admin_validate on https://jenksguo.xyz/mcp/admin
  • REST: POST /api/admin/validate (admin token)
  • CLI: jenks admin validate <path> <file>
Argument Type Required Notes
path string yes
content string yes
curl -s -X POST https://jenksguo.xyz/api/admin/validate \
  -H "Authorization: Bearer $JENKSGUO_ADMIN_TOKEN" \
  -H 'content-type: application/json' \
  -d '{"path":"content/corpus/projects/example.md","content":"<content>"}'

admin_write_file — Create or update a content file

Validate and commit one content file (create or replace). Publishing is automatic: CI re-translates changed entries into all languages, rebuilds and deploys (main → jenksguo.xyz, dev → dev.jenksguo.xyz) in a few minutes.

  • MCP: admin_write_file on https://jenksguo.xyz/mcp/admin
  • REST: PUT /api/admin/file (admin token)
  • CLI: jenks admin put <path> <file> -m <message>
Argument Type Required Notes
path string yes
content string yes
message string yes Commit message
branch main · dev no main publishes to jenksguo.xyz; dev previews on dev.jenksguo.xyz (default main).
curl -s -X PUT https://jenksguo.xyz/api/admin/file \
  -H "Authorization: Bearer $JENKSGUO_ADMIN_TOKEN" \
  -H 'content-type: application/json' \
  -d '{"path":"content/corpus/projects/example.md","content":"<content>","message":"<message>"}'

admin_delete_file — Delete a content file

Delete one content file (e.g. remove an entry) with a commit message. Git history keeps it recoverable.

  • MCP: admin_delete_file on https://jenksguo.xyz/mcp/admin
  • REST: DELETE /api/admin/file?path=&message=&branch= (admin token)
  • CLI: jenks admin rm <path> -m <message>
Argument Type Required Notes
path string yes
message string yes
branch main · dev no main publishes to jenksguo.xyz; dev previews on dev.jenksguo.xyz (default main).
curl -s -X DELETE https://jenksguo.xyz/api/admin/file \
  -H "Authorization: Bearer $JENKSGUO_ADMIN_TOKEN" \
  -H 'content-type: application/json' \
  -d '{"path":"content/corpus/projects/example.md","message":"<message>"}'

admin_commit_changes — Commit several files at once

Validate and commit several file changes as ONE commit. Each change is {path, content} or {path, delete: true}.

  • MCP: admin_commit_changes on https://jenksguo.xyz/mcp/admin
  • REST: POST /api/admin/changes (admin token)
  • CLI: jenks admin commit <changes.json> -m <message>
Argument Type Required Notes
changes array yes
message string yes
branch main · dev no main publishes to jenksguo.xyz; dev previews on dev.jenksguo.xyz (default main).
curl -s -X POST https://jenksguo.xyz/api/admin/changes \
  -H "Authorization: Bearer $JENKSGUO_ADMIN_TOKEN" \
  -H 'content-type: application/json' \
  -d '{"changes":"<changes>","message":"<message>"}'

admin_ai_edit — Draft an edit with AI

Ask the site's model to rewrite one content file from a plain-English instruction. Returns the proposed content, a diff and validation problems. Does NOT commit — review, then call admin_write_file.

  • MCP: admin_ai_edit on https://jenksguo.xyz/mcp/admin
  • REST: POST /api/admin/ai-edit (admin token)
  • CLI: jenks admin ai-edit <slug|path> "<instruction>" [--apply]
Argument Type Required Notes
path string no
slug string no
instruction string yes
branch main · dev no main publishes to jenksguo.xyz; dev previews on dev.jenksguo.xyz (default main).
content string no Optional unsaved file text to draft from (default: the saved file).
curl -s -X POST https://jenksguo.xyz/api/admin/ai-edit \
  -H "Authorization: Bearer $JENKSGUO_ADMIN_TOKEN" \
  -H 'content-type: application/json' \
  -d '{"instruction":"<instruction>"}'

admin_deploy_status — Deploy status

Recent CI runs (translate → build → deploy) with status, branch, commit and links.

  • MCP: admin_deploy_status on https://jenksguo.xyz/mcp/admin
  • REST: GET /api/admin/deploys?branch= (admin token)
  • CLI: jenks admin deploys
Argument Type Required Notes
branch main · dev no main publishes to jenksguo.xyz; dev previews on dev.jenksguo.xyz (default main).
curl -s "https://jenksguo.xyz/api/admin/deploys" \
  -H "Authorization: Bearer $JENKSGUO_ADMIN_TOKEN"

admin_promote — Promote dev to production

Merge the dev branch into main, publishing everything previewed on dev.jenksguo.xyz to jenksguo.xyz.

  • MCP: admin_promote on https://jenksguo.xyz/mcp/admin
  • REST: POST /api/admin/promote (admin token)
  • CLI: jenks admin promote
Argument Type Required Notes
message string no
curl -s -X POST https://jenksguo.xyz/api/admin/promote \
  -H "Authorization: Bearer $JENKSGUO_ADMIN_TOKEN" \
  -H 'content-type: application/json' \
  -d '{}'

.md