FocusPulse
Server Details
India and US news stories linked to listed companies, commodities and indices, with sources.
- Status
- Healthy
- Uptime
- 95.9% over 20 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 4 tools
get_instrument_stories, search_stories, get_story, and list_instruments each have a clearly stated distinct role, and the descriptions explicitly differentiate the instrument-linked lookup from the word-matching search. There is slight conceptual overlap since three tools return stories, but the boundary between instrument-linked, keyword, and by-id access is made clear.
All four names follow a consistent snake_case verb_noun pattern (get_instrument_stories, get_story, list_instruments, search_stories). The verb vocabulary (get/list/search) is predictable and readable.
Four tools is a tight but reasonable surface for a news-plus-instruments domain, covering discovery, search, instrument lookup, and story detail. It is slightly on the lean side, with no obvious redundant or trivial tool present.
The set covers the core lifecycle: discovering covered instruments, searching stories, fetching stories by instrument, and drilling into a single story with sources and related items. Minor gaps exist (no publication filter, topic/trend view, or pagination on the instrument endpoint), but the primary workflows are covered.
Available Tools
4 toolsget_instrument_storiesGet stories for one instrumentARead-onlyIdempotentInspect
News stories linked to one instrument, newest first, for one country (IN or US). The instrument can be a listed company by name or ticker ('Reliance', 'HDFCBANK'), a commodity ('crude oil', 'gold'), an index ('Nifty'), the rupee, or a central bank's policy rate ('repo rate'). Unlike search_stories, which matches words, this returns the stories linked to that instrument. A name FocusPulse does not track returns UNKNOWN_INSTRUMENT — use list_instruments to see what is covered. Stories are kept 48 hours. Information only — never investment advice.
| Name | Required | Description | Default |
|---|---|---|---|
| hours | No | Lookback window in hours, default 48, max 48. | |
| limit | No | Stories per page, default 5, max 10. | |
| cursor | No | next_cursor from the previous page of the same request. Omit for the first page. | |
| country | Yes | Market the story affects: 'IN' (India) or 'US'. | |
| instrument | Yes | One company (name or NSE/US ticker), commodity, index, 'rupee' or 'repo rate'. |
Output Schema
| Name | Required | Description |
|---|---|---|
| code | Yes | |
| total | Yes | |
| country | Yes | |
| stories | Yes | |
| instruments | Yes | |
| next_cursor | Yes | |
| window_hours | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover readOnly/idempotent/non-destructive/openWorld=false. The description adds genuinely new operational context: retention is limited to 48 hours, unknown instruments return UNKNOWN_INSTRUMENT, and the accepted instrument categories. It omits return format and pagination, but those are covered by the output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the core behavior, then differentiation, then error handling and constraints. Every sentence carries information, though the closing compliance line ('Information only — never investment advice') is boilerplate that lengthens the block slightly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers what the tool returns, the 48-hour retention bound, the untracked-instrument failure path with a recovery tool, and the accepted instrument vocabulary. With an output schema present, return-value detail is rightly delegated, so nothing an agent needs is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3, but the description goes further by enumerating concrete valid inputs ('Reliance', 'HDFCBANK', 'crude oil', 'gold', 'Nifty', 'rupee', 'repo rate') that clarify ambiguous categories like commodity vs index. It does not address hours/limit/cursor, which the schema handles.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('News stories linked to one instrument') plus ordering ('newest first') and scope ('for one country'). It also explicitly distinguishes itself from search_stories: word-matching vs instrument-linked. An agent can pick it without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Names the alternative (search_stories) and the exact condition that separates them ('matches words' vs 'linked to that instrument'), and routes to list_instruments when the instrument is untracked. It also states the UNKNOWN_INSTRUMENT failure mode, so the agent knows what happens before it calls.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_storyGet one storyARead-onlyIdempotentInspect
One story by its id, as returned by search_stories or get_instrument_stories: the headline, a summary, what it reports about the instruments it is linked to, the publications that reported it (up to 10, with links) and earlier stories on the same instruments. Returns NOT_FOUND for an unknown id or a story older than 48 hours. Information only — never investment advice.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The story's id, from a previous result. |
Output Schema
| Name | Required | Description |
|---|---|---|
| code | Yes | |
| story | Yes | |
| earlier | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/idempotent/non-destructive, so the bar is lower, yet the description adds real behavioral context: a 48-hour retention window that causes NOT_FOUND, and a compliance caveat ('Information only — never investment advice'). It does not mention pagination or truncation beyond the 'up to 10' publications cap, which is a minor gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Purpose and provenance are front-loaded in the opening clause, followed by the payload contents, the error case, and the disclaimer. Dense but every clause carries information; the payload enumeration is the only part that slightly overlaps the output schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, the return shape needn't be explained, yet the description still covers provenance, the failure mode, the retention limit, and the compliance stance for a one-parameter read tool. Nothing an agent needs to call it correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for the single id parameter, and the schema already specifies the UUID pattern and that the value comes from a previous result. The description adds only the provenance detail (which sibling produced the id), so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
A specific verb+resource (fetch one story by id) with an explicit statement of what the payload contains: headline, summary, instrument coverage, reporting publications, and earlier related stories. It also names the sibling tools that produce the id, so an agent can distinguish it from search_stories and get_instrument_stories at a glance.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description makes the precondition clear: the id must come from search_stories or get_instrument_stories, and it states the failure condition (NOT_FOUND for an unknown or 48h-stale id). It stops short of an explicit when-to-use versus when-to-use-a-sibling statement, but the id-origin framing effectively routes the agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_instrumentsList instruments with storiesARead-onlyIdempotentInspect
The listed companies, commodities, indices, currency and central-bank policy rates that have at least one FocusPulse story right now, for one country (IN or US), with how many stories each has. Use it to see what is covered before asking for an instrument's stories with get_instrument_stories. Information only — never investment advice.
| Name | Required | Description | Default |
|---|---|---|---|
| hours | No | Lookback window in hours, default 24, max 48 — older stories are purged. | |
| country | Yes | Market: 'IN' (India) or 'US'. |
Output Schema
| Name | Required | Description |
|---|---|---|
| code | Yes | |
| total | Yes | |
| country | Yes | |
| instruments | Yes | |
| window_hours | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, openWorldHint=false and destructiveHint=false, so the safety profile is covered. The description adds genuine context beyond that: results are limited to instruments with at least one live story, freshness is time-bounded, and it carries an 'Information only — never investment advice' disclaimer. It does not discuss result volume or pagination, which keeps it short of a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences: scope, routing to the sibling tool, and the disclaimer. The scope statement is front-loaded and no sentence is redundant.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return-value detail is not required here, and the description covers scope, country, freshness and safety posture. The only thin spot is that the temporal window parameter is only implied by 'right now' rather than tied to the hours argument, which the schema handles but the description could reinforce.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both parameters are already documented in the schema — including the enum values and the hours lookback with its 48h cap and purge rationale. The description mirrors the country constraint and implies recency ('right now') but adds no syntax or behavior beyond the schema. Baseline 3 is correct.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Names the exact resource set (listed companies, commodities, indices, currency, central-bank policy rates) and the precise filter (at least one FocusPulse story right now, one country) plus the payload (story count per instrument). This is clearly distinguishable from get_instrument_stories and search_stories without opening any schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states the use case — 'see what is covered before asking for an instrument's stories' — and names the follow-up sibling get_instrument_stories. The when-to-use condition is stated rather than left to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_storiesSearch market-linked news storiesARead-onlyIdempotentInspect
News stories from the last 48 hours for one country (IN or US) that are linked to a listed company, commodity, index or the rupee. Each story says what it reports about those instruments and names up to three sources. Information only — never investment advice. Without a query it returns the most relevant stories; with one, the stories that mention the query's words. Results are paged with a cursor.
| Name | Required | Description | Default |
|---|---|---|---|
| hours | No | Lookback window in hours, default 24, max 48 — older stories are purged. | |
| limit | No | Stories per page, default 5, max 10. | |
| query | No | Words to look for, e.g. a company, commodity or topic: 'crude oil', 'Reliance', 'RBI'. | |
| cursor | No | next_cursor from the previous page of the same search. Omit for the first page. | |
| country | Yes | Market the story affects: 'IN' (India) or 'US'. |
Output Schema
| Name | Required | Description |
|---|---|---|
| code | Yes | |
| total | Yes | |
| country | Yes | |
| stories | Yes | |
| next_cursor | Yes | |
| window_hours | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover readOnly/idempotent/non-destructive. The description adds useful context beyond them: 'Information only — never investment advice' frames the content, source count (up to three) and cursor paging disclose return shape, and the 48-hour purge window is implied. No rate limits or auth notes, but solid added value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with what the tool returns, then behavior, then paging. Every sentence carries distinct information; no padding or repetition of the title.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be explained. Given moderate complexity and full schema coverage, the description supplies everything an agent needs: scope, query behavior, and paging.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so every parameter is already documented, giving a baseline of 3. The description adds query semantics (with/without) and the 48-hour window tied to the hours param, but no syntax beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (search/list) and resource (news stories) with clear scope: last 48 hours, one country, linked to a listed company/commodity/index/rupee. An agent knows exactly what it gets without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Clearly explains the query-on/query-off behavior ('Without a query it returns the most relevant stories; with one, the stories that mention the query's words'), which tells the agent when the query param matters. No siblings exist, so there are no alternatives to route between, but there are no explicit exclusions either.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
3 tool updates
- Added
get_instrument_stories - Added
get_story - Added
list_instruments
1 tool update
- First observed
search_stories
Related MCP Connectors
Indian stocks: NSE/BSE filings read by AI with price reactions, fundamentals, IPOs and FPI flows.
- FactIQOAuthcom.factiq
Official economic statistics, company filings, earnings calls and market data, with sources cited.
Insider, Congress, 13F and federal contract filings for US stocks, each linked to its source.
What moved in Indian retail: store openings, deals, results, launches, leadership, each verified.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceReal-time Indian stock market sentiment intelligence. Provides NSE/BSE news sentiment, aggregated stock & sector signals, and technical analysis.2-
- FlicenseAqualityDmaintenanceEnables real-time and historical Indian stock market data retrieval, including prices, news, recommendations, and top gainers/losers.11-
- AlicenseNot gradedqualityDmaintenanceProvides comprehensive financial data and insights for companies listed on BSE and NSE, including real-time stock prices, historical data, market news, top gainers/losers, and stock recommendations for the Indian stock market.2ISC
- FlicenseAqualityCmaintenanceEnables analysis of Indian stocks listed on BSE/NSE through real-time quotes, fundamentals, historical data, stock discovery, market overview, and news integration.13-
Glama MCP Gateway
Add one secure layer between your agents and this server.