MarketPing MCP server
Indian stock-market research for AI assistants: NSE/BSE corporate filings read by AI with the measured price reaction after each one, fundamentals for 5,000+ companies, page-cited reads of annual reports and earnings calls, a 108-metric screener, the IPO pipeline, FPI flows, the results calendar and the daily market briefing.
- Endpoint:
https://mcp.marketping.in/mcp— remote, Streamable HTTP, JSON-RPC 2.0, MCP protocol2025-06-18 - Auth: none for 20 of the 24 tools. No API key, no sign-up. Four account tools use OAuth 2.1.
- Writes: exactly one tool (
watchlist_add), annotatedreadOnlyHint: false. Everything else is read-only. - Advice: none. MarketPing publishes what companies filed and what the stock did next — no buy/sell calls, no price targets, no ratings, no grey-market premium.
- Product page: https://marketping.in/mcp · Operator: MarketPing, India · Contact: [email protected]
This repository is the server's public contract: the exact tool catalogue the server returns from
tools/list (tools.json), a registry manifest (server.json), and a small open-source stdio bridge
for clients that cannot speak Streamable HTTP directly. The server itself runs on MarketPing's
infrastructure; its handlers are thin read-only wrappers over the same code paths that serve
marketping.in.
Connect
Claude (claude.ai / Claude Desktop) — Settings › Connectors › Add custom connector
https://mcp.marketping.in/mcp
ChatGPT (Developer mode / Apps) — add MCP server: same URL.
Cursor / VS Code / Windsurf (mcp.json):
{
"mcpServers": {
"marketping": { "url": "https://mcp.marketping.in/mcp" }
}
}
Clients that only speak stdio — bridge to the same endpoint with
mcp-remote:
{
"mcpServers": {
"marketping": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://mcp.marketping.in/mcp"]
}
}
}
That runs the published mcp-remote bridge against the endpoint above and nothing else. It stores
no credentials of its own; mcp-remote keeps OAuth tokens in its standard location (~/.mcp-auth)
only if you link an account.
bin/marketping-mcp.js in this repo does the same thing as a named wrapper. It is not published
to npm, so npx -y @marketping/mcp will not resolve — run it from a clone, or just use the
mcp-remote form above.
The 24 tools
Exact schemas and annotations: tools.json (the live tools/list response, captured
19 Sep 2026). Every description ends with the no-advice line — that is part of the contract the
consuming model reads.
| Tool | What it returns | Auth |
|---|---|---|
search | Companies, filings, IPOs and documents matching a query (ChatGPT search contract) | none |
fetch | The full content of one search result by id | none |
resolve_company | A listed company by name/ticker/partial match, with candidates | none |
company_snapshot | Latest fundamentals and valuation for one company | none |
recent_alerts | Recent NSE/BSE filings with AI subject, category, importance, sentiment | none |
alert_reaction | The measured move after ONE filing: 5 min … 3 months | none |
search_filings | Full-text search across every document page MarketPing holds | none |
list_documents | The documents held for a company, newest first | none |
doc_contents | A document's table of contents with page ranges | none |
read_pages | The text of a page range (max 12 pages) — the only quotable source | none |
audit_report | Auditor opinions, key audit matters, CARO exceptions per fiscal year | none |
screener_fields | The 108 metrics available to run_screener | none |
run_screener | Filter the 5,000+ company universe on fundamentals | none |
ipo_pipeline | Open / upcoming / closed / listed IPOs with issue data and subscription | none |
fpi_flows | FPI/FII flows as NSDL publishes them | none |
results_calendar | Who reports results on which dates | none |
daily_briefing | The latest trading day's briefing: score, indices, sectors, flows, movers | none |
list_stacks | MarketPing's curated stacks (public daily-rebuilt company lists) | none |
run_stack | The members of one stack as of today's snapshot | none |
stack_changes | What entered/left a stack since a date | none |
list_models | The valuation models saved to the linked account | linked account |
run_model | Recompute one saved model with overrides | linked account |
watchlist_list | The companies the linked account follows | linked account |
watchlist_add | Write. Add a company to the linked account's watchlist | linked account |
Data handling
- A tool call sends only the tool's arguments (a company name, a query, a date range) to
mcp.marketping.inover HTTPS. Nothing else leaves the client; the bridge adds no telemetry. - Anonymous calls are metered by caller class: a direct end-user IP gets its own daily budget (200 tool calls per IST day, the same as the Free plan); hosted assistants (claude.ai, ChatGPT) call from vendor egress ranges and share a bounded pool. Quota exhaustion is a normal tool result with a message, never an auth error.
- Linking a MarketPing account (OAuth 2.1; discovery at
https://mcp.marketping.in/.well-known/oauth-authorization-serverand/.well-known/oauth-protected-resource) unlocks the four account tools and the account's plan budget (Investor 1,000 / Trader 2,000 calls per day). Tokens are issued by MarketPing's own authorization server and can be revoked from the account's settings. - Every result carries a
marketping.inURL so the assistant can cite the page. Document text comes only fromread_pages, page-anchored, so quotes are checkable. - No tool fetches arbitrary URLs, runs code, or reads anything outside MarketPing's database.
Verify it yourself
curl -s -X POST https://mcp.marketping.in/mcp \
-H "Content-Type: application/json" -H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"curl","version":"1"}}}'
curl -s -X POST https://mcp.marketping.in/mcp \
-H "Content-Type: application/json" -H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/list","params":{}}'
The second response is tools.json.
About MarketPing
MarketPing is an Indian stock-market research platform built around one idea: every NSE and BSE corporate filing, read by AI the moment it is published, delivered to WhatsApp within a minute, and followed by the measured price reaction — what the stock actually did 5 minutes to 3 months later. 500,000+ filings decoded, 1.9 million reactions measured, 5,000+ companies. It publishes no buy/sell calls, no price targets and no ratings.
What the same data looks like on the site (every MCP result links back to one of these):
- Announcements feed — every filing with its AI read and reaction; e.g. a contract-win filing or a buyback
- Company pages — filings, financials, concall reads and the results date; e.g. Reliance Industries, HDFC Bank
- Discover — stocks by catalyst: contract wins, QIPs, pledges released, demergers, CEO exits, splits and bonuses
- Screener — 108 fundamentals metrics with custom formulas, and Stacks, lists composed from screens, indices and watchlists
- IPO tracker — 1,150+ issues, live subscription by category, listing performance, banker league tables, deliberately no grey-market premium
- Daily market briefing and its archive, FPI flows, the results calendar
- Reaction Lab — how each category of announcement has moved stocks, in aggregate
- Glossary (60 terms, e.g. earnings call, record date vs ex-date, QIP), 33 free calculators, comparisons with Screener.in, Tickertape, Trendlyne and others
- Nexa AI — ask anything about a company and get page-cited answers
- Features · Pricing — free for 5 companies with WhatsApp delivery; Investor ₹199/month (30), Trader ₹599/month (100)
- llms.txt — the answer blocks MarketPing publishes for AI assistants
License
The bridge and the files in this repository are MIT-licensed (see LICENSE). The MarketPing
service and its data are proprietary; use of the endpoint is subject to https://marketping.in/terms.