Search / com.nicheangle/niche
Niche: Your niche, followed for you
R0· no sign-inRead niche briefings, research news, and explore sourced story angles with your assistant.
v2.0.0 · active · repository · website · descriptor JSON · versions
Search / com.nicheangle/niche
R0· no sign-inRead niche briefings, research news, and explore sourced story angles with your assistant.
v2.0.0 · active · repository · website · descriptor JSON · versions
{
"mcpServers": {
"niche": {
"type": "http",
"url": "https://api.nicheangle.com/mcp"
}
}
}claude mcp add --transport http niche https://api.nicheangle.com/mcp[mcp_servers.niche]
url = "https://api.nicheangle.com/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"niche": {
"type": "remote",
"url": "https://api.nicheangle.com/mcp",
"enabled": true
}
}
}{
"mcpServers": {
"niche": {
"type": "http",
"url": "https://api.nicheangle.com/mcp"
}
},
"deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=niche&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vYXBpLm5pY2hlYW5nbGUuY29tL21jcCJ9"
}{
"servers": {
"niche": {
"type": "http",
"url": "https://api.nicheangle.com/mcp"
}
}
}{
"mcpServers": {
"niche": {
"httpUrl": "https://api.nicheangle.com/mcp"
}
}
}extensions:
"niche":
enabled: true
name: "niche"
type: streamable_http
uri: "https://api.nicheangle.com/mcp"
timeout: 300
protocol.modernnewest supported version is 2025-03-26; 2026-07-28 not supported, older versions are deprecated until 2027-07-28protocol.statelessonly applies to 2026-07-28 serversprotocol.transportstreamable HTTPprotocol.list_ttlonly applies to 2026-07-28 serversauth.prm, auth.as_metadata, auth.cimdno remote uses OAuthauth.secret_in_urlno templated URLtools.descriptionsevery tool has a descriptiontools.description_lengthdescriptions are concisetools.schemasevery tool has an object input schematools.annotations8 of 8 tools declare readOnlyHint or destructiveHinttools.directory_hintsno tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: niche_whoami (idempotentHint); niche_intelligence_query (idempotentHint); niche_session_state (idempotentHint); …tools.token_costabout 2,164 tokens to load every tooltools.api_dumptools are not a one-to-one API dumpstability.changes35 tool changes in 30 daysstability.rug_pull9 tools kept their name but changed most of their description in 30 days; review before trusting themdeps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI packageniche_feed_readchangedtitle, description, annotationsmeaning changedRead a niche's daily edition: the stories independent sources back up, each with its independent-source count (after syndicated copies are merged), the outlets and URLs, a one-line why-it-matters, new-vs-continuing status, plus what moved, where the sources disagree and what to watch. Editions are built once a day per niche and shared, so this read is instant and free. Pass a niche slug from the public directory (for example financial-advisors, defense-tech) and optionally a date (YYYY-MM-DD) for a past edition. A quiet day returns status=quiet with no stories. Returns 'no_edition' when the niche exists but hasn't been built yet, and 'unknown_niche' otherwise.
Read the latest or a dated briefing for a niche: stories, reporting dates, source links, why each story matters, and new or continuing status. Use a slug from https://nicheangle.com/n or a custom niche's URL, such as founders or ai-leaders. Assistant access requires Pro. This reads an existing briefing without starting a scan. A quiet briefing has status=quiet; no_edition means no briefing is available; unknown_niche means the slug was not found.
niche_whoamichangeddescription, input schemaOrient in one read-only call: your plan (Free or Pro), the tools this server serves, and the endpoint. Call it first if you are unsure what is available.
Orient in one read-only call: your plan (Free or Pro), the tools this server serves, and the endpoint. Assistant access requires Pro. Call it first if you are unsure what is available.
niche_session_cancelchangedinput schemaniche_list_sessionschangedinput schemaniche_angle_proposechangedinput schemaniche_session_statechangeddescription, input schemaRead the current state of a scan: status, the ranked stories with their sources and independent-source counts, and any angles already proposed. Poll this after niche_signal_scan or niche_intelligence_query until the slate is ready.
Read the current state of a scan: status, the ranked stories with their sources and source information, and any angles already proposed. Poll this after niche_signal_scan or niche_intelligence_query until the slate is ready.
niche_intelligence_querychangeddescription, input schemameaning changedAsk an analyst-shaped question over a fresh scan of a niche (Pro): 'the biggest developments this week', 'what is emerging', 'where money is moving'. Returns the sourced slate plus a short grounded synthesis as one answer. Every claim carries its sources.
Ask an analyst-shaped question over a fresh scan of a niche (Pro): 'the biggest developments this week', 'what is emerging', 'where money is moving'. Returns the sourced slate plus a short synthesis when requested. Returns a session_id; poll niche_session_state until cp1_awaiting_story. For synthesis, continue polling with wait_until=synthesis and wait=30 until it arrives or a shortfall is reported.
niche_signal_scanchangeddescription, input schemaScan a niche you describe, right now (Pro). Returns a ranked, sourced slate of the stories people in that field are talking about, each with its independent-source count after syndicated copies are merged, the outlets, and why it matters. For a ready-made briefing use niche_feed_read instead; it is free and instant. Poll niche_session_state with the returned session_id until status is cp1_awaiting_story; the slate is in `stories`.
Scan a niche you describe, right now (Pro). Returns a ranked, sourced slate of the stories people in that field are talking about, with source links, the outlets, and why it matters. For a ready-made briefing use niche_feed_read instead. Assistant access requires Pro. Poll niche_session_state with the returned session_id until status is cp1_awaiting_story; the slate is in `stories`.
niche_feed_readchangeddescriptionRead a niche's daily edition: the stories independent sources back up, each with its independent-source count (after syndicated copies are merged), the outlets and URLs, a one-line why-it-matters, new-vs-continuing status, plus what moved, where the discourse splits and what to watch. Editions are built once a day per niche and shared, so this read is instant and free. Pass a niche slug from the public directory (for example financial-advisors, defense-tech) and optionally a date (YYYY-MM-DD) for a past edition. A quiet day returns status=quiet with no stories. Returns 'no_edition' when the niche exists but hasn't been built yet, and 'unknown_niche' otherwise.
Read a niche's daily edition: the stories independent sources back up, each with its independent-source count (after syndicated copies are merged), the outlets and URLs, a one-line why-it-matters, new-vs-continuing status, plus what moved, where the sources disagree and what to watch. Editions are built once a day per niche and shared, so this read is instant and free. Pass a niche slug from the public directory (for example financial-advisors, defense-tech) and optionally a date (YYYY-MM-DD) for a past edition. A quiet day returns status=quiet with no stories. Returns 'no_edition' when the niche exists but hasn't been built yet, and 'unknown_niche' otherwise.
niche_attach_imageremovedUpload or attach a user-supplied or externally-designed image (bring-your-own asset) to a post: the creator's own visual (a product shot, their actual work, a card designed elsewhere) instead of an AI-generated image (niche_render_image_card photo, paid) or a flat brand card. Free, with no image-generation spend. For a visual-product maker the real piece is the sale. Input modes, in order of preference: (1) `upload_ref`, the FAST path for an agent that built the asset itself and can run a shell: POST the raw file to `/asset/upload` (multipart/form-data, your bearer token) to get back an `upload_ref`, then pass it here. The bytes travel over HTTP and never round-trip through the model as base64, so it's effectively instant for a real graphic. (2) `image_url`, a fetchable https URL (the server fetches + stores it; for an asset that already lives on the web). (3) `image: {mime_type, data_base64}`, inline base64, fine for small images only. (4) `image_chunk`, the no-shell FALLBACK: upload bounded chunks of base64. It still re-types the bytes through the model (slow), so use it only when the agent has no shell to curl with. Split the file's bytes into ~32-48KB pieces, base64 EACH independently, send in order, each with a `sha256` of that piece's raw bytes so the server catches a mis-transcribed chunk and has you resend just that one (this is what makes the slow path reliable). Omit upload_id on the first chunk; the response returns one to pass on the rest. Set `final:true` on the last chunk (optionally with `total_sha256`); that call assembles, validates, and attaches. The cell's output must already exist (use niche_add_output first if needed). Sets it as the post's image; publishes with the caption. A dimension_note warns if the image's aspect won't fit the cell. Undo-able (the prior image is kept in history).
Showing the latest 10. Full history: list_changes · trend: quality JSON.
Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.
+repository +dns-namespace +website +reachable +uptime-100% +updated-3d-ago
Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.
| remote | auth | reachable | uptime 30d | p50 | protocol | last ok |
|---|---|---|---|---|---|---|
https://api.nicheangle.com/mcp streamable-http | none | yes | 100% | 207 ms | 2025-03-26 | 2026-10-20 |
niche_angle_propose | Angles on one story (Pro): up to a few distinct stances a reader could take, each with a hook, the take, and the sources that support it. Pass the session_id from a scan and a story_id from its slate. Nothing is written for you; the angles are starting points. |
niche_feed_readread-only | Read the latest or a dated briefing for a niche: stories, reporting dates, source links, why each story matters, and new or continuing status. Use a slug from https://nicheangle.com/n or a custom niche's URL, such as founders or ai-leaders. Assistant access requires Pro. This reads an existing briefing without starting a scan. A quiet briefing has status=quiet; no_edition means no briefing is available; unknown_niche means the slug was not found. |
niche_intelligence_query | Ask an analyst-shaped question over a fresh scan of a niche (Pro): 'the biggest developments this week', 'what is emerging', 'where money is moving'. Returns the sourced slate plus a short synthesis when requested. Returns a session_id; poll niche_session_state until cp1_awaiting_story. For synthesis, continue polling with wait_until=synthesis and wait=30 until it arrives or a shortfall is reported. |
niche_list_sessionsread-only | List your recent scans: id, the niche you described, status and timestamps. Use it to find a session_id you no longer have. |
niche_session_canceldestructive | Cancel a scan that is still running. |
niche_session_stateread-only | Read the current state of a scan: status, the ranked stories with their sources and source information, and any angles already proposed. Poll this after niche_signal_scan or niche_intelligence_query until the slate is ready. |
niche_signal_scan | Scan a niche you describe, right now (Pro). Returns a ranked, sourced slate of the stories people in that field are talking about, with source links, the outlets, and why it matters. For a ready-made briefing use niche_feed_read instead. Assistant access requires Pro. Poll niche_session_state with the returned session_id until status is cp1_awaiting_story; the slate is in `stories`. |
niche_whoamiread-only | Orient in one read-only call: your plan (Free or Pro), the tools this server serves, and the endpoint. Assistant access requires Pro. Call it first if you are unsure what is available. |
Schemas: list_tools.
{
"name": "com.nicheangle/niche",
"icons": [
{
"src": "https://raw.githubusercontent.com/sailquery/niche-mcp/master/icon.png",
"sizes": [
"1024x1024"
],
"mimeType": "image/png"
}
],
"title": "Niche: Your niche, followed for you",
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"remotes": [
{
"url": "https://api.nicheangle.com/mcp",
"type": "streamable-http"
}
],
"version": "2.0.0",
"repository": {
"url": "https://github.com/sailquery/niche-mcp",
"source": "github"
},
"websiteUrl": "https://nicheangle.com",
"description": "Read niche briefings, research news, and explore sourced story angles with your assistant."
}