{"$schema":"https://verifymcp.io/schemas/trust-report.json","schemaVersion":1,"license":{"name":"CC BY-NC 4.0","url":"https://creativecommons.org/licenses/by-nc/4.0/"},"generatedAt":"2026-11-05T18:20:49.936Z","url":"https://verifymcp.io/servers/sudiptohaldar-mcp-server-edgar/mcp-server-edgar","markdownUrl":"https://verifymcp.io/servers/sudiptohaldar-mcp-server-edgar/mcp-server-edgar.md","server":{"slug":"sudiptohaldar-mcp-server-edgar","name":"SEC EDGAR Filings","registryName":"io.github.SudiptoHaldar/mcp-server-edgar","description":"Latest SEC filing and calendar-year filing history for a stock ticker, with official EDGAR links.","registryStatus":"active","deletedAt":null,"statusMessage":null,"liveness":"live","publisher":{"class":"unknown","claimed":false}},"component":{"slug":"mcp-server-edgar","type":"pypi","identifier":"mcp-server-edgar","withdrawn":false,"url":"https://verifymcp.io/servers/sudiptohaldar-mcp-server-edgar/mcp-server-edgar","version":"0.1.2","transport":"stdio","scoredAt":"2026-11-05T10:08:03.821Z"},"score":{"total":64,"tier":"medium","status":"scored","weekDelta":null,"history":[{"date":"2026-11-05","total":64},{"date":"2026-11-04","total":64},{"date":"2026-11-03","total":52},{"date":"2026-11-02","total":52}]},"categories":[{"name":"Supply Chain Security","score":50,"verdict":"partial","reasons":["Malware scan not yet available for this package.","No known CVEs affecting this package version or its production dependencies.","Runs uv_build at install time, a recognised build step with no custom scripting around it.","1 of 31 dependencies flagged as unhealthy."],"codes":[{"code":"supplychain.malware_inconclusive","args":{"reason":"vendor_no_verdict"}},{"code":"cve.none","args":{}},{"code":"installscript.allowlisted","args":{"tool":"uv_build","hooks":"build_backend"}},{"code":"dephealth.assessed","args":{"deps":"31","unhealthy":"1"}}]},{"name":"Provenance & Transparency","score":97,"verdict":"fail","reasons":["Source repository is publicly reachable at the declared URL.","Cryptographically verified build provenance (signed, bound to SudiptoHaldar/mcp_server_edgar).","Clear OSI-approved license (MIT).","Actively maintained (last published 0 days ago).","Disclosure check failed: no security disclosure policy was found in the source repository."],"codes":[{"code":"provenance.repo_verified","args":{}},{"code":"provenance.verified","args":{"repo":"SudiptoHaldar/mcp_server_edgar"}},{"code":"license.osi","args":{"spdx":"MIT"}},{"code":"maintenance.recent","args":{"age_days":"0"}},{"code":"disclosure.absent","args":{}}]},{"name":"Schema Quality & AI Usability","score":72,"verdict":"fail","reasons":["100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).","AI-judged instruction clarity (good).","Context-footprint check failed: tool/resource definitions use about 1647 tokens (~411/item across 4 items; 3 tools + 1 resources), over budget; trim descriptions and params.","Usage-examples check failed: none of the tools include examples."],"codes":[{"code":"schema.descriptions","args":{"pct":"100"}},{"code":"schema.ai_quality","args":{"band":"good"}},{"code":"schema.footprint_heavy","args":{"avg":"411","items":"4","tools":"3","tokens":"1647","resources":"1"}},{"code":"schema.examples_absent","args":{}}]},{"name":"Stability & Change Management","score":10,"verdict":"partial","reasons":["Stability observed for 3 of 30 days with no destabilising changes; credit accrues until the full window elapses."],"codes":[{"code":"stability.building_history","args":{"days":"3"}}]},{"name":"Tool Coverage","score":71,"verdict":"fail","reasons":["100% of tools have a non-trivial description (not blank, and not just the tool's name).","0% of tool parameters carry a description.","Structured output schemas are declared (100% of tools); any adoption earns full credit."],"codes":[{"code":"toolquality.descriptions","args":{"pct":"100"}},{"code":"toolquality.param_docs","args":{"pct":"0"}},{"code":"toolquality.output_present","args":{"pct":"100"}}]},{"name":"Tool Safety","score":100,"verdict":"pass","reasons":["No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.","We read all 3 captured tool definition(s), and no name or description among them implies an irreversible operation.","An AI judge read all 5 captured unit(s) of tool text and found none that tries to manipulate the model reading it."],"codes":[{"code":"toolsafety.injection_clean","args":{}},{"code":"toolsafety.destructive_none","args":{"tools":"3"}},{"code":"toolsafety.manipulation_clean","args":{"units":"5","judged":"5"}}]},{"name":"Capabilities","score":100,"verdict":"pass","reasons":["Implements a current MCP spec version (2026-07-28)."],"codes":[{"code":"protocol.current","args":{"version":"2026-07-28"}}]}],"inconclusive":["Malware scan not yet available for this package."],"malware":[],"components":[{"slug":"mcp-server-edgar","type":"pypi","identifier":"mcp-server-edgar","withdrawn":false,"score":64,"current":true,"url":"https://verifymcp.io/servers/sudiptohaldar-mcp-server-edgar/mcp-server-edgar","markdownUrl":"https://verifymcp.io/servers/sudiptohaldar-mcp-server-edgar/mcp-server-edgar.md"}],"facts":[{"label":"Registry","value":"pypi"},{"label":"Package","value":"mcp-server-edgar"},{"label":"Version","value":"0.1.2"},{"label":"Transport","value":"stdio"}],"install":{"available":true,"bundleSha256":null},"tools":[{"name":"get_latest_filing","title":"Latest SEC filing","description":"Newest SEC filing for a stock ticker, with official EDGAR links.\n\nResolves the ticker to its SEC CIK and returns the filing with the latest `filing_date`\n(the date the SEC received it). `forms` restricts the search to exact form types,\ncase-insensitive: `[\"10-K\"]` matches `10-K` but not `10-K/A`; omit it to consider every\nform. `report_date` (the period the filing covers) is returned as context only, so a 10-K\nfiled in January 2026 for the fiscal year ending September 2025 has a 2026 `filing_date`.\n\nArgs:\n    ticker: Stock ticker symbol, e.g. `\"AAPL\"`. Case and surrounding whitespace are\n        ignored; `BRK.B` and `BRK-B` are equivalent.\n    forms: Optional list of SEC form types, e.g. `[\"10-K\", \"10-Q\"]`.\n    cik: Optional SEC CIK (1-10 digits, string or integer) to pick one issuer when a\n        previous call returned `\"ambiguous\"`; it must be listed under `ticker`.\n\nReturns:\n    A JSON object with `status` and a one-line `message`. On `\"ok\"`: `company` {cik, name,\n    ticker, exchange}, `forms` (normalised list or null) and `filing` {form, filing_date,\n    report_date, accession_number, filing_url, primary_document_url}, or `filing` null when\n    the company has no filing of those forms; `filing_url` (the filing index page) is\n    always present, `primary_document_url` may be null. The other statuses (`not_found`,\n    `ambiguous` with `candidates`, `invalid_input` with `field`, `upstream_error` with\n    `retryable`) are defined in the server instructions.\n\nExample:\n    `get_latest_filing(\"AAPL\", [\"10-K\"])` returns Apple's most recent annual report.","inputs":[{"name":"cik","type":null,"required":false,"description":null},{"name":"forms","type":null,"required":false,"description":null},{"name":"ticker","type":"string","required":true,"description":null}],"outputs":[],"hasOutputSchema":true,"hasExamples":false,"tokenEstimate":448},{"name":"list_filings_by_year","title":"Filings by year","description":"Filings a company submitted to the SEC during one calendar year, newest first, paged.\n\n`year` selects filings by `filing_date`, the date the SEC received the filing, not by\n`report_date` (the period the filing covers): a 10-K for the fiscal year ending September\n2025 that was filed in January 2026 belongs to `year=2026`. `forms` restricts the list to\nexact form types, case-insensitive (`[\"10-K\"]` matches `10-K` but not `10-K/A`). Older\nyears are served from the SEC's history files automatically.\n\nArgs:\n    ticker: Stock ticker symbol, e.g. `\"AAPL\"`; case and surrounding whitespace are ignored.\n    year: Calendar year of the filing date, 1993 or later; a future year returns an empty list.\n    forms: Optional list of SEC form types, e.g. `[\"10-K\", \"10-Q\"]`; omit it for every form.\n    limit: Page size (default 100); larger values are clamped to the server's cap.\n    offset: Filings to skip, for paging; pass the previous result's `next_offset`.\n    cik: Optional SEC CIK (1-10 digits, string or integer) to pick one issuer when a\n        previous call returned `\"ambiguous\"`; it must be listed under `ticker`.\n\nReturns:\n    A JSON object with `status` and a one-line `message`. On `\"ok\"`: `company` {cik, name,\n    ticker, exchange}, `year`, `forms`, `limit` (the effective page size), `offset`,\n    `total_count`, `returned_count`, `next_offset` (null on the last page) and `filings`\n    (newest first; each has form, filing_date, report_date, accession_number, filing_url,\n    primary_document_url); an empty year is `\"ok\"` with `total_count` 0. Page with\n    `offset=next_offset` until null. The other statuses (`not_found`, `ambiguous` with\n    `candidates`, `invalid_input` with `field`, `upstream_error` with `retryable`) are\n    defined in the server instructions.\n\nExample:\n    `list_filings_by_year(\"AAPL\", 2025, [\"10-K\", \"10-Q\"])` lists Apple's 2025 reports.","inputs":[{"name":"cik","type":null,"required":false,"description":null},{"name":"forms","type":null,"required":false,"description":null},{"name":"limit","type":"integer","required":false,"description":null},{"name":"offset","type":"integer","required":false,"description":null},{"name":"ticker","type":"string","required":true,"description":null},{"name":"year","type":"integer","required":true,"description":null}],"outputs":[],"hasOutputSchema":true,"hasExamples":false,"tokenEstimate":548},{"name":"list_form_types","title":"EDGAR form types","description":"EDGAR form types (submission-type codes) filed in recent quarters, most common first.\n\nUse this to learn which values the `forms` argument of `get_latest_filing` and\n`list_filings_by_year` accepts: `form` is exactly the code EDGAR uses (`10-K`, `10-K/A`,\n`SCHEDULE 13G/A`, `424B2`, `NPORT-P`). The list is a snapshot bundled with the server (see\n`catalogue.generated_on` and `catalogue.quarters`); `filings` counts filings of that type\nover those quarters; `description` and `topics` come from the SEC Forms List when the form\nnumber is known, otherwise null. Amendments end with `/A`. No request is made to the SEC.\n\nArgs:\n    query: Optional case-insensitive text matched against the code and description\n        (`\"10-K\"` lists `10-K`, `10-K/A`, `10-KT`, ...; `\"/A\"` lists amendments).\n    limit: Maximum entries per page (default 100; clamped to the server's cap).\n    offset: Entries to skip, for paging; pass the previous result's `next_offset`.\n\nReturns:\n    A JSON object with `status` and a one-line `message`. On `\"ok\"`: `query`, `limit`,\n    `offset`, `total_count`, `returned_count`, `next_offset` (null on the last page),\n    `catalogue` {generated_on, quarters, sources} and `form_types` (each: form,\n    description, amendment, filings, topics). `\"invalid_input\"` carries `field`, as\n    defined in the server instructions; no other status occurs.\n\nExample:\n    `list_form_types(\"13G\")` lists the Schedule 13G submission types and their counts.","inputs":[{"name":"limit","type":"integer","required":false,"description":null},{"name":"offset","type":"integer","required":false,"description":null},{"name":"query","type":null,"required":false,"description":null}],"outputs":[],"hasOutputSchema":true,"hasExamples":false,"tokenEstimate":406}],"toolsTruncatedAtCapture":false,"diagnostics":{"capturedAt":"2026-11-05T10:08:03.000Z","track":"package","endpoint":null,"declaredUrl":null,"truncated":false,"tls":null,"dnssec":null,"auth":null,"httpsRedirect":null,"transports":[],"provenance":{"outcome":"verified","label":"Verified","reason":"verified","reasonLabel":"Verified","discovery":"attestation_endpoint","discoveryLabel":"Registry attestation endpoint","sourceRepo":null,"attestationSkipped":null,"attestationSkippedLabel":null},"installScripts":[{"hook":"build_backend","tier":"allowlisted"}],"installScriptsTotal":null,"vulnerabilities":[],"vulnerabilitiesTotal":null,"dependencies":{"nodes":31,"partial":false,"deprecated":null,"stale":null,"noRepo":1}},"mismatches":[],"changelog":{"trackingSince":"2026-11-02","recent":[{"id":"chg_01a1a848-b977-733f-86b2-3b35c211ce9b","kind":"package.version_changed","summary":"Package version (0.1.0 → 0.1.2)","materiality":"functional","direction":"neutral","scoreDelta":null,"occurredOn":"2026-11-04","url":"https://verifymcp.io/servers/sudiptohaldar-mcp-server-edgar/mcp-server-edgar#chg-chg_01a1a848-b977-733f-86b2-3b35c211ce9b"},{"id":"chg_01a1a4ac-1f55-7e91-8faf-8dce3fc0ea0c","kind":"check.verdict","summary":"Provenance (fail → pass)","materiality":"security","direction":"improvement","scoreDelta":null,"occurredOn":"2026-11-04","url":"https://verifymcp.io/servers/sudiptohaldar-mcp-server-edgar/mcp-server-edgar#chg-chg_01a1a4ac-1f55-7e91-8faf-8dce3fc0ea0c"},{"id":"chg_01a1a4ac-1f57-7773-94c8-92ebd8f7de15","kind":"provenance.repo_changed","summary":"The attested source repository moved (SudiptoHaldar/mcp_server_edgar)","materiality":"security","direction":"neutral","scoreDelta":null,"occurredOn":"2026-11-04","url":"https://verifymcp.io/servers/sudiptohaldar-mcp-server-edgar/mcp-server-edgar#chg-chg_01a1a4ac-1f57-7773-94c8-92ebd8f7de15"},{"id":"chg_01a1a4ac-1f58-7a62-825a-8f454c65e002","kind":"check.reverified","summary":"Stability (unverified → 0.07)","materiality":"functional","direction":"improvement","scoreDelta":null,"occurredOn":"2026-11-04","url":"https://verifymcp.io/servers/sudiptohaldar-mcp-server-edgar/mcp-server-edgar#chg-chg_01a1a4ac-1f58-7a62-825a-8f454c65e002"},{"id":"chg_01a1a4ac-1f59-738e-b056-4688c5b1c321","kind":"package.version_changed","summary":"Package version (0.1.0 → 0.1.1)","materiality":"functional","direction":"neutral","scoreDelta":null,"occurredOn":"2026-11-04","url":"https://verifymcp.io/servers/sudiptohaldar-mcp-server-edgar/mcp-server-edgar#chg-chg_01a1a4ac-1f59-738e-b056-4688c5b1c321"},{"id":"chg_01a1a4ac-1f59-7be7-a277-bf0e63fa0ab5","kind":"score.total_changed","summary":"Trust score (52 → 64)","materiality":"functional","direction":"improvement","scoreDelta":12,"occurredOn":"2026-11-04","url":"https://verifymcp.io/servers/sudiptohaldar-mcp-server-edgar/mcp-server-edgar#chg-chg_01a1a4ac-1f59-7be7-a277-bf0e63fa0ab5"},{"id":"chg_01a19e6b-112b-7abf-b9a5-289b7b52e8e5","kind":"score.first_scored","summary":"First indexed and scored","materiality":"functional","direction":"neutral","scoreDelta":null,"occurredOn":"2026-11-02","url":"https://verifymcp.io/servers/sudiptohaldar-mcp-server-edgar/mcp-server-edgar#chg-chg_01a19e6b-112b-7abf-b9a5-289b7b52e8e5"}],"truncated":false,"feedUrl":"https://verifymcp.io/servers/sudiptohaldar-mcp-server-edgar/mcp-server-edgar/changelog.json"},"links":{"html":"https://verifymcp.io/servers/sudiptohaldar-mcp-server-edgar/mcp-server-edgar","markdown":"https://verifymcp.io/servers/sudiptohaldar-mcp-server-edgar/mcp-server-edgar.md","changelogJson":"https://verifymcp.io/servers/sudiptohaldar-mcp-server-edgar/mcp-server-edgar/changelog.json","changelogRss":"https://verifymcp.io/servers/sudiptohaldar-mcp-server-edgar/mcp-server-edgar.xml","external":[{"label":"PyPI project","href":"https://pypi.org/project/mcp-server-edgar/"},{"label":"Socket report","href":"https://socket.dev/pypi/package/mcp-server-edgar"},{"label":"Repository","href":"https://github.com/SudiptoHaldar/mcp_server_edgar"}]}}