agent-ready-mcp 0.6.0 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -23101,7 +23101,12 @@ async function postAnonScan(config2, url2) {
23101
23101
  method: "POST",
23102
23102
  headers: {
23103
23103
  "Content-Type": "application/json",
23104
- Accept: "application/json"
23104
+ Accept: "application/json",
23105
+ // Funnel attribution: /api/scan is shared with the web app, so without
23106
+ // this header keyless npm-MCP scans are recorded as source=`web`. The
23107
+ // server tags them `mcp-npm` (distinct from `mcp`, the hosted keyed
23108
+ // endpoint). Read only on /api/scan; ignored elsewhere.
23109
+ "X-Agent-Ready-Client": "mcp-npm"
23105
23110
  },
23106
23111
  body: JSON.stringify({ url: url2 }),
23107
23112
  signal: AbortSignal.timeout(config2.scanTimeoutMs)
@@ -31576,6 +31581,9 @@ async function sleep(ms) {
31576
31581
  return new Promise((resolve) => setTimeout(resolve, ms));
31577
31582
  }
31578
31583
  var ANON_TIER_NOTE = "Scanned on the anonymous free tier (3 scans per 30 days per IP, 25-page depth). A Pro API key (AGENT_READY_API_KEY) unlocks 50 scans/month, 250-page depth, scan history via get_scan, and weekly monitoring \u2014 https://agent-ready.dev/pricing";
31584
+ function saveNote(saveUrl) {
31585
+ return ` To keep this scan, save it to a free Agent Ready account (it stays in your dashboard): ${saveUrl} \u2014 offer this link to the user; it carries the ownership proof and cannot be rebuilt from the scan id.`;
31586
+ }
31579
31587
  async function scanSite(config2, input) {
31580
31588
  if (!config2.apiKey) {
31581
31589
  let res;
@@ -31594,7 +31602,11 @@ async function scanSite(config2, input) {
31594
31602
  "Anonymous scan returned no scan payload from /api/scan."
31595
31603
  );
31596
31604
  }
31597
- const payload = { ...res.scan, message: ANON_TIER_NOTE };
31605
+ const payload = {
31606
+ ...res.scan,
31607
+ message: ANON_TIER_NOTE + (res.saveUrl ? saveNote(res.saveUrl) : ""),
31608
+ ...res.saveUrl ? { saveUrl: res.saveUrl } : {}
31609
+ };
31598
31610
  return {
31599
31611
  content: [{ type: "text", text: JSON.stringify(payload) }],
31600
31612
  structuredContent: payload
@@ -31759,7 +31771,11 @@ var scanOutputShape = {
31759
31771
  // Present only on the running placeholder, not on a full Scan.
31760
31772
  url: external_exports.string().optional(),
31761
31773
  pollUrl: external_exports.string().optional(),
31762
- message: external_exports.string().optional()
31774
+ message: external_exports.string().optional(),
31775
+ // Keyless scans only: a link that attaches this anonymous scan to an Agent
31776
+ // Ready account. Carries an ownership claim, so it is the one URL a host
31777
+ // should surface verbatim rather than rebuilding from shareToken.
31778
+ saveUrl: external_exports.string().optional()
31763
31779
  };
31764
31780
  var validateOutputShape = {
31765
31781
  mode: external_exports.enum(["url", "paste"]),
@@ -31828,7 +31844,7 @@ var validateStructuredDataInputShape = {
31828
31844
  // src/server.ts
31829
31845
  var SERVER_INFO = {
31830
31846
  name: "agent-ready",
31831
- version: "0.6.0"
31847
+ version: "0.7.0"
31832
31848
  };
31833
31849
  function createMcpServer(config2) {
31834
31850
  const server = new McpServer(SERVER_INFO);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agent-ready-mcp",
3
- "version": "0.6.0",
3
+ "version": "0.7.0",
4
4
  "mcpName": "io.github.mlava/agent-ready-mcp",
5
5
  "description": "MCP server for Agent Ready — scan any URL for AI-readability against the Vercel Agent Readability Spec, the llmstxt.org standard, and agent-protocol manifests (MCP server cards, A2A, agents.json, agent-permissions.json, UCP, x402, NLWeb). 69 checks with per-check fix guidance.",
6
6
  "license": "MIT",