Sighttrue MCP
An MCP server providing measured readings on open-source dependencies, including health metrics, end-of-life dates, model prices, and provider incidents. It allows agents to check package status, compare repositories, and search for models using static, commit-tracked data without requiring authentication.
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://sighttrue.com/api/mcpWhat its tools do
31 tools, grouped by the hints the server advertises. Hints are self-declared, not verified behavior.
Not annotated (31)
check_before_installcheck_packagecheck_stacksearch_repositoriescompare_repositoriesfind_modelcheck_eolcheck_providerlist_readingswho_can_publishpackage_weight_historywithdrawn_but_installedtyposquat_checkfunding_gaptime_to_fixadvisory_severityruntime_deadlinesbase_image_checkregistry_healthprovider_incidentsprovider_transparencyprovider_terms_changedmodel_price_historymodel_withdrawnhelp_availabilityaudit_manifestdiff_sincewatch_addwatch_changesexplain_findingdomain_risk
Checks and signals
Each line is separate evidence, not a trust score.
- Passed Endpoint answered the live check ·
- Availability 1 of 1 checks passed in 30 days
What you can do with it
- Check if a specific package is healthy or has known issues
- Compare repositories to assess developer demand and stability
- Find language models with current pricing and context windows
- Check end-of-life dates for release lines
Source and maintenance
- Maintenance checked
Protocol and capabilities
- Server
- sighttrue 1.0.0
- MCP protocol negotiated in check
- 2025-06-18
- Tools
- 31 advertised
- Resources
- Not advertised
- Resource templates
- Not advertised
- Prompts
- Not advertised
{
"tools": {}
}Server-provided instructions
Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.
Tools
31 advertised
check_before_install
Call this before adding a dependency. Returns only the facts a reviewer would be annoyed to discover afterwards: whether the publisher has withdrawn the package, whether it runs scripts on the installing machine, whether its repository is archived, how many advisories are on record, whether the licence is source-available, and how long since it was actually published. Each fact carries the address of the body that published it. It does not say whether to install; it says what is on record.
{
"type": "object",
"required": [
"registry",
"name"
],
"properties": {
"name": {
"type": "string",
"description": "Package name as the registry spells it."
},
"registry": {
"type": "string"
}
},
"additionalProperties": false
}check_package
Read the current standing of one open-source package: downloads with the window they cover, OpenSSF scorecard, advisory count, licence, whether the repository is archived, and when it was last pushed to.
{
"type": "object",
"required": [
"registry",
"name"
],
"properties": {
"name": {
"type": "string",
"description": "Package name as the registry spells it."
},
"registry": {
"type": "string"
}
},
"additionalProperties": false
}check_stack
Read a whole dependency list at once and report what is archived, what carries advisories, what has a source-available licence, and what has not been pushed to in a year. Use when reviewing a package.json, requirements.txt, Cargo.toml, composer.json or Gemfile.
{
"type": "object",
"required": [
"registry",
"names"
],
"properties": {
"names": {
"type": "array",
"items": {
"type": "string"
}
},
"registry": {
"type": "string"
}
},
"additionalProperties": false
}search_repositories
Find watched repositories whose name contains a string, with their current readings. Use it to discover what is covered before calling the other tools.
{
"type": "object",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"minimum": 1
},
"query": {
"type": "string"
}
},
"additionalProperties": false
}compare_repositories
Hold two watched repositories against each other across downloads, OpenSSF scorecard, advisories, forks, stars and findings on record. Compares only; it does not pick a winner.
{
"type": "object",
"required": [
"a",
"b"
],
"properties": {
"a": {
"type": "string",
"description": "Repository as owner/name."
},
"b": {
"type": "string",
"description": "Repository as owner/name."
}
},
"additionalProperties": false
}find_model
Find language models by price and context window, from a catalogue read daily across sixty providers. Use this before choosing a model: prices move without announcement and training data is out of date on the day it ships.
{
"type": "object",
"required": [],
"properties": {
"maxPrice": {
"type": "number",
"description": "Maximum USD per million prompt tokens."
},
"provider": {
"type": "string"
},
"minContext": {
"type": "integer",
"description": "Minimum context window in tokens."
}
},
"additionalProperties": false
}check_eol
Check whether a runtime, database or framework release is still receiving security fixes, and what to move to. Covers about two dozen products read daily from endoflife.date.
{
"type": "object",
"required": [
"product"
],
"properties": {
"cycle": {
"type": "string",
"description": "Release line, e.g. 3.9 or 20. Omit for every cycle."
},
"product": {
"type": "string",
"description": "Product as endoflife.date spells it, e.g. python, nodejs, postgresql."
}
},
"additionalProperties": false
}check_provider
Recorded incidents for a hosting or API provider over a window, kept after the provider’s own status page dropped them.
{
"type": "object",
"required": [],
"properties": {
"days": {
"type": "integer",
"maximum": 730,
"minimum": 1
},
"provider": {
"type": "string",
"description": "Provider slug, e.g. cloudflare, openai, github. Omit for every provider."
}
},
"additionalProperties": false
}list_readings
List every reading this server can return, what each one measures, and which require a key. Call this first if unsure which tool answers a question.
{
"type": "object",
"required": [],
"properties": {},
"additionalProperties": false
}who_can_publish
How many accounts hold publish rights on a package, as the registry lists them. Answers who can put code on your machine, which is a different question from who writes it. Requires a key; see https://sighttrue.com/pricing.
{
"type": "object",
"required": [
"registry",
"name"
],
"properties": {
"name": {
"type": "string",
"description": "Package name as the registry spells it."
},
"registry": {
"type": "string"
}
},
"additionalProperties": false
}package_weight_history
How the published artefact size has moved over time. Returns the readings taken, not a verdict. Requires a key; see https://sighttrue.com/pricing.
{
"type": "object",
"required": [
"registry",
"name"
],
"properties": {
"name": {
"type": "string",
"description": "Package name as the registry spells it."
},
"registry": {
"type": "string"
}
},
"additionalProperties": false
}withdrawn_but_installed
Packages whose own publisher has withdrawn them and which are still being installed heavily, with the download figure and the publisher’s notice. Requires a key; see https://sighttrue.com/pricing.
{
"type": "object",
"required": [],
"properties": {
"limit": {
"type": "integer"
}
},
"additionalProperties": false
}typosquat_check
Whether a name is one edit away from a more widely installed package. States that both names exist; which one was meant is the caller’s call. Requires a key; see https://sighttrue.com/pricing.
{
"type": "object",
"required": [
"registry",
"name"
],
"properties": {
"name": {
"type": "string",
"description": "Package name as the registry spells it."
},
"registry": {
"type": "string"
}
},
"additionalProperties": false
}funding_gap
Packages that ask for funding, beside how heavily they are installed and how many people write them. Requires a key; see https://sighttrue.com/pricing.
{
"type": "object",
"required": [],
"properties": {
"limit": {
"type": "integer"
}
},
"additionalProperties": false
}time_to_fix
Days between an advisory being published and a release appearing that postdates it, per package and as a distribution. Requires a key; see https://sighttrue.com/pricing.
{
"type": "object",
"required": [
"registry",
"name"
],
"properties": {
"name": {
"type": "string",
"description": "Package name as the registry spells it."
},
"registry": {
"type": "string"
}
},
"additionalProperties": false
}advisory_severity
Advisories broken down by severity rather than counted, with identifiers and dates. Requires a key; see https://sighttrue.com/pricing.
{
"type": "object",
"required": [
"registry",
"name"
],
"properties": {
"name": {
"type": "string",
"description": "Package name as the registry spells it."
},
"registry": {
"type": "string"
}
},
"additionalProperties": false
}runtime_deadlines
Support end dates for the runtimes a dependency set requires, including any already past. Requires a key; see https://sighttrue.com/pricing.
{
"type": "object",
"required": [
"names"
],
"properties": {
"names": {
"type": "array",
"items": {
"type": "string"
}
}
},
"additionalProperties": false
}base_image_check
For a container base image: its size, when it was last rebuilt, and whether the OS underneath it is still supported. Requires a key; see https://sighttrue.com/pricing.
{
"type": "object",
"required": [
"image"
],
"properties": {
"image": {
"type": "string"
}
},
"additionalProperties": false
}registry_health
Recorded outages of the package registries themselves, kept after their status pages drop them. Requires a key; see https://sighttrue.com/pricing.
{
"type": "object",
"required": [],
"properties": {
"registry": {
"type": "string"
}
},
"additionalProperties": false
}provider_incidents
A provider’s recorded incidents, grouped by the component that failed, over the whole archive rather than the window its status page shows. Requires a key; see https://sighttrue.com/pricing.
{
"type": "object",
"required": [
"provider"
],
"properties": {
"provider": {
"type": "string"
}
},
"additionalProperties": false
}provider_transparency
How long a provider takes to acknowledge an incident: the interval between an incident starting and its first public update. Requires a key; see https://sighttrue.com/pricing.
{
"type": "object",
"required": [],
"properties": {
"provider": {
"type": "string"
}
},
"additionalProperties": false
}provider_terms_changed
When a provider last changed its terms or pricing page, from a stored fingerprint of the page. Requires a key; see https://sighttrue.com/pricing.
{
"type": "object",
"required": [],
"properties": {
"provider": {
"type": "string"
}
},
"additionalProperties": false
}model_price_history
Every recorded price for a model, with the date each was read. Requires a key; see https://sighttrue.com/pricing.
{
"type": "object",
"required": [
"model"
],
"properties": {
"model": {
"type": "string"
}
},
"additionalProperties": false
}model_withdrawn
Models that were in the catalogue and no longer are, with the date last seen. Requires a key; see https://sighttrue.com/pricing.
{
"type": "object",
"required": [],
"properties": {},
"additionalProperties": false
}help_availability
For a technology tag: questions asked against questions answered, over time. Requires a key; see https://sighttrue.com/pricing.
{
"type": "object",
"required": [
"tag"
],
"properties": {
"tag": {
"type": "string"
}
},
"additionalProperties": false
}audit_manifest
Read a whole manifest and return every reading on record for it, ordered by how much a reviewer would want to know. One call instead of one per dependency. Requires a key; see https://sighttrue.com/pricing.
{
"type": "object",
"required": [
"manifest"
],
"properties": {
"filename": {
"type": "string"
},
"manifest": {
"type": "string"
}
},
"additionalProperties": false
}diff_since
What changed for a set of packages since a given date, read from the daily archive. Requires a key; see https://sighttrue.com/pricing.
{
"type": "object",
"required": [
"names",
"since"
],
"properties": {
"names": {
"type": "array",
"items": {
"type": "string"
}
},
"since": {
"type": "string",
"description": "YYYY-MM-DD."
}
},
"additionalProperties": false
}watch_add
Add a package to the caller’s own private watchlist, so later readings are about their stack rather than the public one. The list is private to the key that created it. Requires a key; see https://sighttrue.com/pricing.
{
"type": "object",
"required": [
"registry",
"name"
],
"properties": {
"name": {
"type": "string",
"description": "Package name as the registry spells it."
},
"registry": {
"type": "string"
}
},
"additionalProperties": false
}watch_changes
Everything that has changed across the caller’s private watchlist since a given date: withdrawals, licence changes, advisories, archived repositories and runtimes going out of support. Requires a key; see https://sighttrue.com/pricing.
{
"type": "object",
"required": [],
"properties": {
"since": {
"type": "string"
}
},
"additionalProperties": false
}explain_finding
Given a finding id, return what was measured, when, by whom, and the address it can be checked at. For an agent quoting a figure into a review. Requires a key; see https://sighttrue.com/pricing.
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string"
}
},
"additionalProperties": false
}domain_risk
Whether the domains a package points at — homepage, funding, documentation — still resolve to a registered owner. Requires a key; see https://sighttrue.com/pricing.
{
"type": "object",
"required": [
"registry",
"name"
],
"properties": {
"name": {
"type": "string",
"description": "Package name as the registry spells it."
},
"registry": {
"type": "string"
}
},
"additionalProperties": false
}Prompts
Not advertised
Resources
Not 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
- 470 ms
- 95th percentile latency
- 470 ms
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · probe · passed · 470 ms · metadata changed · 31 tool(s)
Connect from your client
Each snippet registers the same endpoint; pick the client you use.
Claude Code
claude mcp add --transport http sighttrue-mcp https://sighttrue.com/api/mcpCodex
codex mcp add sighttrue-mcp --url https://sighttrue.com/api/mcpCursor
{
"mcpServers": {
"sighttrue-mcp": {
"url": "https://sighttrue.com/api/mcp"
}
}
}Cline
{
"mcpServers": {
"sighttrue-mcp": {
"type": "streamableHttp",
"url": "https://sighttrue.com/api/mcp",
"disabled": false
}
}
}VS Code
{
"servers": {
"sighttrue-mcp": {
"type": "http",
"url": "https://sighttrue.com/api/mcp"
}
}
}Gemini CLI
gemini mcp add --transport http sighttrue-mcp https://sighttrue.com/api/mcpClaude Desktop
https://sighttrue.com/api/mcpWindsurf
{
"mcpServers": {
"sighttrue-mcp": {
"serverUrl": "https://sighttrue.com/api/mcp"
}
}
}Let your agent find its tools
Find servers like Sighttrue MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.