Canon (wallstreet.wiki)
by wallstreet.wiki · remote · no sign-in to list tools · v1.0.0 · published by wiki.wallstreet
Finance canon lookup plus 30 deterministic formulas, each with a verifiable receipt.
13 tools: 8 change things and 5 only read.
Scanned Oct 21, 2026
- Deletes or cancels0Claude Code: deny
- Can't be undone0Claude Code: ask
- Changes things8Claude Code: ask: see these tools
- Only reads5Claude Code: allow: see these tools
2 checks matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http canon https://canon.wallstreet.wiki/mcpFindings
Matches of fixed checks, with the text they matched.
- Warncanon_compute
The server marks "canon_compute" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"idempotentHint":true}; The description's first verb is "run": a word for a change.
- Warncanon_batch
The server marks "canon_batch" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"idempotentHint":true}; The description's first verb is "run": a word for a change.
Tools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
13 tools
Changes things 8Claude Code: ask
canon_batchRun up to 50 computes in one call, for scenario grids and sensitivity tables.1 finding
Why it is in this group
- The description's first verb is "run": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "canon_batch" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"idempotentHint":true}; The description's first verb is "run": a word for a change.
Description, as the server wrote it Run up to 50 computes in one call, for scenario grids and sensitivity tables. Each item returns its own receipt; the batch receipt id is sha256 over the sorted item receipt ids, so a whole table can be cited by one hash.
Annotations the server declares
- readOnlyHint: true
- idempotentHint: true
canon_changesAggregated dated change events across every vertical, newest first.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Aggregated dated change events across every vertical, newest first. Poll this instead of re-crawling.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: true
canon_citeReady-to-paste citation strings (markdown, plain, apa, bibtex) for one entry, with the reviewed date.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Ready-to-paste citation strings (markdown, plain, apa, bibtex) for one entry, with the reviewed date. Use when writing a report that quotes the canon.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: true
canon_computeRun one formula from the registry on validated inputs.1 finding
Why it is in this group
- The description's first verb is "run": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "canon_compute" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"idempotentHint":true}; The description's first verb is "run": a word for a change.
Description, as the server wrote it Run one formula from the registry on validated inputs. Returns outputs, the convention used, citations, and a receipt whose id is sha256 over formula, version, canonical inputs and outputs. Invalid inputs return an explicit problem list and a working example instead of nulls.
Annotations the server declares
- readOnlyHint: true
- idempotentHint: true
canon_entityMap a ticker (AAPL, BRK.B), a CIK, or a company name to one issuer id with every ticker and exchange, plus EDGAR filing locations.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Map a ticker (AAPL, BRK.B), a CIK, or a company name to one issuer id with every ticker and exchange, plus EDGAR filing locations. Use before joining prices, filings and news so identifiers line up; source is the SEC public ticker file.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: true
canon_sitesThe sites in the .wiki finance canon with live entry counts and review dates.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it The sites in the .wiki finance canon with live entry counts and review dates.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: true
canon_thresholdsReference table of the regulatory figures agents get wrong: 13F, 13D and 13G, Form 4, Form PF tiers, adviser registration, 3(c)(1) and 3(c)(7), accredited investor, qualified clien…No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Reference table of the regulatory figures agents get wrong: 13F, 13D and 13G, Form 4, Form PF tiers, adviser registration, 3(c)(1) and 3(c)(7), accredited investor, qualified client, Form D, CFTC 4.13(a)(3), ERISA 25 percent, AIFMD, HSR, Reg T. Each row carries the rule, authority, effective date, primary source and a confidence label. Filter by words or authority.
Annotations the server declares
- readOnlyHint: true
canon_verifyRecompute a receipt from its inputs and confirm its id and outputs.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Recompute a receipt from its inputs and confirm its id and outputs. Use it to check a number another agent or document claims came from this service.
Annotations the server declares
- readOnlyHint: true
- idempotentHint: true
Only reads 5Claude Code: allow
canon_contractFetch one Kalshi (ticker) or Polymarket (slug or condition id) contract and return rules text, close time, resolution source and status in one shape.No findings
Why it is in this group
- The description's first verb is "fetch": a word for reading.
Description, as the server wrote it Fetch one Kalshi (ticker) or Polymarket (slug or condition id) contract and return rules text, close time, resolution source and status in one shape. For a paid cross-venue identity check with a snapshot receipt, call GET /v1/contracts/compare over REST.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: true
canon_describe_formulaInput schema with ranges and defaults, output names, stated convention, citations and test vectors for one formula.No findings
Why it is in this group
- The name "canon_describe_formula" says "describe": a word for reading.
Description, as the server wrote it Input schema with ranges and defaults, output names, stated convention, citations and test vectors for one formula.
Annotations the server declares
- readOnlyHint: true
canon_get_entryFull definition and notes for one entry, by site and id (ids come from canon_search).No findings
Why it is in this group
- The name "canon_get_entry" says "get": a word for reading.
Description, as the server wrote it Full definition and notes for one entry, by site and id (ids come from canon_search).
Annotations the server declares
- readOnlyHint: true
- openWorldHint: true
canon_list_formulasThe deterministic formula registry: id, site, summary, input names and citations.No findings
Why it is in this group
- The name "canon_list_formulas" says "list": a word for reading.
Description, as the server wrote it The deterministic formula registry: id, site, summary, input names and citations. Call canon_describe_formula for a schema.
Annotations the server declares
- readOnlyHint: true
canon_searchSearch defined terms and reference tables across all canon sites (options, fixed income, quants, PE, M&A, private credit, venture, hedge funds).No findings
Why it is in this group
- The name "canon_search" says "search": a word for reading.
Description, as the server wrote it Search defined terms and reference tables across all canon sites (options, fixed income, quants, PE, M&A, private credit, venture, hedge funds). Returns ranked hits with a citable url and the JSON source.
Annotations the server declares
- readOnlyHint: true
- openWorldHint: true
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Install
Pinned to version 1.0.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http canon https://canon.wallstreet.wiki/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__canon__canon_search",
"mcp__canon__canon_get_entry",
"mcp__canon__canon_list_formulas",
"mcp__canon__canon_describe_formula",
"mcp__canon__canon_contract"
],
"ask": [
"mcp__canon__canon_sites",
"mcp__canon__canon_changes",
"mcp__canon__canon_compute",
"mcp__canon__canon_verify",
"mcp__canon__canon_batch",
"mcp__canon__canon_entity",
"mcp__canon__canon_thresholds",
"mcp__canon__canon_cite"
],
"deny": []
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as canon. Review it before you use it.