moatshark
io.github.sharkey1982/moatsharksharkey1982streamable-httpv1.1.0Scanned
Holdings of great value investors: 13Fs, overseas stakes a 13F misses, 5% stakes, insider buys
8 tools: 4 change things and 4 only read.
- Reads private data · 1
- Reads text others write · 0
- Can send data out · 0
- 1 finding
Anlyon alternative
4 of these tools change something. Run those as governed actions.
Declare what an action changes, and Anlyon puts it under a shared limit, binds every approval to the exact request, and grades the outcome. It works on any HTTPS API you can describe as an action.
Anlyon does not run, proxy or govern this MCP server. A tool your own code calls directly is not routed through Anlyon and is not governed by it.
Import an OpenAPI spec →Tools
Grouped by what each tool does, most consequential first. Open one for its reasons and full description; descriptions are the publisher's own words.
8 tools
Changes things 4Claude Code: ask
filing_forecastWhen the managers file their 13Fs: the deadline for the quarter being filed, who has filed so far, who is expected on each remaining day (from each manager's last eight quarters), …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 When the managers file their 13Fs: the deadline for the quarter being filed, who has filed so far, who is expected on each remaining day (from each manager's last eight quarters), and who is later than usual. Give a slug for one manager's habit and history.
Annotations the server declares
- title: 13F filing forecast
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
insider_buyingOpen-market share purchases reported on Form 4 in the last 90 days: by the value investors themselves (as 10% owners) and by companies' own directors and officers.1 finding
Why it is in this group
- The description's first verb is "open": 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 "insider_buying" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The description's first verb is "open": a word for a change.
Description, as the server wrote it Open-market share purchases reported on Form 4 in the last 90 days: by the value investors themselves (as 10% owners) and by companies' own directors and officers.
Annotations the server declares
- title: Insider buying (Form 4)
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
latest_filingsThe newest 13F filings from the managers on moatshark, with each one's biggest buys and sales.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 newest 13F filings from the managers on moatshark, with each one's biggest buys and sales.
Annotations the server declares
- title: Latest 13F filings
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
quarter_roundupWhat the managers owned, bought and sold in one quarter (from 2013 Q1).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 What the managers owned, bought and sold in one quarter (from 2013 Q1). Omit the quarter for the latest one being filed.
Annotations the server declares
- title: Quarter round-up
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
Only reads 4Show 4 read-only tools
fetchThe full record for one id from search (e.g.No findings
Why it is in this group
- The name "fetch" says "fetch": a word for reading.
Description, as the server wrote it The full record for one id from search (e.g. 'manager:berkshire-hathaway' or 'company:ko'), as text with its moatshark url.
Annotations the server declares
- title: Fetch one record
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
get_companyWhich value investors hold a company, how their holdings changed, its directors' recent share purchases and sales (Form 4), and basic SEC company facts.No findings
Why it is in this group
- The name "get_company" says "get": a word for reading.
Description, as the server wrote it Which value investors hold a company, how their holdings changed, its directors' recent share purchases and sales (Form 4), and basic SEC company facts.
Annotations the server declares
- title: Get who owns a company
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
get_managerEverything moatshark has on one value investor: its latest 13F (holdings, weights, change from the previous quarter), the overseas stakes a 13F never shows (from regulators in Japa…Reads private dataNo findings
Why it is in this group
- The name "get_manager" says "get": a word for reading.
What it can reach
- private-dataThe description's first sentence says "file": it reads files.
Description, as the server wrote it Everything moatshark has on one value investor: its latest 13F (holdings, weights, change from the previous quarter), the overseas stakes a 13F never shows (from regulators in Japan, the UK, the Netherlands, France, Germany and Spain, with estimated values), its US funds' non-US holdings (N-PORT), 5% stake filings, Form 4 purchases since the 13F, and when it usually files.
Annotations the server declares
- title: Get a value investor's holdings
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
searchFind value investors (managers) and companies on moatshark by name, person or ticker.No findings
Why it is in this group
- The name "search" says "search": a word for reading.
Description, as the server wrote it Find value investors (managers) and companies on moatshark by name, person or ticker. Returns slugs for get_manager and get_company, and results with ids for fetch.
Annotations the server declares
- title: Search managers and companies
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
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.
Exfil surface
Which tools read private data, which read text someone else can write, and which can send data out. One of each is a path a prompt injection can use.
No private-data, untrusted-input, outbound path in this server alone: no tool is tagged untrusted-input or outbound.
- Reads private data1
- Reads files, mail, messages, databases, secrets, calendars or repositories.
- Reads text others write0
- Brings in text someone else can write: web pages, inbound email, messages, issues and comments.
- Can send data out0
- Can carry data to people or systems: it sends, posts or publishes, or takes a recipient, channel or URL.
Other servers in the same agent add their own tools to these paths. Audit your whole setup to see them together.
Findings
Matches of fixed checks, with the text they matched.
- Warninsider_buying
The server marks "insider_buying" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The description's first verb is "open": a word for a change.
History
Changes to its tool definitions and to its remote endpoint, newest first.
No change seen yet. Its tools are rescanned every day, and a remote endpoint is looked at once a week.
Install
Pinned to version 1.1.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http moatshark https://www.moatshark.com/mcpclaude mcp add --transport http moatshark https://www.moatshark.com/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change or a way out, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__moatshark__search",
"mcp__moatshark__get_manager",
"mcp__moatshark__get_company",
"mcp__moatshark__fetch"
],
"ask": [
"mcp__moatshark__latest_filings",
"mcp__moatshark__quarter_roundup",
"mcp__moatshark__filing_forecast",
"mcp__moatshark__insider_buying"
],
"deny": []
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. A read that can send data out (it takes a URL, say) asks first too. It assumes the server is installed as moatshark. Review it before you use it.
Capability tags behind 1 rule
- mcp__moatshark__get_manager private-data
Pin
Keep the decision: fail CI when the tools change, follow every change, or show a badge.
Pin in CI
Fail a build when the tools you reviewed are not the tools the server serves today.
curl -s "https://anlyon.dev/api/v1/servers/io.github.sharkey1982/moatshark/verify?hash=1ec4a96ae1eb9bcb64abec34480aa3c7bb31b3e69fb6ec7b1f4ce4498737bda1" | jq -e '.changed == false'Pinned hash 1ec4a96ae1eb, from Nov 4, 2026, 12:18 UTC.
Watch
Get told when its tools change: a new tool, a new description, a new class.
https://anlyon.dev/servers/io.github.sharkey1982/moatshark/changes.xmlAn Atom feed. Works in any feed reader or Slack's RSS app.
Badge
[](https://anlyon.dev/servers/io.github.sharkey1982/moatshark)Source: MCP Registry. Synced Nov 4, 2026, 12:17 UTC.