OptionsAhoy
Description
Equity compensation tax and exercise/sell/hedge planning for US employees: ISO exercise schedules with AMT, NSO and RSU calculators, RSU lot ordering, QSBS checks, concentration analysis, and hedge pricing. Federal plus 50-state plus DC tax math. Hosted remote server (Streamable…
About
Equity compensation tax and exercise/sell/hedge planning for US employees: ISO exercise schedules with AMT, NSO and RSU calculators, RSU lot ordering, QSBS checks, concentration analysis, and hedge pricing. Federal plus 50-state plus DC tax math. Hosted remote server (Streamable HTTP), free, no API key.
Details
- Author
- alvisooculus
- Categories
- Finance
Jump to
Setup
Install OptionsAhoy in your MCP client (Claude Desktop, Cursor, Windsurf, and others).
Repository: https://github.com/alvisooculus/optionsahoy-mcp
Follow the installation instructions in the repository README, then restart your MCP client.
Independently verified by third parties.Glama:third-party MCP-directory quality score (tool docs, behavior, completeness). ·npm:published with build provenance, a signedSLSAattestation that this package was built from this repo by GitHub Actions (verify withnpm audit signatures). ·MCPSafe:independent 5-model-consensus security scan (AIVSS), Grade A with zero findings.
Validated against trusted sources(checks we run ourselves, against references we do not control, and that you can reproduce).Computation:every 2026 federal tax constant matches its IRS Rev. Proc. 2025-32 / Internal Revenue Code value, and 14 worked federal cases (ordinary income, long-term capital gains, and the Alternative Minimum Tax including the incentive stock option bargain element) reproduce to the cent against the independently-maintainedPSL Tax-Calculator, a tax model we did not write. State income tax is cross-checked the same way: 16 cases across California, New York, New Jersey, Pennsylvania, and Massachusetts reproduce to the cent againstOpenTaxSolver, an independent state tax engine we also did not write. The headline answer is recomputed live in your browser.
Tested and hardened.Input safety:requests are validated against the published schema; bad inputs return a clear 400 with the offending field named, never a crash or a wrong number, and the live API is re-checked by a robustness suite after every deploy. ·Test suite:the calculation engine is covered by more than a thousand automated tests across the federal and 50-state tax logic, AMT credit recovery, and option pricing; a failing test blocks the release.
Live usage:MCP calls over the last 30 days, served straight from the server's own telemetry (/api/v1/stats, aggregate counts only, no PII).
Deterministic equity-compensation tax math that any Model Context Protocol (MCP) client can call: incentive stock option (ISO) exercise schedules under the alternative minimum tax (AMT), non-qualified stock option (NSO) and restricted stock unit (RSU) decisions, qualified small business stock (QSBS) qualification, single-stock concentration, protective-put hedging, and equity-funding goals. Relevant federal tax code plus all 50 states and DC, 2026 brackets. Built byAlphaLatitude Inc., the company behindOptionsAhoy.
Why not just ask the model?We benchmarked five frontier large language models (LLMs), 3 runs each, 15 trials total, on the same multi-year ISO exercise problem. Every trial overstated the after-tax result of its own proposed schedule, by 2x to 20x. Multi-year scheduling has a search space larger than is practical to work through in-context; these tools return the verifiable answer instead. Live benchmark, updated for the latest models:optionsahoy.com/benchmark. Raw responses and scoring:llm-iso-benchmark. Full write-up:But can it do taxes though?
The hosted endpoint ishttps://optionsahoy.com/mcp(HTTP, no auth, no account). Quickest paths:
Full install matrix (Gemini CLI extension, config-file JSON, REST API, Google Cloud Agent Registry):optionsahoy.com/for-agents.
The ISO optimizer searches its full discretized candidate space and refines share by share, matching a brute-force maximum to the cent on a published tractable case (see the proof); the planners run deterministic bracket-aware searches and the calculators return exact results. Deterministic computation, not a language-model guess. Coverage spans the relevant federal tax code (ordinary brackets, long-term capital gains, AMT with credit recovery, FICA, NIIT) plus all 50 states and DC (state ordinary brackets, LTCG treatment, state AMT for CA, CO, CT, MN). Same engine as the in-browser calculators atoptionsahoy.com/tools; the API response carries the same computed figures as clicking through the tool.
If you build agents in Python rather than calling the MCP endpoint directly, OptionsAhoy ships installable tool packages for the major agent frameworks. Each one wraps the same calculators behind the framework's native tool interface. All are published on PyPI and all are keyless: no OptionsAhoy account, no API key.
The three framework adapters pull in the keylessoptionsahoyclient automatically. There is also anOpenBB Workspace agent(a FastAPI application built on the OptionsAhoy client) for use inside OpenBB Workspace. Source and runnable examples for all of the above live underintegrations/python.
However your agent is built, there is a drop-in piece. All are public and keyless.
The live widget onoptionsahoy.com/for-agentscalls this same endpoint from your browser. No client, no config.
Prefer a chat interface? The same calculators answer plain-language questions atpoe.com/OptionsAhoy.
Real Claude Code session, unedited. A multi-stack META question (10K ISOs + 6K vested RSUs + 2K fresh RSUs + $400K house in 2027) fires 4 OptionsAhoy MCP tools in parallel: concentration risk, equity funding plan, AMT/ISO optimization, protective put pricing. Claude synthesizes the outputs into one plan that overrides each tool's standalone pick because the user is 86% concentrated in META. 2:13. Click the poster to play it on optionsahoy.com.
Live MCP endpoint:https://optionsahoy.com/mcpLive REST API:https://optionsahoy.com/api/v1OpenAPI 3.1 spec:/openapi.jsonDiscovery manifests:/.well-known/mcp.json·/.well-known/openapi.jsonAgent integration docs:optionsahoy.com/for-agents
Eight markdown resources underresources/listgive an LLM enough grounding to discuss the topic before picking a tool. Most map 1:1 with a cornerstone article onoptionsahoy.com/learnand the matching calculator; the equity-funding briefing maps to its calculator, and the covered-tickers briefing enumerates the symbols the optionaltickershortcut resolves.
Eight prompts underprompts/listscaffold typical user questions and route to the right tool. In Claude Desktop they appear as named slash-commands; in any MCP client,prompts/get { name, arguments }returns a fully-templated user message.
npm install && npm run build:mcpb
npx @smithery/cli install alphalatitude/optionsahoy --client claude
Swapclaudefor any client Smithery supports:claude-code,cursor,vscode,gemini-cli,codex,windsurf,cline,goose,opencode, and 10 more. Listing:smithery.ai/servers/alphalatitude/optionsahoy.
gemini extensions install https://github.com/AlvisoOculus/optionsahoy-mcp
This repo doubles as aGemini CLI extension:gemini-extension.jsonwires the hosted MCP endpoint andGEMINI.mdprovides usage context to the model.
For clients that only support local stdio servers (Claude Desktop withoutmcp-remote, some IDE integrations):
Or add to a Claude Desktop / Cline / Goose config file:
{ "mcpServers": { "optionsahoy": { "command": "npx", "args": ["-y", "optionsahoy-mcp"] } } }
The local server returns the same computed figures as the hosted endpoint athttps://optionsahoy.com/mcp. Source for both lives infunctions/_lib/mcp-tools.ts; the stdio entry point issrc/stdio-server.ts.
# List endpoints curl https://optionsahoy.com/api/v1 # Run an optimization curl -X POST https://optionsahoy.com/api/v1/amt-iso \ -H "content-type: application/json" \ -d @input.json
Request body shapes are documented inpublic/openapi.json.
functions/ Cloudflare Pages Functions (MCP server + REST API endpoints) mcp.ts HTTP MCP server api/v1/.ts Eight tool endpoints + stats + GET /api/v1 discovery _lib/.ts Shared helpers, calc-input parsers, MCP tool descriptors lib/ Optimizer + tax-code logic calc/ Per-tool optimizer functions (computeAmtIso, etc.) tax/ Federal + 50-state + DC bracket data, AMT, FICA, NIIT markets/ Sector statistics options/ Black-Scholes, risk-free rates data/ Type definitions for option-chain data public/ Static assets: OpenAPI spec, llms.txt, discovery manifests tests/ Vitest suites (an extensive test suite including byte-identity assertions)
npm install npm test # an extensive test suite, ~3s on a laptop npm run typecheck
- Official MCP Registry—io.github.AlvisoOculus/optionsahoy-mcp, status active
- Smithery—alphalatitude/optionsahoy(plus theequity-plan skill)
- Gemini CLI extensions gallery—@AlvisoOculus/optionsahoy-mcp
- add-mcp curated registry
- PulseMCP(cascades from Official Registry)
- Continue.dev hub— block YAML lives at.continue/mcpServers/optionsahoy.yaml
Google Cloud Agent Registry lets each GCP project register external MCP servers for use by Gemini agents. Registration is per-project (no central submission). Two paths:
# Path A: let the Agent Registry introspect our MCP endpoint gcloud alpha agent-registry mcp-servers register \ --uri=https://optionsahoy.com/mcp \ --display-name="OptionsAhoy" \ --location=us-central1 \ --import-tools # Path B: pass our published toolspec.json directly (faster, no introspection) gcloud alpha agent-registry mcp-servers register \ --uri=https://optionsahoy.com/mcp \ --display-name="OptionsAhoy" \ --location=us-central1 \ --tool-spec=<(curl -sSL https://optionsahoy.com/toolspec.json)
The toolspec.json mirrors the MCPtools/listresponse withreadOnlyHintandidempotentHintannotations on all eight tools (all are pure deterministic calculators with no side effects). To regenerate after a tool-shape change:
curl -sS -X POST https://optionsahoy.com/mcp \ -H 'content-type: application/json' \ -d '{"jsonrpc":"2.0","method":"tools/list","id":1}' \ | jq -c '{tools: [.result.tools[] | . + {annotations: {readOnlyHint:true, idempotentHint:true, destructiveHint:false, openWorldHint:false}}]}' \ > public/toolspec.json
Connection refused / 404 from the MCP endpointhttps://optionsahoy.com/mcprequiresPOSTwithcontent-type: application/jsonand a JSON-RPC body. AGETreturns a JSON server description; any other verb returns 405. Verify with:
curl -X POST https://optionsahoy.com/mcp -H 'content-type: application/json' \ -d '{"jsonrpc":"2.0","method":"initialize","id":1,"params":{}}'
Tool calls fail withError: ...text in the responseThe MCP server returnsisError: truewith a human-readable message when input validation fails. Most common: a required field missing, or a number passed as a string. Check the input against theinputSchemareturned bytools/list, or against/openapi.json.
Tool not appearing in Claude.ai or Claude Desktop
- Confirm the connector URL is exactlyhttps://optionsahoy.com/mcp(no trailing slash, no/v1).
- In Claude Desktop, restart the app after editingclaude_desktop_config.json.
- In Claude.ai, the connector toggle is per-chat: enable it in the attachments menu.
- Check the livetools/listresponse (eight tools expected):curl -X POST https://optionsahoy.com/mcp -H 'content-type: application/json' -d '{"jsonrpc":"2.0","method":"tools/list","id":1}'
CORS errors from a browser-based clientThe server returnsaccess-control-allow-origin: *on all responses including preflight, and accepts the standard MCP headers (content-type,mcp-session-id,mcp-protocol-version). If a browser still blocks, the client is likely sending a non-allowed header — verify the request headers against theaccess-control-allow-headersresponse.
Resource / prompt not foundResource URIs and prompt names are case-sensitive. Pull the canonical list withresources/listandprompts/listrather than hand-typing.
Stale tax-year mathThe tax engine ships with 2026 inflation-adjusted brackets, OBBBA 2026 QSBS rules, and current state-conformity tables. If results look off for a multi-year horizon, verify the inputgrantDate,acquisitionDate, orsaleDatefalls in the year you expect — the engine resolves brackets per tax year.
Reporting a calculation bug or unexpected outputEmailandrew@alphalatitude.comwith: the exact JSON-RPC request body, the response, the expected value, and (if known) the IRS publication or state statute the expected value derives from.
In short: no account is required and no personally identifiable information is stored — no name, email, IP address, or login. Tool inputs and outputs are retained briefly (about seven days) for debugging and product improvement, alongside aggregate usage metadata (tool, timestamp, coarse location, client type) used to understand usage and detect abuse. The local stdio server and the Claude Desktop extension compute everything on your machine; the only network request is an option-chain lookup (ticker symbol only) forprotective_put_price.
MIT. SeeLICENSE. The deployed service athttps://optionsahoy.com/mcpandhttps://optionsahoy.com/api/v1is free during beta underterms.
For partnerships, early API access, MCP integration support:andrew@alphalatitude.com
Bridge Town is an MCP-native, git-versioned financial modeling platform for FP&A teams and finance leaders. AI agents use Bridge Town tools to create projects, write Python model files, run models in isolated cloud sandboxes, query data, write outputs to Google Sheets, create dashboards, branch scenarios, and collaborate with teammates.
The Capital.com MCP Server lets your AI assistant talk to your trading account directly. Market data, position checks, trade previews – all in plain language, without leaving your AI tool.
Coinrule Agentic Trading MCP enables investors to create, backtest, execute, and manage trading agents through natural language across stocks, crypto and ETFs
Invest with Claude and other AI assistants
Australian Consumer Data Right Product Data
Remote MCP server for historical crypto & prediction-market data: search ~500K instruments, live market stats (OHLC, turnover, spreads, depth, slippage) and tick-data purchase. Keyless for catalog & stats; optional OAuth for account tools. Endpoint: https://cryptostruct.com/mcp
Cross-border debt collection from your AI assistant: check cases, get pricing, submit new cases.
Read-only MCP server for your Evibe investment portfolio + live market data (holdings, performance, dividends, benchmarks, screeners). Works with Claude & ChatGPT.
Financial and quantitative modeling engine for AI agents. Typed, named, deterministic.
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.
