EasyReportDataMCP / README.md
JC321's picture
Upload 8 files
98e3256 verified
|
raw
history blame
2.44 kB
metadata
title: SEC Financial Report MCP Server
emoji: 📊
colorFrom: blue
colorTo: green
sdk: docker
pinned: false
license: mit

SEC Financial Report MCP Server

A FastAPI-based MCP (Model Context Protocol) Server for querying SEC EDGAR financial data.

Features

  • Company Search: Search companies by name and get CIK information
  • Company Information: Retrieve detailed company information from SEC EDGAR
  • Filings Retrieval: Get all historical filings (10-K, 10-Q, 20-F)
  • Financial Facts: Access complete financial facts data
  • Financial Metrics: Extract key financial metrics for specific periods (annual/quarterly)
    • Total Revenue
    • Net Income
    • Earnings Per Share (EPS)
    • Operating Expenses
    • Operating Cash Flow

Supported Report Types

  • 10-K: Annual reports (US companies)
  • 10-Q: Quarterly reports (US companies)
  • 20-F: Annual reports (Foreign private issuers)

Data Standards

  • US-GAAP (US Generally Accepted Accounting Principles)
  • IFRS (International Financial Reporting Standards)

API Documentation

Once deployed, visit /docs for interactive Swagger UI documentation or /redoc for ReDoc documentation.

API Endpoints

  • POST /api/search_company - Search company by name
  • POST /api/get_company_info - Get company information
  • POST /api/get_company_filings - Get company filings
  • POST /api/get_company_facts - Get company financial facts
  • POST /api/get_financial_data - Get financial data for period
  • GET /health - Health check

Usage Example

import requests

BASE_URL = "https://YOUR_SPACE_URL.hf.space"

# Search company
response = requests.post(
    f"{BASE_URL}/api/search_company",
    json={"company_name": "NVIDIA"}
)
print(response.json())
# Output: {'cik': '0001045810', 'name': 'NVIDIA CORP', 'ticker': 'NVDA'}

# Get financial data
response = requests.post(
    f"{BASE_URL}/api/get_financial_data",
    json={"cik": "0001045810", "period": "2024"}
)
data = response.json()
print(f"Revenue: ${data['total_revenue']:,.0f}")
print(f"Net Income: ${data['net_income']:,.0f}")

Data Source

All data is retrieved from the US Securities and Exchange Commission (SEC) EDGAR system.

User Agent

This service uses the following User-Agent (required by SEC API):