MCP.Market

Shikamaru MCP server

by JayOfemi·io.github.JayOfemi/shikamaru·v1.1.1·1 stars

Provably correct day-count, calendar, business-day, and schedule math, verified against QuantLib.

A92/100grade A
What users say
No reviews yet
Be the first
Safety scan
A92/100

full report

Adoption
Growing

1 stars53 downloads/wk

Reviews

Write one

Nobody 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 posts

Read from the package source without running it. The installed server may list more.

  • accrued_interest

    Exact 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_days

    Move a signed number of business days under a holiday calendar (settlement math: T+2 is count 2). Zero returns the date unchanged. Deterministic.

  • adjust_date

    Adjust 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_fraction

    Exact 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_schedule

    Generate 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_day

    Whether 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_calendars

    List the supported holiday calendars with a one-line description of each.

  • list_conventions

    List the supported day-count conventions.

Public scan report

scanner v0.1.9 · 2026-09-27 · same rubric, same numbers if you re-run it

no findings
  • 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
Overall 92/100. Components that don't apply are left out of the denominator. Any critical finding is an F.RubricAppeal a findingJSON

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
Add to Cursor

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/shikamaru

Library 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 dates

Dates 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.js

Or launch the published package directly:

npx @jayofemi/shikamaru

Point 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@shikamaru

Verify 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.

  • SvGrid
    Checks AI-written SvGrid code against the real API, plus version-pinned Svelte 5 grid docs.
    A
  • Agent-Native Calendar
    Agent-Native Google Calendar - manage events, sync, and public booking
    A
  • AIquila — Nextcloud MCP Server
    Nextcloud MCP server — 345 tools: files, calendar, contacts, mail, Talk, Deck, photos, maps, notes
    C
  • Intervals Icu
    Read/write Intervals.icu MCP server: activities, wellness, calendar, gear, and workouts.
    B
  • iCloud MCP
    Apple Mail, Calendar, Contacts, Reminders, Notes, Messages and Safari via AppleScript or iCloud
    B