Synoptic
REMOTE · MCP.API.SYNOPTIC.COM
Follow live feeds from Twitter/X, Telegram, press releases, SEC filings and more; publish your own.
Available components
Last scanned (3 hours ago)
Scores higher than 98% of remote servers
Reachable. Last reached 5 Nov 2026.
Category News and Social
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →
Endpoint Security97
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- Authorisation is enforced on tool calls, advertised via RFC 9728 protected-resource metadata. Discovery is public, which costs nothing: no tool can be invoked without a token. View diagnostics → Pass
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- The HSTS (Strict-Transport-Security) header is present. View diagnostics → Pass
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
- The authorisation server supports Client ID Metadata Documents, the current MCP client-registration mechanism. View diagnostics → Pass
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability79
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 7299 tokens (~104/item across 70 items; 70 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management63
- Stability observed for 19 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage99
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 97% of tool parameters carry a description.Partial
- Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- All 7 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation.Pass
- An AI judge read all 70 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 5 Nov 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 60 to 63. That category is still filling its 30-day observation window: 18 days of observed history at the previous scan, 19 at this one. The score rises as the window fills, whether or not the server changes.
- 3 Nov 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 53 to 57. That category is still filling its 30-day observation window: 16 days of observed history at the previous scan, 17 at this one. The score rises as the window fills, whether or not the server changes.
- 31 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 43 to 47. That category is still filling its 30-day observation window: 13 days of observed history at the previous scan, 14 at this one. The score rises as the window fills, whether or not the server changes.
- 29 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 37 to 40. That category is still filling its 30-day observation window: 11 days of observed history at the previous scan, 12 at this one. The score rises as the window fills, whether or not the server changes.
- 27 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 30 to 33. That category is still filling its 30-day observation window: 9 days of observed history at the previous scan, 10 at this one. The score rises as the window fills, whether or not the server changes.
- 25 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 23 to 27. That category is still filling its 30-day observation window: 7 days of observed history at the previous scan, 8 at this one. The score rises as the window fills, whether or not the server changes.
- 23 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 17 to 20. That category is still filling its 30-day observation window: 5 days of observed history at the previous scan, 6 at this one. The score rises as the window fills, whether or not the server changes.
- 21 Oct 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 10 to 13. That category is still filling its 30-day observation window: 3 days of observed history at the previous scan, 4 at this one. The score rises as the window fills, whether or not the server changes.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 5 Nov 2026 · Probed https://mcp.api.synoptic.com/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=api.synoptic.com | CN=Amazon RSA 2048 M04,O=Amazon,C=US | 14 Sept 2026 | 30 Mar 2027 | RSA 2048 | SHA256-RSA | 86839c4e0a2bab68062f52d9c479cab |
| SANs: api.synoptic.com, *.api.synoptic.com | ||||||
| CN=Amazon RSA 2048 M04,O=Amazon,C=US (CA) | CN=Amazon Root CA 1,O=Amazon,C=US | 23 Aug 2022 | 23 Aug 2030 | RSA 2048 | SHA256-RSA | 773124f2a952e3ed18a58bdb85d1bc0ce5f27 |
| CN=Amazon Root CA 1,O=Amazon,C=US (CA) | CN=Starfield Services Root Certificate Authority - G2,O=Starfield Technologies\, Inc.,L=Scottsdale,ST=Arizona,C=US | 25 May 2015 | 31 Dec 2037 | RSA 2048 | SHA256-RSA | 67f944a2a27cdf3fac2ae2b01f908eeb9c4c6 |
Background: What to check on a remote MCP endpoint →
DNSSEC insecure
Validation of mcp.api.synoptic.com. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| com. | present | 19718 | 13 | Verified |
| synoptic.com. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication Enforced and verified
The endpoint asked for a token and published valid RFC 9728 metadata describing how to get one.
| Result | Enforced and verified |
|---|---|
| Enforced | On tool calls |
| HTTP status | 200 |
WWW-Authenticate challenge Bearer resource_metadata="https://mcp.api.synoptic.com/.well-known/oauth-protected-resource/mcp", error="invalid_token"
Bearer resource_metadata="https://mcp.api.synoptic.com/.well-known/oauth-protected-resource/mcp", error="invalid_token" | Header | Value |
|---|---|
| strict-transport-security | max-age=31536000 |
Protected resource metadata
| Document | https://mcp.api.synoptic.com/.well-known/oauth-protected-resource/mcp |
|---|---|
| Retrieved | Yes |
| Resource | https://mcp.api.synoptic.com/mcp |
| Authorisation server | https://mcp.api.synoptic.com |
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://mcp.api.synoptic.com/mcp | Verified | 200 | |
| http (plaintext) | http://mcp.api.synoptic.com/mcp | HTTPS enforced | 302 | https://mcp.api.synoptic.com:443/mcp |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
request_stream Request a stream ~81
Submit a stream request to Synoptic support on behalf of the signed-in user. Describe the source or website, desired content and use case. Returns a confirmed support ticket ID; does not create a stream or guarantee delivery. Each call submits a new request; do not automatically retry an uncertain result.
| Name | Type | Req | Description |
|---|---|---|---|
| description | string | yes | – |
| title | string | yes | – |
| Name | Type | Req | Description |
|---|---|---|---|
| ticketId | string | yes | – |
No examples provided.
request_terminal_access Request terminal access ~68
Join the waitlist for early access to the Synoptic trading terminal (beta) for the signed-in account. Sets terminalAccessRequested, which get_me reports; repeating the call changes nothing. Does not grant access, open a support ticket or place trades. Use request_feature for other product requests.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| requested | boolean | yes | – |
No examples provided.
search Find streams ~184
Search the Synoptic stream catalog by keyword. Matches stream names, labels, descriptions, categories, and IDs; does not search post text or accounts on other services. Returns active public streams without sign-in; a signed-in user also gets private streams they own, follow, subscribe to, or were invited to. Results are ordered by follower count, not relevance. Returns the ID, name, description, and Synoptic page URL of each match. Use get_stream to inspect a result before reading posts or configuring targets.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | Maximum number of streams in this page; defaults to 10 |
| offset | integer | – | Number of matching records to skip; starts at 0 and increases by limit for the next page |
| query | string | yes | One or a few keywords; every word must match a stream name, label, description, category, or ID |
| Name | Type | Req | Description |
|---|---|---|---|
| hasMore | boolean | yes | True when another page of matching streams is available; request it with offset increased by limit |
| streams | array | yes | Matching streams in this page, ordered by follower count |
| total | number | yes | Number of streams returned in this page |
No examples provided.
search_stream_posts Search stream posts ~219
Search full post text within one accessible stream, newest first. Supports ISO date bounds; custom-target restrictions apply. Continue with nextOffset; this differs from opaque history tokens. Use get_stream_posts to page by date without a text query; the search tool finds streams, not posts.
| Name | Type | Req | Description |
|---|---|---|---|
| fromDate | string | – | Earliest post creation time to include, ISO 8601 with a timezone offset. |
| limit | integer | – | Maximum number of posts in this page. |
| offset | integer | – | Matches to skip: 0 for the first page, then nextOffset from the previous page. |
| streamId | string | yes | ID of a stream whose posts you can read, such as one you own or follow. |
| text | string | yes | Words to find in post text; every word must match. Supports "exact phrase", -word to exclude, a | b for either, and prefix*. |
| toDate | string | – | Latest post creation time to include, ISO 8601 with a timezone offset; not before fromDate. |
| Name | Type | Req | Description |
|---|---|---|---|
| items | array | yes | – |
| nextOffset | integer | – | – |
No examples provided.
set_collection_column_width Set collection column width ~99
Set how wide a custom collection’s column appears in the signed-in user’s stream deck in the Synoptic app. Display only: sources, filters and posts are unchanged. Use reorder_collections to change column order and update_collection to change content.
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | Collection ID from list_collections |
| streamDeckId | string | yes | Deck ID from list_stream_decks |
| width | integer | yes | Column width in pixels |
| Name | Type | Req | Description |
|---|---|---|---|
| aiFilterId | string|null | – | Attached AI filter ID for get_ai_filter; null when none |
| columnWidth | number|null | – | Column width in pixels from set_collection_column_width; null when unset |
| filters | object | yes | – |
| highlights | – | – | – |
| id | string | yes | ID of this item for the tools that take it |
| matchingSourcesOnly | boolean | – | Whether the Synoptic app source picker shows only streams with market matching |
| name | string | yes | Display name |
No examples provided.
set_notification_channel Toggle notification channel ~109
Turn the in-app or email channel on or off for the whole signed-in account, not per device. While a channel is off, none of the account’s notifications are delivered on it. Per-event choices made with update_notification_preferences are kept and apply again once it is back on. Returns the saved settings.
| Name | Type | Req | Description |
|---|---|---|---|
| enabled | boolean | yes | true turns the channel on; false stops all delivery on it |
| notificationType | string | yes | IN_APP or EMAIL; PUSH has no account-wide switch |
| Name | Type | Req | Description |
|---|---|---|---|
| notifications | object | yes | – |
No examples provided.
set_stream_custom_targets Replace Synoptic stream targets ~249
Replace the signed-in user’s selected targets on a Synoptic custom-target stream and return the saved list. Targets, such as accounts, channels, repositories, or keywords in the format get_stream describes, choose which of the stream’s posts the user receives. Posts for removed targets stop appearing in the user’s stream reads, post searches, and WebSocket API delivery, and in open Synoptic app feeds after they reconnect; an empty list leaves none. Removed targets are then also removed from the user’s collection sources limited to specific targets, and such a source left with no targets is deleted. The stream’s owner receives all followers’ targets and may use them to decide what to collect. Requires an active direct subscription; values must match the stream’s target format and fit the subscription’s target allowance. Does not purchase access or confirm that targets are collected.
| Name | Type | Req | Description |
|---|---|---|---|
| customTargets | array | yes | Complete replacement list in the stream’s required target format. An empty array clears all selections. Use get_stream_custom_targets to inspect saved values or patch_stream_custom_targets for a narr… |
| streamId | string | yes | ID of an existing custom-target stream. Use get_stream to read its target-format instructions. |
| Name | Type | Req | Description |
|---|---|---|---|
| customTargets | array | yes | – |
No examples provided.
set_username Set username ~70
Set the signed-in user’s public Synoptic username to a saved suggestion or their verified X handle. Generate suggestions first when needed.
| Name | Type | Req | Description |
|---|---|---|---|
| username | string | yes | One of the latest generate_username_suggestions results or the verified X handle (xComHandle in get_me), matched exactly; other values are rejected |
| Name | Type | Req | Description |
|---|---|---|---|
| user | object | yes | – |
No examples provided.
streams_all Browse public streams ~134
List one page of active public streams in the Synoptic catalog without signing in. Returns stored stream metadata, optionally filtered by minimum follower count. Use nextToken to continue browsing, search to find a source or topic, and get_stream to inspect a result. Listing a stream does not follow it or grant access to its posts.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | Maximum number of streams in this page; defaults to 10 |
| minFollowers | integer | – | Include streams with at least this many followers; defaults to 0 |
| nextToken | string | – | Opaque token from the previous catalog page; keep minFollowers unchanged |
| Name | Type | Req | Description |
|---|---|---|---|
| items | array | yes | Public stream metadata in this catalog page |
| nextToken | string | – | Continuation token for the next catalog page, when available |
No examples provided.
streams_created List my streams ~275
List streams the signed-in account owns, including unpublished DRAFT streams, with optional filters and pagination. Use it to find IDs for create_stream_post, update_stream, publish_stream or delete_stream. Use streams_following for streams you follow, and search or streams_all for the public catalog.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | Maximum number of streams in this page. |
| nextToken | string | – | nextToken from the previous page; keep the other filters and sortBy unchanged. |
| pricingType | string | – | FREE: no direct price and not package-only. PAID: sold as a direct subscription. PACKAGE_ONLY: sold only in stream packages. ALL or omitted: any pricing. |
| sortBy | string | – | FOLLOWERS sorts most-followed first, CREATED_AT newest first. When omitted, ACTIVE streams first (states sort alphabetically), then featured, then most-followed. |
| streamCategory | string | – | Only streams in this topic category. Omit for any category. |
| streamState | string | – | Only streams in this lifecycle state; DRAFT streams are not yet published. Omit for any state. |
| streamType | string | – | Only PUBLIC or only PRIVATE streams. PRIVATE streams are visible only to their owner and to users who follow, subscribe to, were invited to, or have organization access to them. |
| Name | Type | Req | Description |
|---|---|---|---|
| items | array | yes | – |
| nextToken | string | – | – |
No examples provided.
streams_following List followed streams ~259
List streams the signed-in account follows, with optional metadata filters and pagination. Use streams_created for streams you own, streams_all or search for the public catalog, and get_following_users for followed authors.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | Maximum number of streams in this page. |
| nextToken | string | – | nextToken from the previous page; keep the other filters and sortBy unchanged. |
| pricingType | string | – | FREE: no direct price and not package-only. PAID: sold as a direct subscription. PACKAGE_ONLY: sold only in stream packages. ALL or omitted: any pricing. |
| sortBy | string | – | FOLLOWERS sorts most-followed first, CREATED_AT newest first. When omitted, ACTIVE streams first (states sort alphabetically), then featured, then most-followed. |
| streamCategory | string | – | Only streams in this topic category. Omit for any category. |
| streamState | string | – | Only streams in this lifecycle state; DRAFT streams are not yet published. Omit for any state. |
| streamType | string | – | Only PUBLIC or only PRIVATE streams. PRIVATE streams are visible only to their owner and to users who follow, subscribe to, were invited to, or have organization access to them. |
| Name | Type | Req | Description |
|---|---|---|---|
| items | array | yes | – |
| nextToken | string | – | – |
No examples provided.
unfollow_stream Unfollow stream ~54
Unfollow a stream for the signed-in account. Does not cancel a paid subscription or restore consumed invitations. Use unfollow_user for authors.
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | ID of a followed stream, from streams_following. |
| Name | Type | Req | Description |
|---|---|---|---|
| success | boolean | yes | – |
No examples provided.
unfollow_user Unfollow author ~68
Stop following an author as the signed-in user. Returns success=false when no follow exists or the operation fails. Use unfollow_stream to unfollow a stream.
| Name | Type | Req | Description |
|---|---|---|---|
| userId | string | yes | Synoptic user ID of the author to unfollow, such as id from get_following_users |
| Name | Type | Req | Description |
|---|---|---|---|
| success | boolean | yes | – |
No examples provided.
update_ai_filter Update AI filter ~108
Replace the name and prompt of an AI filter owned by the signed-in user. Future posts in collections using this filter use the updated prompt. This operation does not evaluate a test prompt. Use create_ai_filter for a new filter and delete_ai_filter to remove one.
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | AI filter ID from list_ai_filters |
| name | string | yes | AI filter display name |
| prompt | string | yes | Criteria an AI model checks each incoming post against in collections using this filter |
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | ID of this item for the tools that take it |
| name | string | yes | Display name |
| prompt | string | yes | Criteria an AI model checks each incoming post against in collections using this filter |
No examples provided.
update_collection Update collection ~224
Replace a custom collection’s name, source list, filters, and highlights. Read get_collection first and preserve desired settings: omitted filters, highlights and AI filter are cleared, matchingSourcesOnly becomes false, and columnWidth resets to null. In the server-managed Related news collection, sources only tune its existing streams and matchingSourcesOnly stays true. Automatically follows eligible sources, may consume invitations, and rebuilds the stored collection feed. An attached AI filter processes incoming posts and can use the account’s AI allowance.
| Name | Type | Req | Description |
|---|---|---|---|
| filters | object | – | Keyword, regex, highlight and AI filters; defaults to none |
| highlights | object | – | Highlight rules for post text in the Synoptic app |
| id | string | yes | Collection ID from list_collections |
| matchingSourcesOnly | boolean | – | Restrict the Synoptic app source picker to streams with market matching; defaults to false |
| name | string | yes | Collection display name |
| sources | array | yes | Source streams whose posts feed the collection |
| streamDeckId | string | yes | Deck ID from list_stream_decks |
| Name | Type | Req | Description |
|---|---|---|---|
| aiFilterId | string|null | – | Attached AI filter ID for get_ai_filter; null when none |
| columnWidth | number|null | – | Column width in pixels from set_collection_column_width; null when unset |
| filters | object | yes | – |
| highlights | – | – | – |
| id | string | yes | ID of this item for the tools that take it |
| matchingSourcesOnly | boolean | – | Whether the Synoptic app source picker shows only streams with market matching |
| name | string | yes | Display name |
No examples provided.
update_notification_preferences Update notification preferences ~186
Replace notification channel preferences for mentions, new followers, subscribed-author posts, and system events. Read current settings first; provide all four event groups. Empty arrays disable an event group. IN_APP and EMAIL also need their account-wide switch on; see set_notification_channel. PUSH has no switch.
| Name | Type | Req | Description |
|---|---|---|---|
| mentions | array | yes | Channels (PUSH, EMAIL, IN_APP) for mentions in posts; [] turns it off |
| newFollowers | array | yes | Channels (PUSH, EMAIL, IN_APP) for new followers; [] turns it off |
| subscribedAuthorPost | array | yes | Channels (PUSH, EMAIL, IN_APP) for new discussion posts in streams the user owns; [] turns it off |
| system | array | yes | Channels (PUSH, EMAIL, IN_APP) for system notices, such as subscription, export and access updates; [] turns it off |
| Name | Type | Req | Description |
|---|---|---|---|
| notifications | object | yes | – |
No examples provided.
update_profile Update profile ~183
Update the signed-in user’s public Synoptic profile: display name, biography, avatar, or background image. Changes are visible to other users. Omitted fields stay unchanged. Media must already be uploaded to Synoptic. Use set_username for the username, or remove_x_handle to unlink X.
| Name | Type | Req | Description |
|---|---|---|---|
| avatar | object | – | Profile image: the media object (bucket, key, region, type) of an image already uploaded in the Synoptic app, such as avatar from get_me; MCP cannot upload |
| backgroundImage | object | – | Profile background image: the media object (bucket, key, region, type) of an image already uploaded in the Synoptic app, such as backgroundImage from get_me; MCP cannot upload |
| bio | string | – | Biography text shown on the profile |
| fullName | string | – | Display name shown on the profile |
| Name | Type | Req | Description |
|---|---|---|---|
| user | object | yes | – |
No examples provided.
update_stream Update stream details ~150
Update owned stream metadata. Omitted fields retain current values. A supplied description replaces its formatting with plain text. Does not change visibility, pricing, or custom-target configuration.
| Name | Type | Req | Description |
|---|---|---|---|
| apiAccessEnabled | boolean | – | Whether external API consumers can subscribe to this stream; omit to keep. |
| description | string | – | New plain-text description; omit to keep the current text and formatting. |
| id | string | yes | ID of a stream you own, from streams_created. |
| label | string | – | New short tag; an empty string clears it, omit to keep. |
| name | string | – | New stream name; omit to keep. |
| streamCategory | string | – | New topic category; omit to keep. |
| Name | Type | Req | Description |
|---|---|---|---|
| stream | object | yes | – |
No examples provided.
update_stream_deck Rename stream deck ~76
Rename an existing stream deck owned by the signed-in user; nothing else changes. Use reorder_stream_decks to move it or delete_stream_deck to remove it.
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | Deck ID from list_stream_decks |
| name | string | yes | New deck display name; trimmed, and need not be unique |
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | ID of this item for the tools that take it |
| name | string | yes | Display name |
No examples provided.
update_terminal_tab Update terminal tab ~97
Rename a terminal tab or replace its entire saved layout configuration. Omitted fields retain their previous values. Read list_terminal_tabs before replacing a layout. Does not place trades.
| Name | Type | Req | Description |
|---|---|---|---|
| configuration | string | – | Layout JSON object serialized as a string, such as a configuration from list_terminal_tabs |
| id | string | yes | Tab ID from list_terminal_tabs |
| name | string | – | New tab display name; omit to keep the current one |
| Name | Type | Req | Description |
|---|---|---|---|
| configuration | string|null | yes | Saved layout as a JSON string, ready to pass to create_terminal_tab; null when none is saved |
| id | string | yes | ID of this item for the tools that take it |
| name | string | yes | Display name |
No examples provided.
How do I install the Synoptic MCP server?
Synoptic is a hosted endpoint at https://mcp.api.synoptic.com/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
remote · mcp.api.synoptic.com
claude mcp add --transport http com-synoptic-synoptic 'https://mcp.api.synoptic.com/mcp'
What is the Synoptic MCP server?
Synoptic is an MCP server listed in the public MCP registry as com.synoptic/synoptic. Follow live feeds from Twitter/X, Telegram, press releases, SEC filings and more; publish your own. This page covers its hosted endpoint (https://mcp.api.synoptic.com/mcp).
Is the Synoptic MCP server safe to use?
Synoptic scores 90 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the Synoptic MCP server expose?
Synoptic exposes 70 tools: get_stream_posts, streams_all, search, get_stream, fetch, and 65 more. Their descriptions and schemas cost roughly 7,299 tokens of context every time the server is loaded.
Does the Synoptic MCP server require authentication?
Yes. Synoptic asked us for credentials when we connected, so you will need to authorise it in your MCP client before it can do anything.
Is the Synoptic MCP server still maintained?
Synoptic is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.