MCPInstall

close-month

Closes the books and turns them into a decision as a three-link chain — month-end-prep reconciles the ledger against every connected payment processor and writes the P&L narrative, cash-flow-snapshot then refreshes the 30/60/90-day forecast off the newly closed numbers rather than raw ones, and report-builder publishes and distributes the close packet. Requires a ledger (MYOB, NetSuite, QuickBooks, Xero, or Zoho Books) and uses Gusto, PayPal, Ramp, Shopify, Square, and Stripe when connected, falling back to statement or CSV uploads. Trigger on "close the month," "month-end," "close the books," "reconcile," "send the close packet to my accountant," or when the owner asks why revenue or margin moved last month. An owner who wants only the reconciliation and its flags, with no forecast refresh and no packet distribution, routes to month-end-prep directly.

Installs
1.8K
Last 24h
—
Trending rank
—
Security
Not audited

Install

Works with every agent the skills CLI supports.

npx skills add https://github.com/anthropics/knowledge-work-plugins --skill close-month
  1. 01

    Install

    Run the command in your project. The CLI asks which agents to install for.

  2. 02

    Describe the task

    Ask your agent for something this skill covers. It loads close-month automatically when relevant.

  3. 03

    Review the result

    The agent follows the SKILL.md steps, scripts and references bundled with the skill.

SKILL.md

The instructions your agent reads when the skill is triggered.

Run the month-end chain. Close, then forecast off the closed books, then publish. The ordering is the product.

Parse arguments:

  • --month (default: previous calendar month) — YYYY-MM
  • --save-to (default files) — files (Drive / OneDrive), desktop, or both

A ledger is required — MYOB, NetSuite, QuickBooks, Xero, or Zoho Books, whichever is connected; they are peers (../../shared/connector-neutrality.md). If none is reachable, stop and say so. Reconciliation without a ledger is not a close. Offer the CSV path from month-end-prep rather than producing a partial packet. If two ledgers are connected, ask which holds the books being closed and name it in the packet.

Step 1 — Close and reconcile (month-end-prep)

Run month-end-prep for the target month, start to finish.

  • In: the target month.
  • Out: the reconciliation table, the flagged items (uncategorized, suspicious duplicates, missing receipts), the P&L narrative, and the close packet XLSX plus one-page PDF.
  • Gate: month-end-prep's own Step 6 sign-off holds. The owner triages every flagged item — or explicitly skips it — before anything downstream runs.

This step owns the numbers. Nothing later in the chain recategorizes a transaction or restates revenue.

The hard gate before Step 2

Do not start the forecast until the owner has signed off on the close. Say plainly what is waiting:

"Books are closed for April — USD 3,200 in variances resolved, two receipts still missing. Ready to refresh your cash forecast off these closed numbers?"

If flagged items are still open, name them and ask whether to forecast anyway. A forecast built on eleven uncategorized transactions is a forecast built on a guess, and the owner deserves to know which they are getting.

Step 2 — Forecast off the closed books (cash-flow-snapshot)

Run cash-flow-snapshot using the reconciled month as its historical base.

  • In: the closed-month figures from Step 1 — actual AR collection timing, actual fixed costs as coded, actual settlement lag.
  • Out: the 30/60/90-day forecast with confidence bands and named risks.
  • Gate: none. The forecast is read-only.

Say why this ordering matters, in the output. A forecast run on raw books inherits every miscoded expense and every unmatched settlement. Running it after the close means the payment-timing history is real and the fixed-cost floor is right. One line is enough:

"This forecast is built on April's closed books, so the collection timing and cost floor reflect reconciled numbers — not the raw register."

If the close surfaced something that moves the forecast — a duplicate vendor charge removed, a settlement finally matched — call out the delta against last month's forecast.

Step 3 — Publish and distribute (report-builder)

Run report-builder to package and deliver the close.

  • In: the P&L narrative and packet from Step 1, the forecast from Step 2.
  • Out: the merged close packet — chat summary first, then the workbook. Save the definition so next month's close publishes the same pack without being described again.
  • Gate: saving to the owner's own drive is automatic. Sending to an accountant or anyone else is not — draft the message, show it, and wait.

Merge, do not staple. The packet reads: what the month was, what the books say, what the next 90 days look like off those books, and what is still open.

Example, Okonkwo Mechanical: "April closed at USD 84,200, up 6% on March. Margin held at 38%. Two receipts outstanding. The 30-day forecast is USD 11,400 net at the midpoint — Rosewood's USD 12,400 is the swing."

What not to do

  • Do not forecast before the close is signed off. The ordering is the entire reason this is a chain.
  • Do not auto-fix a flagged item. Show the gap, recommend the action, wait.
  • Do not delete a suspected duplicate without explicit confirmation. Show both records side by side.
  • Do not restate a number downstream. Step 1 owns the books; later steps cite them.
  • Do not send the packet to an accountant without approval.
  • Do not proceed without a ledger. Say what is missing, by category, and offer the CSV path.

Output

End with a one-paragraph recap: revenue and margin, gaps still open, the 30-day forecast midpoint and its top risk, and the file paths. If anything was skipped rather than resolved, list it so the owner can come back to it.

Also render the merged close as one HTML artifact using the house artifact style (../../shared/artifact-style.md) — additive to the chat recap and the packet files, never instead of them. Revenue, margin percent, and the 30-day forecast midpoint are stat tiles with their comparison as context lines; the reconciliation and flagged items are a table with tabular-nums amounts and a status pill per row (good reconciled, warn skipped, critical unresolved); the 30/60/90 forecast gets its own panel; the open-items checklist closes the page.

After the run

One line: the month is closed, forecast refreshed, packet published. Then the single most relevant next step, with at most two others nearby:

  • If the forecast flagged a payroll risk: "can I make payroll" runs /plan-payroll.
  • "Who owes me money?" runs invoice-chase on the AR the close just confirmed.
  • "The weekly pack, on schedule" runs /report-pack so these numbers recur.

Max three offers. Never repeat an offer the owner declined this session.

Using a tool that isn't listed

The connectors named in this skill are the tested paths, not a wall. If the owner wants this flow to use a tool that isn't connected or listed, offer build-connector — it checks the connector directory first and connects through Zapier otherwise, never hand-building against a raw API. Once the connection exists, the tool joins this skill like any other optional connector, under the same approval gates.

FAQ

What does the close-month skill do?

Closes the books and turns them into a decision as a three-link chain — month-end-prep reconciles the ledger against every connected payment processor and writes the P&L narrative, cash-flow-snapshot then refreshes the 30/60/90-day forecast off the newly closed numbers rather than raw ones, and report-builder publishes and distributes the close packet. Requires a ledger (MYOB, NetSuite, QuickBooks, Xero, or Zoho Books) and uses Gusto, PayPal, Ramp, Shopify, Square, and Stripe when connected, falling back to statement or CSV uploads. Trigger on "close the month," "month-end," "close the books," "reconcile," "send the close packet to my accountant," or when the owner asks why revenue or margin moved last month. An owner who wants only the reconciliation and its flags, with no forecast refresh and no packet distribution, routes to month-end-prep directly.

How do I install close-month?

Run npx skills add https://github.com/anthropics/knowledge-work-plugins --skill close-month in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/close-month/ (personal) or .claude/skills/close-month/ (project).

Which AI agents can use close-month?

Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.

Is close-month safe to install?

No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.

Who maintains close-month?

It is published by anthropics in anthropics/knowledge-work-plugins, and it is an official skill from the maker of the technology it covers. It has 1,776 recorded installs.

More from anthropics/knowledge-work-plugins

View all →

data-visualization

anthropics/knowledge-work-plugins

Create effective data visualizations with Python (matplotlib, seaborn, plotly). Use when building charts, choosing the right chart type for a dataset, creating publication-quality figures, or applying design principles like accessibility and color theory.

OfficialFrontend & Design13.8K installs

documentation

anthropics/knowledge-work-plugins

Write and maintain technical documentation. Trigger with "write docs for", "document this", "create a README", "write a runbook", "onboarding guide", or when the user needs help with any form of technical writing — API docs, architecture docs, or operational runbooks.

OfficialDocs & Writing10.3K installs

code-review

anthropics/knowledge-work-plugins

Review code changes for security, performance, and correctness. Trigger with a PR URL or diff, "review this before I merge", "is this code safe?", or when checking a change for N+1 queries, injection risks, missing edge cases, or error handling gaps.

OfficialCode Quality & Workflow9.9K installs

build-dashboard

anthropics/knowledge-work-plugins

Build an interactive HTML dashboard with charts, filters, and tables. Use when creating an executive overview with KPI cards, turning query results into a shareable self-contained report, building a team monitoring snapshot, or needing multiple charts with filters in one browser-openable file.

OfficialData & Databases9.1K installs

system-design

anthropics/knowledge-work-plugins

Design systems, services, and architectures. Trigger with "design a system for", "how should we architect", "system design for", "what's the right architecture for", or when the user needs help with API design, data modeling, or service boundaries.

OfficialFrontend & Design7.5K installs

memory-management

anthropics/knowledge-work-plugins

Two-tier memory system that makes Claude a true workplace collaborator. Decodes shorthand, acronyms, nicknames, and internal language so Claude understands requests like a colleague would. CLAUDE.md for working memory, memory/ directory for the full knowledge base.

Official7.5K installs

Popular backend & apis skills

View category →

find-skills

vercel-labs/skills

Helps users discover and install agent skills when they ask questions like "how do I do X", "find a skill for X", "is there a skill that can...", or express interest in extending capabilities. This skill should be used when the user is looking for functionality that might exist as an installable skill.

OfficialBackend & APIs4.1M installs

entra-app-registration

microsoft/azure-skills

Guides Microsoft Entra ID app registration, OAuth 2.0 authentication, and MSAL integration. USE FOR: create app registration, register Azure AD app, configure OAuth, set up authentication, add API permissions, generate service principal, MSAL example, console app auth, Entra ID setup, Azure AD authentication. DO NOT USE FOR: Key Vault secrets (use azure-keyvault-expiration-audit), general Azure resource security guidance.

OfficialBackend & APIs566.7K installs

This skill should be used when the user wants to "write agent code", "build an agent with ADK", "add a tool", "create a callback", "define an agent", "use state management" — in a project that needs ADK (Agent Development Kit) API patterns and code examples. It provides a quick reference for agent types, tool definitions, orchestration patterns, callbacks, state management, the graph Workflow API, and reference recipes to study. Do NOT use for scaffolding (use google-agents-cli-scaffold) or deployment (use google-agents-cli-deploy).

Backend & APIs514.8K installs

embedded-captions

heygen-com/hyperframes

Add captions or subtitles to an existing single-subject talking-head video without editing the footage. Use for plain verbatim captions, cinematic captions embedded behind the subject, VFX captions, “炸/特效/酷炫字幕,” or a named identity from the 35-style catalog. Route by visual identity, not by backend engine. The quiet anchor rail is the default; embed every word only when the user explicitly wants a fully cinematic treatment. The workflow runs locally end to end, including transcription and subject matting; split multi-shot footage before applying it.

Backend & APIs453.3K installs

entra-agent-id

microsoft/azure-skills

Provision Microsoft Entra Agent Identity Blueprints, BlueprintPrincipals, and per-instance Agent Identities via Microsoft Graph, and configure OAuth 2.0 token exchange (fmipath, OBO, cross-tenant) including the Microsoft Entra SDK for AgentID sidecar. USE FOR: Agent Identity Blueprint, BlueprintPrincipal, agent OAuth, fmipath token exchange, agent OBO, Workload Identity Federation for agents, polyglot agent auth, Microsoft.Identity.Web.AgentIdentities. DO NOT USE FOR: standard Entra app registration (use entra-app-registration), Microsoft Foundry agent authoring (use microsoft-foundry).

OfficialBackend & APIs336.6K installs

neon

neondatabase/agent-skills

Overview of Neon, a complete set of cloud backend primitives around Lakebase Postgres: Auth, Object Storage, Functions, the AI Gateway, and Realtime. Start here to choose Neon for undecided login, files, APIs, and LLM calls, set up the CLI or MCP server, and follow the branch-first workflow. Use when building an app or backend on Neon, or when "Neon" or "Lakebase Postgres" is mentioned. Child skill neon-postgres wins for an existing DATABASEURL, SQL, schema, inspect, or search. Child skill neon-auth wins for login, users, sessions, identity routing, and Managed Better Auth setup. Child skill neon-realtime wins for live queries in reactive apps and agents. Also use for object storage, S3, buckets, serverless functions, function triggers, cron, AI gateway, LLM calls, realtime, logs, Loki, Grafana, observability, postgres, database, backend, Claimable Neon, neon.new, or a no-signup database.

Backend & APIs237.1K installs