@starfetch-js/mcp
Advanced tools
+18
-6
| { | ||
| "name": "@starfetch-js/mcp", | ||
| "version": "0.2.0", | ||
| "description": "Model Context Protocol server for Starfetch.", | ||
| "version": "0.2.1", | ||
| "description": "MCP server for querying Gaia, SIMBAD, VizieR, NASA Exoplanet Archive, IRSA, and other public astronomy catalogs.", | ||
| "type": "module", | ||
@@ -9,6 +9,18 @@ "license": "MIT", | ||
| "astronomy", | ||
| "gaia", | ||
| "simbad", | ||
| "vizier", | ||
| "exoplanets", | ||
| "nasa-exoplanet-archive", | ||
| "irsa", | ||
| "star-catalog", | ||
| "virtual-observatory", | ||
| "tap", | ||
| "adql", | ||
| "mcp", | ||
| "model-context-protocol" | ||
| "model-context-protocol", | ||
| "ai-agent", | ||
| "claude", | ||
| "cursor", | ||
| "codex" | ||
| ], | ||
@@ -48,4 +60,4 @@ "homepage": "https://github.com/starfetch-js/starfetch#readme", | ||
| "@modelcontextprotocol/sdk": "1.29.0", | ||
| "@starfetch-js/core": "0.2.0", | ||
| "@starfetch-js/skill": "0.2.0", | ||
| "@starfetch-js/core": "0.2.1", | ||
| "@starfetch-js/skill": "0.2.1", | ||
| "zod": "4.4.3" | ||
@@ -62,3 +74,3 @@ }, | ||
| }, | ||
| "gitHead": "d77aa260e196f3a1aebb23221f969ec0fa5baefc" | ||
| "gitHead": "5edb8bd748ade8549c9336576ca2da3ce60654dc" | ||
| } |
+56
-12
| # @starfetch-js/mcp | ||
| Model Context Protocol stdio server for Starfetch TAP tools. | ||
| Query Gaia, SIMBAD, VizieR, the NASA Exoplanet Archive, IRSA, and other public | ||
| astronomy catalogs from an MCP-enabled agent. Starfetch inspects each live TAP | ||
| service's schema before querying it, keeps exploratory queries bounded, and | ||
| returns the exact ADQL needed to reproduce a result. | ||
| ## Install for an agent | ||
| Starfetch requires Node.js 22 or newer. Register this stdio server with the | ||
| client that will use it, then restart or reload that client. | ||
| ### Codex | ||
| ```sh | ||
| npx -y @starfetch-js/mcp | ||
| codex mcp add starfetch -- npx -y @starfetch-js/mcp | ||
| codex mcp list | ||
| ``` | ||
| Example MCP client configuration: | ||
| ### Claude Code | ||
| ```sh | ||
| claude mcp add --scope user --transport stdio starfetch -- npx -y @starfetch-js/mcp | ||
| claude mcp get starfetch | ||
| ``` | ||
| ### Cursor | ||
| Add this to `~/.cursor/mcp.json` for global use or `.cursor/mcp.json` for one | ||
| project: | ||
| ```json | ||
@@ -22,11 +43,34 @@ { | ||
| The server exposes TAP presets, registry search, metadata inspection, bounded | ||
| sync queries, and explicit async job tools. It also exposes the | ||
| `query_astronomy_catalog`, `explore_service`, `run_cone_search`, and | ||
| `troubleshoot_adql` prompts plus canonical Markdown resources under the | ||
| `starfetch://` scheme. These guidance surfaces are packaged with the server; | ||
| users do not need to install the optional filesystem skill. | ||
| Other MCP clients can use `npx -y @starfetch-js/mcp` as a stdio server. | ||
| Tool descriptions independently require explicit service selection, | ||
| metadata-first ADQL, bounded requests, and failure-aware reporting. The server | ||
| does not accept credentials, execute shell commands, or write local files. | ||
| ## Ask a normal astronomy question | ||
| ```text | ||
| Find the 10 Gaia DR3 sources with the highest proper motion within 0.5 degrees | ||
| of the Pleiades center at RA 56.75°, Dec +24.12°. What stands out? | ||
| ``` | ||
| Starfetch selects Gaia, checks its metadata, queries | ||
| `gaiadr3.gaia_source`, and returns a bounded result with its exact ADQL. A | ||
| representative captured result begins: | ||
| ```text | ||
| Service: ESA Gaia Archive | ||
| Table: gaiadr3.gaia_source | ||
| Rows returned: 10 | ||
| Query limit: TOP 10 / MAXREC 10 | ||
| Highest returned proper motions: | ||
| - Gaia DR3 66780900298410496: 244.48 mas/yr | ||
| - Gaia DR3 66524409149512064: 184.50 mas/yr | ||
| ``` | ||
| The server exposes preset discovery, registry search, VOSI metadata inspection, | ||
| bounded sync queries, and explicit async jobs. Its packaged prompts, resources, | ||
| and optional skill guide metadata-first ADQL and failure-aware reporting; the | ||
| server remains usable without installing that skill. | ||
| Starfetch is for public TAP services. It does not accept credentials, execute | ||
| shell commands, write local files, or provide authoritative astrophysical | ||
| interpretation. See the [repository README](https://github.com/starfetch-js/starfetch#readme) | ||
| for the exact query, CLI and TypeScript reproduction, and full supported scope. |
1057055
0.15%76
137.5%+ Added
+ Added
- Removed
- Removed
Updated
Updated