PtData MCP
PtData MCP provides point-in-time US equity fundamentals, index constituents, SEC filings, and earnings events for AI agents and quants. It mirrors the four main API endpoints as tools, supporting free and paid tiers with rate limits.
Endpoint and access
No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.
https://api.ptdata.io/mcpWhat you can do with it
- Retrieve point-in-time financial fundamentals like revenue and shares outstanding
- Get survivorship-free index constituents for SP500, DJIA, etc.
- Access SEC filings available on a specific date
- Fetch earnings event data including acceptance time and price reaction
Source and maintenance
Protocol and capabilities
- Server
- ptdata 3.3.2
- MCP protocol
- 2025-06-18
- Tools
- 4 advertised
- Resources
- 0 advertised
- Resource templates
- 0 advertised
- Prompts
- 0 advertised
{
"tools": {
"listChanged": true
},
"logging": {},
"prompts": {
"listChanged": true
},
"resources": {
"subscribe": false,
"listChanged": true
},
"extensions": {
"io.modelcontextprotocol/ui": {}
},
"experimental": {}
}Server-provided instructions
Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.
Tools
4 advertised
get_index_constituents — Get index constituents
S&P 500 (or other index) constituents as understood on `as_of_date` (YYYY-MM-DD), survivorship-free. Point-in-time, with lineage.
{
"type": "object",
"required": [
"index",
"as_of_date"
],
"properties": {
"index": {
"type": "string"
},
"as_of_date": {
"type": "string"
}
},
"additionalProperties": false
}{
"type": "object",
"additionalProperties": true
}{
"title": "Get index constituents",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}get_fundamentals — Get point-in-time fundamentals
Point-in-time fundamentals for `ticker` as known on `as_of_date` (YYYY-MM-DD). Returns each available metric's value for the fiscal period with source + knowledge time + lineage under `metrics`. Any requested metric with no value appears under `unavailable` with `{reason, available_alternatives, docs_url}` instead of being silently dropped — e.g. asking a bank/broker/insurer for `revenue` explains that financials report an as-reported revenue FAMILY and lists the populated members (net_interest_income, noninterest_income, total_net_revenue, premiums_earned, net_investment_income, total_revenue). Check `unavailable` before concluding a figure does not exist.
{
"type": "object",
"required": [
"ticker",
"as_of_date",
"metrics"
],
"properties": {
"ticker": {
"type": "string"
},
"metrics": {
"type": "array",
"items": {
"type": "string"
}
},
"as_of_date": {
"type": "string"
},
"fiscal_year": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null
},
"fiscal_period": {
"type": "string",
"default": "FY"
}
},
"additionalProperties": false
}{
"type": "object",
"additionalProperties": true
}{
"title": "Get point-in-time fundamentals",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}get_filing_metadata — Get filing metadata
SEC filings for `ticker` available on `as_of_date`, newest first, with amendment linkage.
{
"type": "object",
"required": [
"ticker",
"as_of_date"
],
"properties": {
"ticker": {
"type": "string"
},
"form_type": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null
},
"as_of_date": {
"type": "string"
}
},
"additionalProperties": false
}{
"type": "object",
"additionalProperties": true
}{
"title": "Get filing metadata",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}get_earnings_event — Get earnings event
Earnings event: 8-K acceptance timestamp, as-reported figures, and the derived realized price reaction. `fiscal_period` is FY or Q1..Q4.
{
"type": "object",
"required": [
"ticker",
"fiscal_year",
"fiscal_period"
],
"properties": {
"ticker": {
"type": "string"
},
"fiscal_year": {
"type": "integer"
},
"fiscal_period": {
"type": "string"
}
},
"additionalProperties": false
}{
"type": "object",
"additionalProperties": true
}{
"title": "Get earnings event",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}Prompts
0 advertised
Resources
0 advertised
30-day availability
Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.
- Successful checks
- 1 of 1 (100%)
- Average latency
- 471 ms
- 95th percentile latency
- 471 ms
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · probe · passed · 471 ms · metadata changed · 4 tool(s), 0 resource(s), 0 resource template(s), 0 prompt(s)
Connect from your client
Each snippet registers the same endpoint; pick the client you use.
Claude Code
claude mcp add --transport http ptdata-mcp https://api.ptdata.io/mcpCodex
codex mcp add ptdata-mcp --url https://api.ptdata.io/mcpCursor
{
"mcpServers": {
"ptdata-mcp": {
"url": "https://api.ptdata.io/mcp"
}
}
}Cline
{
"mcpServers": {
"ptdata-mcp": {
"type": "streamableHttp",
"url": "https://api.ptdata.io/mcp",
"disabled": false
}
}
}VS Code
{
"servers": {
"ptdata-mcp": {
"type": "http",
"url": "https://api.ptdata.io/mcp"
}
}
}Gemini CLI
gemini mcp add --transport http ptdata-mcp https://api.ptdata.io/mcpClaude Desktop
{
"mcpServers": {
"ptdata-mcp": {
"url": "https://api.ptdata.io/mcp"
}
}
}Windsurf
{
"mcpServers": {
"ptdata-mcp": {
"serverUrl": "https://api.ptdata.io/mcp"
}
}
}Let your agent find its tools
Find servers like PtData MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.
Other data and analytics servers
Do you run PtData MCP?
Prove ownership with a DNS record, a well-known file, or your Official MCP Registry entry, and your edits publish immediately. Proofs are re-checked weekly; admins can still hide or remove a listing.