Marker client report
Skill marker-io/mcp-skills/claude/skills/marker-client-report
AI assistant skills for the Marker.io MCP. Triage feedback, spot patterns, ship fixes.
npx -y skills add marker-io/mcp-skills --skill marker-client-reportAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 7 stars7 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Turn a project's completed Marker.io work into a client-ready report. Use when asked to write a weekly or monthly recap for a client, summarize what was shipped or fixed this period, or produce a status update for a website project from Marker.io. Read-only: it reads issues and writes a markdown report, it does not change issues.
SKILL.md
5.3 KB, as published. Nobody here has run it
marker-client-report
Produce a polished, client-facing recap of what an agency completed on a website over a week or month, straight from Marker.io — grouped by page, written in plain language, ready to paste into an email or send as-is. Read-only.
When to use
"Write the weekly report for <client>", "what did we ship for <project> this month", "monthly recap
for the <site> work", "client status update from Marker". For analyzing recurring patterns rather than
reporting a period's work, use marker-insights; for triaging the open backlog, use marker-triage.
Inputs to confirm
- Which project (one client / site is usually one project; resolve per the operating rules).
- The window: default the last 7 days, or "last month" / last 30 days / an explicit date range.
- Whether to include sections beyond completed work: in-progress now, and newly reported this period. Default: completed only.
Steps
- Resolve the project and read
project_getfor its name andwebsiteUrls(the report header and the page mapping). - Decide which statuses count as completed —
ResolvedandClosedby default. Statuses are project-specific and can be renamed, so don't assume a customized board uses the English defaults: confirm which are in use by probingissues_listwith eachstatusvalue, and if it is unclear which statuses mean "done", show the candidates and ask. - Pull issues with
issues_list, paginatinglimit/offsetfully. Keep fields lean:markerId,title,status,url,createdAt,updatedAt. The MCP has no date filter, so window client-side: an item counts as completed this period when its status is one of the completed states and itsupdatedAtfalls in the window. - Classify each completed item as a content update (typo, copy, wrong number or fact, image, link,
layout) or a fix (functional bug). Marker does not expose an issue's type to read, so infer it
from the title and page URL; open
issue_get/issue_get_screenshotonly when the title is too thin to describe in client terms. - Group by page (from the URL relative to
websiteUrls), and within a page by content vs fix. - Write the report (see Output). Translate internal titles into client language: "Fix typo in intro paragraph" becomes "Corrected a typo in the Solutions page intro". Drop Marker jargon, statuses, and IDs from the client-facing copy.
Output
A markdown report client-report-<project>-<date>.md:
- A one-line headline: "This week we completed 12 updates across 4 pages of <site>."
- What we updated, grouped by page, each item a plain-language sentence. Separate content updates from fixes when both are present.
- Optional In progress and New this period sections when requested.
- A short closing line inviting feedback.
Keep a separate internal copy (or a footnote) with the Marker links and issue codes for the agency's own reference; keep the client-facing version clean.
Honesty about the data
Completion is dated by updatedAt because the Marker.io MCP exposes no resolved-at timestamp and no date
filter. An older issue that was re-touched (a late comment, a status change) in the window can therefore
appear; skim the list before sending and drop anything that was not really completed this period.
This skill is read-only. It does not change any issue.
Operating rules
This skill drives the Marker.io MCP. Read tools: projects_list, project_get, project_list_users,
list_issue_types, issues_list, issue_get, issue_get_context, issue_get_screenshot,
issue_get_attachments, issue_get_console_log, issue_get_network_request. Write tools:
issue_update_status, issue_update_assignee, issue_update_priority, issue_update_type,
comment_create.
- Resolve the project first. Call
projects_list(filter withsearchText). If more than one could match, show the candidates and ask which one. Never guess aprojectId. - Discover before you write. Status and issue-type strings are project-specific. Call
list_issue_typesandproject_getfor valid values before anyissue_update_*. Get user IDs fromproject_list_usersbefore assigning or @mentioning. - Read cheap, drill deep only when it matters. Start from
issue_get_contextsummaries; fetch a specificissue_get_console_log(logIndex)/issue_get_network_request(requestIndex)orissue_get_screenshotonly when it changes a decision. - Propose, then apply. Before any write, print a table of the planned changes (issue, field,
old to new). Apply via the
*_update_*/comment_createtools only after the user confirms. Default comment visibility toMember-onlyunless the reporter should see it. - Respect the limits.
issues_listdoes not return assignee (fetch per-issue viaissue_get). The MCP cannot create Marker.io issues. Never embed tokens; rely on the configured MCP auth.