ashish-portfolio-mcp
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@ashish-portfolio-mcpWhat projects has Ashish worked on?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
ashish-portfolio-mcp
An MCP (Model Context Protocol) server that exposes Ashish Kumar's portfolio — experience, projects, skills, and writing — as structured tools any MCP-aware AI client can query, instead of scraping HTML.
Live: https://ashish-portfolio-mcp.ashishk.workers.dev/mcp (Streamable HTTP) or /sse (legacy SSE). No install needed — point any MCP client at the URL.
Built as a companion to the portfolio site itself: ashishk9670/portfolio exports its data as static JSON at build time (public/data/*.json), and this server fetches that JSON at request time. Same source of truth, two deploys, no duplicated resume data.
Tools
Tool | Description |
| Work history with quantified results and business impact per role |
| Project case studies (problem, approach, results, outcome, impact) |
| Skills by category, plus the tools actually used and why |
| Career timeline, engineering philosophy, education, certifications |
| Email, GitHub, LinkedIn, and current availability status |
| Blog post titles, descriptions, and dates |
| Full Markdown content of one post, by slug |
Related MCP server: Portfolio MCP Server
Architecture
Remote (primary): a Cloudflare Worker using
agents/mcp'sMcpAgent, serving Streamable HTTP at/mcpand legacy SSE at/sse. No local install needed — just a URL.Local (stdio): a bundled Node script (
bin/stdio.js) for Claude Desktop/Code, built withnpm run build:stdio.Both share the exact same tool implementations (
src/tools.ts) and data-fetching layer (src/data.ts), which validates every fetched JSON payload with Zod (src/schemas.ts) before handing it to a tool.Responses are cached at Cloudflare's edge for 5 minutes (
cf: { cacheTtl }), so pushing new data to the portfolio site propagates here automatically — no redeploy of this server required.
This is a read-only, public-information-only server — everything it returns is already public on the portfolio site. No auth, no write access, no PII beyond what's already published.
Local development
npm install
npm run dev # wrangler dev, served at http://localhost:8787Test it with the MCP Inspector CLI:
npx @modelcontextprotocol/inspector --cli http://localhost:8787/mcp --method tools/list
npx @modelcontextprotocol/inspector --cli http://localhost:8787/mcp --method tools/call --tool-name get_contact_infoRedeploying
Already live at https://ashish-portfolio-mcp.ashishk.workers.dev. To ship a change:
npx wrangler login # one-time, opens a browser to authenticate with your Cloudflare account
npm run deployTo connect Claude Code or Claude Desktop to it, add it as a remote MCP server pointing at https://ashish-portfolio-mcp.ashishk.workers.dev/mcp.
Using it locally via stdio
npm run build:stdio
node bin/stdio.js # speaks MCP over stdioOr add it to Claude Desktop's config (claude_desktop_config.json):
{
"mcpServers": {
"ashish-portfolio": {
"command": "node",
"args": ["/absolute/path/to/ashish-portfolio-mcp/bin/stdio.js"]
}
}
}Once published to npm, this collapses to npx ashish-portfolio-mcp — see prepublishOnly in package.json, which builds bin/stdio.js automatically before npm publish. Publishing itself needs npm login with your own npm account; this repo doesn't do that step for you.
Why this exists
The portfolio's whole pitch is "AI-assisted tooling used deliberately, not as hype." This is the concrete version of that: instead of a recruiter's AI assistant scraping the site's HTML, it can call get_experience or get_projects and get the same structured data the site itself renders from — accurate, current, and machine-readable by design.
This server cannot be deployed
Maintenance
Related MCP Connectors
Public portfolio MCP for resume, services, availability, project evidence, and introductions.
btlabs Core MCP endpoint: site content and brand data for AI agents. OAuth or API key.
Hosted MCP server for AI-driven data ops. Create apps, manage schemas, and CRUD structured data.
Agent-native MCP server over the public saagarpatel.dev corpus. Read-only, stateless.
Related MCP Servers
- FlicenseNot gradedqualityCmaintenanceAn MCP server that provides a structured API for AI agents to query a person's resume, including profile, projects, writing, and gated access to experience and skills.-
- AlicenseAqualityBmaintenanceExposes a personal portfolio of projects, skills, and resume as callable tools for MCP-compatible AI assistants like Claude Desktop.4MIT
- FlicenseNot gradedqualityAmaintenanceTurns a developer's portfolio into a queryable MCP server, enabling AI assistants to interrogate career data (experience, projects, skills) with grounded citations.-
- FlicenseNot gradedqualityBmaintenanceEnables AI agents to retrieve a personal biography, skills, projects, and contact links through a read-only MCP server.-