gaarutyunov/quartr-mcp
If you are the rightful owner of quartr-mcp and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to dayong@mcphub.com.
The Quartr MCP Server provides access to financial data and company information through the Quartr API.
Quartr MCP Server
A Model Context Protocol (MCP) server that provides access to the Quartr API for financial data and company information.
Overview
This MCP server connects to the Quartr API to provide access to:
- Public company information and profiles
- Corporate events (earnings calls, presentations, etc.)
- Financial documents (reports, transcripts, slide decks)
- Live events and audio streams
- Document summaries powered by AI
Prerequisites
- Node.js 18.0.0 or higher
- A Quartr API key (obtain from Quartr API)
Installation
Option 1: Homebrew (macOS/Linux)
Install using Homebrew:
# First, tap the repository
brew tap gaarutyunov/quartr
# Install from source (requires Node.js)
brew install quartr-mcp-server
# Or install binary version (no Node.js required)
brew install quartr-mcp-server-bin
Note: Currently formulas are in the main repository. For production, they will be moved to a separate tap repository
homebrew-quartr. See for details.
Option 2: Pre-built Binaries
Download the latest release from the releases page:
- macOS:
index-macos - Linux:
index-linux - Windows:
index-win.exe
Make the binary executable and move to your PATH:
# macOS/Linux
chmod +x index-macos
sudo mv index-macos /usr/local/bin/quartr-mcp-server
Option 3: From Source
- Clone or download this repository
- Install dependencies:
npm install - Build the project:
npm run build - Build as a single binary (optional):
npm run build:binary
Configuration
API Key Setup
Set your Quartr API key as an environment variable:
export QUARTR_API_KEY="your-api-key-here"
MCP Client Configuration
To use this server with MCP clients like Claude Desktop, you need to add it to your MCP configuration file.
Claude Desktop Configuration
Add the following to your Claude Desktop configuration file:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"quartr": {
"command": "npx",
"args": ["-y", "quartr-mcp-server"],
"env": {
"QUARTR_API_KEY": "your-api-key-here"
}
}
}
}
Using with Local Installation
If you've installed the server locally, you can configure it to run from your local installation:
{
"mcpServers": {
"quartr": {
"command": "node",
"args": ["/path/to/quartr-mcp/build/index.js"],
"env": {
"QUARTR_API_KEY": "your-api-key-here"
}
}
}
}
Using with Binary Installation
If you're using the pre-built binary:
{
"mcpServers": {
"quartr": {
"command": "/usr/local/bin/quartr-mcp-server",
"env": {
"QUARTR_API_KEY": "your-api-key-here"
}
}
}
}
Using with Homebrew Installation
If installed via Homebrew:
{
"mcpServers": {
"quartr": {
"command": "quartr-mcp-server",
"env": {
"QUARTR_API_KEY": "your-api-key-here"
}
}
}
}
Note: After updating the configuration, restart Claude Desktop for the changes to take effect.
Verifying Configuration
To verify that the MCP server is properly configured and connected:
-
Test the server directly: Run the server standalone to ensure it starts without errors:
QUARTR_API_KEY="your-api-key" npm start -
Check Claude Desktop connection: In Claude Desktop, you should see the Quartr tools available when you start a conversation. You can test by asking: "List some companies using the Quartr API" or "What Quartr tools are available?"
-
Test API connectivity: Try a simple query like:
Use the Quartr API to find information about Apple (AAPL)
If the server fails to connect, check:
- Your API key is valid and properly set
- Your internet connection allows access to
https://api.quartr.com - The server process has proper permissions to run
Usage
Running the Server
Start the MCP server:
npm start
Run the JavaScript bundle:
npm run start:binary
# or directly:
node build/index.js
Run the native executable (macOS example):
./exe/index-macos
For development with automatic rebuild:
npm run dev
Available Tools
The server provides the following MCP tools:
Companies
quartr_list_companies- List companies with filtering optionsquartr_get_company- Get detailed company information by ID
Events
quartr_list_events- List corporate events with filteringquartr_get_event- Get detailed event information by IDquartr_get_event_summary- Get AI-generated event summaryquartr_list_event_types- List available event typesquartr_get_event_type- Get event type details by ID
Documents
quartr_list_documents- List all documents with filteringquartr_get_document- Get document details by IDquartr_list_reports- List financial reportsquartr_get_report- Get report details by IDquartr_get_report_summary- Get AI-generated report summaryquartr_list_transcripts- List earnings call transcriptsquartr_get_transcript- Get transcript details by IDquartr_get_transcript_summary- Get AI-generated transcript summaryquartr_get_transcript_chapters- Get transcript chapters/sectionsquartr_list_document_types- List available document typesquartr_get_document_type- Get document type details by ID
Live Events
quartr_list_live_events- List live events with filteringquartr_get_live_event- Get live event details by ID
Example Usage
Here are some example queries you can make using this MCP server:
-
Find Apple's company information:
Use quartr_list_companies with tickers="AAPL" -
Get recent events for a company:
Use quartr_list_events with companyIds="4742" and limit=5 -
Get an AI summary of an earnings call:
Use quartr_get_event_summary with id=128301 and length="short" -
Find recent financial reports:
Use quartr_list_reports with documentGroupIds="3,4" and limit=10
Filtering and Pagination
Most list endpoints support filtering by:
- countries: ISO 3166-1 alpha-2 country codes (e.g., "US,CA")
- exchanges: Exchange symbols (e.g., "NasdaqCM,NasdaqGS,NYSE")
- tickers: Company ticker symbols (e.g., "AAPL,AMZN")
- startDate/endDate: ISO 8601 date ranges
- companyIds: Specific company IDs
- eventIds: Specific event IDs
Pagination is handled with:
- limit: Number of results (max varies by endpoint)
- cursor: Pagination cursor for next page
- direction: Sort direction ("asc" or "desc")
Document Groups
Documents are categorized into groups:
- 1: Earnings Release
- 2: Press Release
- 3: Interim Report
- 4: Annual Report
Live Event States
Live events can have the following states:
notLive- Event is not livewillBeLive- Event will go live soonlive- Event is currently liveliveFailedInterrupted- Live stream was interruptedliveFailedNoAccess- Could not access live streamliveFailedNotStarted- Live stream failed to startprocessingRecording- Recording is being processedprocessingRecordingFailed- Recording processing failedrecordingAvailable- Recording is available
Error Handling
The server includes comprehensive error handling:
- API authentication errors
- Rate limiting
- Invalid parameters
- Network connectivity issues
Errors are returned as MCP error responses with descriptive messages.
Deployment
This project supports multiple deployment options:
Standard Node.js Deployment
- Requires Node.js 18+ on the target system
- Smallest footprint with
dist/files (~few KB) - Use
npm startto run
JavaScript Bundle Deployment
- Requires Node.js 18+ on the target system
- Single file deployment with
build/index.js(~270KB) - All dependencies bundled, no
node_modulesneeded - Use
node build/index.jsto run
Native Executable Deployment
- No Node.js required on target system
- Self-contained executables (~40-53MB)
- Platform-specific binaries in
exe/directory - Just run the executable directly
Choose the deployment method that best fits your infrastructure and requirements.
Development
Project Structure
src/
├── index.ts # Main MCP server implementation
├── quartr-api.ts # Quartr API client
├── tools.ts # MCP tool definitions and schemas
└── types.ts # TypeScript type definitions
Building
Standard TypeScript build:
npm run build
Build as a single JavaScript bundle (~270KB):
npm run build:binary
Build as native executables for multiple platforms:
npm run build:exe
This creates standalone executables in the exe/ directory:
index-macos- macOS executable (~53MB)index-linux- Linux executable (~48MB)index-win.exe- Windows executable (~40MB)
The JavaScript bundle (build/index.js) requires Node.js to run but is much smaller. The native executables are self-contained and don't require Node.js installation.
Cleaning
npm run clean
API Reference
This server is based on the Quartr Public API v3. For detailed API documentation, visit: https://api.quartr.com/public/v3/openapi.json
License
MIT
Support
For issues related to this MCP server, please create an issue in the repository. For Quartr API questions, consult the official Quartr API documentation.