Skip to content

saagarpatel.dev Portfolio changelog

io.github.saagpatel/portfolio-mcp

5 changes recorded. MCP Harbor re-reads this listing from the official registry every six hours and asks the live server what it exposes, and keeps what changed between one look and the next.

  • Resources +5
    • + project-gallery-app
    • + project-timeline-app
    • + operant-app
    • + demos-app
    • + The Night the Fleet Was Real
  • Tools +4
    • + show_project_gallery
    • + show_project_timeline
    • + show_operant_results
    • + play_demo

  • AGENTS.md +36 −37

    https://raw.githubusercontent.com/saagpatel/portfolio-mcp/HEAD/AGENTS.md

    − <!-- portfolio-context:start -->− # Portfolio Context− ## What This Project Is− portfolio-mcp: The agent-native layer of [saagarpatel.dev](https://saagarpatel.dev): a Model.− ## Current State− - **Built + locally verified:** Layers 0–2. Shared core + 8 tools (including−   `get_operant_results`) + Resources + 2 prompts. typecheck clean; test suite passes−   (incl. full MCP protocol via the fetch handler). Live Worker probe and deploy remain operator-gated. Public discovery−   advertises `mcp.saagarpatel.dev` with a valid Ed25519-signed manifest.− - **Gated / next:** publish the stdio package (`npm publish`, by explicit operator approval only;−   `package.json` already has no `private` field), glama.ai registry listing, and−   continued signed-manifest readback checks after website manifest changes.− ## Stack− - Primary stack: Node.js, TypeScript− - JavaScript package manager: npm-compatible workflow− ## How To Run− - Install dependencies with `npm install`.− - Start local development with `npm run dev`.− - Review the repo README for any required verification commands before shipping.− ## Known Risks− - This repo only has minimum-viable recovery context today; deeper handoff details may still live in the README and supporting docs.− ## Next Recommended Move− Use this context plus the README and supporting docs to resume the next active task, then promote the repo beyond minimum-viable by capturing a dedicated handoff, roadmap, or discovery artifact.− ## Cursor Cloud specific instructions− Cursor Cloud uses `.cursor/environment.json` to install the committed npm lockfile− on Ubuntu. The checked-in public-safe corpus is sufficient for normal code,− contract, stdio, and Worker test work; do not import local portfolio data or− private sibling-repository content.− Verify ordinary changes with:− npm run typecheck− npm test− npm run smoke− npm run parity− Publishing, signing, and Cloudflare deployment require separate authorization and− credentials. Never copy signing keys, Wrangler credentials, or local `.env` files− into a cloud environment.− <!-- portfolio-context:end -->+ # Purpose+ portfolio-mcp provides read-only MCP access to the public portfolio corpus over+ HTTP and stdio.+ # Layout+ - `src/server.ts`: shared tools, resources, and prompts.+ - `src/index.ts` and `src/stdio.ts`: HTTP Worker and stdio transports.+ - `src/corpus.generated.ts`: checked-in, generated public-safe corpus.+ - `scripts/build-corpus.mjs`: builds the corpus from public index artifacts.+ - `test/`: unit, protocol, corpus-builder, and stdio tests.+ # Setup+ Use the versions pinned in `.node-version` and `package.json`.+ npm ci+ # Checks+ Run the complete local gate:+ ```sh+ make check+ ```+ The check includes lint, formatting, typecheck, tests, both transports, smoke,+ parity, and package contents.+ # Boundaries+ - Use only the checked-in public-safe corpus for normal work. Do not import+   private portfolio data or sibling-repository content.+ - Do not publish packages, deploy Workers, or sign manifests as part of code+   changes.+ - Never copy signing keys, Wrangler credentials, or local environment files.+ - Keep runtime access read-only and stateless.+ # Delivery+ Keep changes focused. Run the relevant checks and report their real results.+ Publishing, deployment, signing, and registry release work require separate+ operator authorization.+ Pinned dependency notes:+ - `vite` stays at 6.4.3, the currently tested Vite 6 release used with Vitest+   5.0.3. Major upgrades are outside the current scope.+ - The `undici` override holds Wrangler's Miniflare dependency to the v7 API+   line while Miniflare declares 7.29.1; the lockfile resolves the compatible+   v7 release without moving to a new major.

  • AGENTS.md +5 −5

    https://raw.githubusercontent.com/saagpatel/portfolio-mcp/HEAD/AGENTS.md

    − - **Built + locally verified:** Layers 0–2. Shared core + 8 tools + Resources + 2 prompts +−   `get_operant_results`. typecheck clean; test suite passes (incl. full MCP protocol via the−   fetch handler). Live Worker probe and deploy remain operator-gated. Public discovery− - **Gated / next:** publish the stdio package (`npm publish`, after removing−   `"private": true` by explicit operator approval only), glama.ai registry listing, and+ - **Built + locally verified:** Layers 0–2. Shared core + 8 tools (including+   `get_operant_results`) + Resources + 2 prompts. typecheck clean; test suite passes+   (incl. full MCP protocol via the fetch handler). Live Worker probe and deploy remain operator-gated. Public discovery+ - **Gated / next:** publish the stdio package (`npm publish`, by explicit operator approval only;+   `package.json` already has no `private` field), glama.ai registry listing, and
  • llms.txt +2 −1

    https://saagarpatel.dev/llms.txt

    − Provenance: generated from portfolio corpus commit 9d06aafd7a25.+ - [The Night the Fleet Was Real](https://saagarpatel.dev/writing/the-night-the-fleet-was-real): In August I wrote that my agent fleet was an org chart and the parallel regime it was built for had never happened. Then I came back from three weeks away, saved one prompt just before 10 PM, and let it run: ten hours, a 269-project portfolio, 654 pull requests merged during the window. The work finally scaled, and the expensive part turned out to be believing it. [status: field-tested]+ Provenance: generated from portfolio corpus commit a934cad64c6f.