Shikamaru MCP server
io.github.JayOfemi/shikamaru·v1.1.1·1 starsProvably correct day-count, calendar, business-day, and schedule math, verified against QuantLib.
1 stars53 downloads/wk
Reviews
Write oneNobody has reviewed Shikamaru yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
Shikamaru tools (8)
write = sends, deletes, buys or postsRead from the package source without running it. The installed server may list more.
accrued_interestExact simple accrued interest (notional * rate * day-count fraction) between two dates. Dates are ISO YYYY-MM-DD; rate is the annual rate as a decimal (0.05 = 5%). Deterministic.
add_business_daysMove a signed number of business days under a holiday calendar (settlement math: T+2 is count 2). Zero returns the date unchanged. Deterministic.
adjust_dateAdjust a date to a business day under an ISDA convention and holiday calendar. Business days pass through unchanged. modified-following falls back to preceding rather than leave the month (the bond-market default). Deterministic.
day_count_fractionExact day-count fraction between two dates under a market convention. Dates are ISO YYYY-MM-DD. For ACT/ACT ICMA also pass frequency (coupons per year) and, for stub periods, the reference period boundaries. Deterministic; do not estimate this with a model.
generate_scheduleGenerate coupon/payment accrual periods between an effective and a termination date: monthly to annual frequency, backward or forward roll, short or long stub, optional end-of-month rule, business-day adjustment per calendar. Returns each period's unadjusted and adjusted start and end. This is where hand-rolled date code goes wrong; do not approximate it.
is_business_dayWhether a date is a business day under a holiday calendar, with the reason when it is not (weekend or holiday). Calendars are rules in code (no stale data feed). Deterministic; do not let a model guess market holidays.
list_calendarsList the supported holiday calendars with a one-line description of each.
list_conventionsList the supported day-count conventions.
Public scan report
scanner v0.1.9 · 2026-09-27 · same rubric, same numbers if you re-run it
- Code scan23 source files scanned25/25
- –Live reliabilityno gateway calls yet and no remote to proben/a
- –Tool poisoningtools not inspected (local package is not executed); not countedn/a
- Auth qualitylocal package, no credentials required12/15
- Maintenancelast push 17 days ago15/15
- Maintainer identityregistry namespace matches repository owner; GitHub account older than a year8/10
How Shikamaru compares
Against every graded Productivity MCP server, from our own scans and uptime checks. Updated after each scan run.
- Safety score
- 92/100
- higher than 90% of 1,299 Productivity servers
- Tools
- 8
- the typical Productivity server has 7
- Tools that change things
- 0%
- typical: 0%. Fewer write tools means less an agent can break
- GitHub stars
- 1
- more than 50% of 854 Productivity servers
- Downloads a week
- 53
- more than 41% of 427 Productivity servers with a package
What its tools let an agent do: 6 read · 2 create
Install Shikamaru in Claude Code, Cursor or VS Code
Runs npx -y @jayofemi/shikamaru on your machine. Read the scan report first; the gateway never runs local packages.
claude mcp add shikamaru -- npx -y @jayofemi/shikamaru
What the publisher says
From the Shikamaru repository's README, as published. We do not edit it. Read it on GitHub
shikamaru
Provably correct day-count, holiday-calendar, business-day, and payment-schedule calculations. A small, dependency-light TypeScript library and an MCP server, so an AI agent can get the exact date or number instead of guessing.
Why
LLMs are unreliable at date and money math: they pick the wrong day-count convention, forget market holidays, and miscompute accrued interest. shikamaru does it deterministically and proves it against published reference values. Do not let a model guess your interest accrual or your settlement date.
What it does
- Day-count fraction between two dates under seven market conventions: 30/360, 30E/360, 30E/360 ISDA, ACT/360, ACT/365F, ACT/ACT ISDA, ACT/ACT ICMA (with reference periods and stub decomposition).
- Simple accrued interest: notional x rate x day-count fraction.
- Holiday calendars as rules in code, no data feed: us-federal, nyse, sifma-us, target, uk.
- Business-day math: is-business-day, next/previous, ISDA adjustment conventions (following, modified-following, preceding, modified-preceding), T+N settlement.
- Payment schedules: monthly to annual, backward or forward roll, short or long stubs, end-of-month rule, per-period unadjusted and adjusted dates.
- All of it exposed as a library and as an MCP server.
- Every MCP tool is annotated read-only and returns structured output (typed JSON under an output schema) alongside the plain-text result, so an agent client can consume the numbers without parsing text.
Calendar maintenance contract
Calendars are published rules plus a short pinned table of historical one-off closures, current as of this version. Rules generate correct dates arbitrarily far forward; one-off closures (a mourning day, a proclaimed extra holiday) are added when announced and ship in a patch release. A scheduled CI run re-checks every calendar against the latest QuantLib weekly, so drift is detected, not discovered.
Install
npm install @jayofemi/shikamaruLibrary usage
import {
accruedInterest, addBusinessDays, adjustDate, dayCountFraction,
generateSchedule, isBusinessDay,
} from "@jayofemi/shikamaru";
dayCountFraction("2003-11-01", "2004-05-01", "ACT/ACT ISDA"); // 0.4977...
accruedInterest({
notional: 1_000_000,
rate: 0.05,
start: "2024-01-01",
end: "2024-04-01",
convention: "ACT/365F",
});
isBusinessDay("2024-06-19", "nyse"); // false (Juneteenth)
adjustDate("2024-03-29", "modified-following", "target"); // "2024-03-28" (Good Friday, stays in March)
addBusinessDays("2024-07-02", 2, "us-federal"); // "2024-07-05" (T+2 over July 4th)
generateSchedule({
effective: "2024-01-15",
termination: "2026-01-15",
frequency: "semiannual",
calendar: "target",
}); // four periods with unadjusted and adjusted datesDates are strict ISO YYYY-MM-DD. Rate is an annual decimal (0.05 = 5%).
MCP server
From source (local dev):
npm install
npm run build
node dist/cli.jsOr launch the published package directly:
npx @jayofemi/shikamaruPoint any MCP client (Claude Desktop, an IDE, etc.) at that command over stdio.
Claude Code users can also install it as a plugin, which registers the MCP server automatically:
/plugin marketplace add JayOfemi/shikamaru
/plugin install shikamaru@shikamaruVerify the MCP server
The test suite exercises the server end to end in memory, covering tool listing, read-only annotations, structured output against each output schema, and a call to every tool. For an interactive check, use the official MCP Inspector:
Shortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
Shikamaru: common questions
- Is Shikamaru MCP server safe?
- Yes, by our scan: it is graded A (92/100). Read the Shikamaru safety report
- How do I install Shikamaru?
- It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
- Does Shikamaru need an API key?
- Not as far as the registry entry and our scan can tell: no credentials are declared or required.
- Is Shikamaru maintained?
- The last commit was 55 days ago (2026-09-10). The latest release is v1.1.1.
- What can I use instead of Shikamaru?
- Servers from other publishers that do the same job: SvGrid MCP server, Agent-Native Calendar MCP server and AIquila — Nextcloud MCP Server.
- How does Shikamaru compare with other Productivity MCP servers?
- safety score 92/100 (higher than 90% of 1,299 Productivity servers); tools 8 (the typical Productivity server has 7); tools that change things 0% (typical: 0%. Fewer write tools means less an agent can break). Full comparison.
Alternatives to Shikamaru
Same job from other publishers: the closest match first, then the best rated.
SvGridChecks AI-written SvGrid code against the real API, plus version-pinned Svelte 5 grid docs.not reviewedEstablishedA- Agent-Native CalendarAgent-Native Google Calendar - manage events, sync, and public bookingnot reviewedEstablishedA
- AIquila — Nextcloud MCP ServerNextcloud MCP server — 345 tools: files, calendar, contacts, mail, Talk, Deck, photos, maps, notesnot reviewedEstablishedC
- Intervals IcuRead/write Intervals.icu MCP server: activities, wellness, calendar, gear, and workouts.not reviewedEstablishedB
- iCloud MCPApple Mail, Calendar, Contacts, Reminders, Notes, Messages and Safari via AppleScript or iCloudnot reviewedEstablishedB