This site is an MCP server
An assistant can read the same material a visitor can inspect here. I wanted the interface to preserve that connection as the content changes.
The pages are static HTML. A public MCP endpoint exposes their essays, project summaries, work cases and linked sources through read-only tools. WebMCP makes those tools available to a supported browser’s assistant.
One content set, two interfaces
The build produces the pages and a structured index from shared data. Tools search that index and return links to the relevant page or source. A source’s provenance travels with the result, so an assistant can distinguish a publisher’s account from a statement on this site.
The server reads published assets only. It has no connection to my private notes or the systems I use for personal projects. The server limits request size and validates tool arguments. Origin checks reject requests from foreign pages. The WebMCP browser client stops waiting after ten seconds.
I chose a narrow interface over a general-purpose agent. It gives the caller material to inspect; the caller decides how to use it.
Try the content search
Browser assistant lookups
Connect a client
Server address: https://vihang.com/mcp
- Claude or ChatGPT — Add a custom connector and paste the server URL. Plans and settings that allow custom connectors vary by provider.
- Cursor — Add the server
- VS Code — Add the server
- Claude Code
claude mcp add --transport http vihang-com https://vihang.com/mcp - Codex
codex mcp add vihang-com --url https://vihang.com/mcp - Browser assistants — native WebMCP uses the same public endpoint.
Available tools
get_profile- Start here. Vihang Patel’s first-party profile: current role, leadership scope, career facts, team and company outcomes, the themes he writes about and links to the public pages. Owner-reported claims are labelled.
search_site- Search vihang.com: profile facts, essay and case-study text, project titles and summaries, and public source records. Returns the matching page URL and a short excerpt for each result; open the URL for a project’s full page.
list_writing- List Vihang Patel’s writing as one list under one limit: original essays on vihang.com first (with publication dates and themes), then published bylines elsewhere in records. Links may be article indexes or social posts; their original titles and qualifications are preserved.
read_essay- Read one original essay from vihang.com in full: sections, cited sources and publication dates. Use a slug from list_writing.
list_work- List Vihang Patel’s work case studies: the company, his responsibility and a one-line summary for each.
get_work- Read one work case study in full: context, his decisions, delivery, outcomes with their attribution, technical notes and linked public sources. Use a slug from list_work.
search_public_record- Search Vihang Patel’s published records by keywords. Return exact claims, original sources and verification qualifications; company outcomes remain company outcomes.
get_evidence- Retrieve one published record by ID, including its exact claim, issuer, date, original source and verification qualification.
What the interface makes visible
Publishing a page and making it easy for an assistant to use are different jobs. Shared data prevents the two versions drifting. It also makes mistakes propagate consistently, which is why I check the page, exported data and tool response together.
The same discipline applies to the connection instructions. Registering a tool tells me it is available; a successful call and the returned source tell me more. Those checks are part of the release.