Atlas / MCP servers / hub-equity / hub-equity

hub-equitySAFE

mcp/hub-equity/hub-equity-mcp

Hub-Equity's official MCP server.

Verdict
SAFE
Grade
B
Trust score
89 /100
Exposed tools
—
Transport
stdio
License
Apache-2.0
Stars
0
01

Overview

From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.

Standardized XBRL financial data for LLM agents. A Model Context Protocol (MCP) server that exposes normalized financial facts from US SEC (EDGAR) and European ESEF filings to Claude Desktop, Cursor, and any MCP-aware client.

Hub-Equity serves standardized European ESEF filings alongside US SEC data through one consistent hub-concept vocabulary, so an agent can ask for REVENUE or TOTAL_ASSETS and get a comparable, source-linked value whether the issuer files with the SEC or under ESEF.

Maturity. The public REST API behind this connector runs in production and powers Hub-Equity's own chat. The package follows Semantic Versioning; it keeps the Beta classifier while its install base is young.

Why

  • One vocabulary across two regimes. SEC us-gaap and ESEF ifrs-full concepts

are mapped to a single set of standardized hub codes, so cross-issuer and cross-taxonomy comparison works out of the box.

  • Every number is source-linked. Facts carry their filing, period, and

provenance so an agent can cite rather than guess.

  • Restatement-aware. Explicit amendments and silent restatements (a figure a

later filing reprinted differently, with no amendment filed), each change with the filing that made it.

  • Read-only and closed-world. Every tool advertises readOnlyHint=true,

idempotentHint=true, destructiveHint=false, openWorldHint=false per the MCP spec, so clients can reason about safety and caching without introspection.

  • No database credentials. The published package talks only to the public

REST API (https://api.hub-equity.com) over HTTPS. It never ships or requires a database key.

Install

pipx run hub-equity-mcp

pipx run (or uvx hub-equity-mcp) fetches and starts the server in an isolated environment; pip install hub-equity-mcp works too. Requires Python 3.12 or newer.

Authentication and access

The server ta

Read from source at commit b181151333e3OBSERVED · 2026-10-13
02

Connect

Built from this server's own package name, version and transport as found in its source — not copied from anyone's documentation, so it cannot drift against a page we do not control. Replace the environment placeholders with a token scoped to the least it needs.

claude-code (pypi)
claude mcp add hub-equity-mcp --env HUBEQUITY_API_KEY=${HUBEQUITY_API_KEY} -- uvx hub-equity-mcp==2.0.0
03

Trust audit

SAFEgrade B · trust 89/100 Nothing in the source contradicts what it says it does. Grade A is reserved for packages that have also passed the behavioural sandbox.

LayerWhat it checksResult
L0Provenance & inventoryPASS
L1Static analysis of the codePASS
L2Instruction surface (what it tells the agent)PASS
L3Class-specific surfacePASS
L4Behavioural (sandbox)SKIPPED

What the source does

Filesystem
none-observed
Network
declared (5 observation(s))
Shell
none-observed
Dependencies
pinned
Secrets in source
none-found

Findings (6)

LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
tests/test_db_rest.py:398
assert "/" not in path_segment("x/../../me/plan?")
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
tests/test_db_rest.py:399
assert "?" not in path_segment("x/../../me/plan?")
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
tests/test_get_calculation_tree_rest.py:126
assert get_calculation_tree("x/../../me/plan?") is None
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
tests/test_get_fact.py:160
assert get_fact("x/../../me/plan?", "REVENUE", 2025, "FY") is None
LOWNetwork egress · net.raw_ip · CWE-200, CWE-319
tests/test_db_rest.py:319
for url in ("http://localhost:8000", "http://127.0.0.1:8080"):
LOWInventory / provenance · mcp.no_tools_extracted · CWE-1104
server.json
Why it matters. the tool list is enumerated at runtime by tools/list, not declared in source
Fix. the page says so rather than showing an empty table

Gates applied: no_behavioural_pass.

Audited 2026-10-13 · audit v0.4.1 · source sha b181151333e3full audit observations/trust-audit/mcp-server/hub-equity__hub-equity-mcp.json · Report an issue / request a re-scan
04

Audit history

Every audit this server has had. A grade with a past is a grade somebody is still checking.

DateSourceVerdictGradeScoreChange
2026-10-13b181151333e3SAFEB89first audit
05

Questions

What is the hub-equity MCP server?

Hub-Equity's official MCP server.

Is hub-equity safe to connect to an agent?

The audit found nothing in the source that contradicts what it says it does, and graded it B (89/100). Grade A is held back for packages that have also passed a sandboxed behavioural run, which is why a clean server reads B.

What credentials does hub-equity need?

It reads HUBEQUITY_API_KEY from the environment. Give it a token scoped to the least it needs — an agent that can be talked into calling a tool can be talked into calling it with your credentials.

How does hub-equity run?

It speaks stdio, so it runs as a local process your client starts. It is published on PyPI as hub-equity-mcp.

How current is this page?

The grade is for one exact copy of the source (b181151333e3), read on 2026-10-13. The repository is watched and re-audited when it changes.

Advertisement