{
  "name": "harlakshsingh.com",
  "title": "Harlaksh Singh",
  "version": "1.0.0",
  "description": "Read-only Model Context Protocol server for Harlaksh Singh: search the site, list blog posts and read any page as Markdown. No key, no account, no writes.",
  "vendor": {
    "name": "Harlaksh Singh",
    "url": "https://www.harlakshsingh.com"
  },
  "homepage": "https://www.harlakshsingh.com",
  "endpoint": "https://www.harlakshsingh.com/mcp",
  "transport": "http",
  "protocolVersion": "2025-11-25",
  "authentication": "none",
  "capabilities": {
    "tools": true,
    "resources": true,
    "prompts": false,
    "logging": false
  },
  "tools": [
    {
      "name": "search_site",
      "title": "Search the site",
      "description": "Full-text search over every page, blog post, podcast episode and outbound link on harlakshsingh.com. Returns a title, a path and a kind for each match. Use it to locate a URL before calling read_page.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "query": {
            "type": "string",
            "minLength": 1,
            "description": "Words to look for, such as 'Bombay', 'podcast guest' or 'substack'."
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "maximum": 20,
            "default": 5,
            "description": "How many matches to return."
          }
        },
        "required": [
          "query"
        ],
        "additionalProperties": false
      },
      "annotations": {
        "readOnlyHint": true,
        "idempotentHint": true,
        "openWorldHint": false
      }
    },
    {
      "name": "list_posts",
      "title": "List blog posts",
      "description": "The published blog posts, newest first, with slug, title, date, category and a one-sentence excerpt. Use read_page with the slug to get the full text.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "limit": {
            "type": "integer",
            "minimum": 1,
            "maximum": 20,
            "default": 5,
            "description": "How many posts to return."
          }
        },
        "additionalProperties": false
      },
      "annotations": {
        "readOnlyHint": true,
        "idempotentHint": true,
        "openWorldHint": false
      }
    },
    {
      "name": "read_page",
      "title": "Read a page as Markdown",
      "description": "Fetch one page of harlakshsingh.com as Markdown, including blog posts. Takes a path such as /about/ or /blog/the-body-budget/. Returns the Markdown and its canonical URL.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "path": {
            "type": "string",
            "pattern": "^/",
            "description": "A path on this site, starting with /. Examples: /, /about/, /blog/the-body-budget/."
          }
        },
        "required": [
          "path"
        ],
        "additionalProperties": false
      },
      "annotations": {
        "readOnlyHint": true,
        "idempotentHint": true,
        "openWorldHint": false
      }
    }
  ],
  "resources": [
    {
      "uri": "https://www.harlakshsingh.com/llms.txt",
      "name": "LLM context index",
      "description": "What the site is for, which URL answers which question, and the public API in one page.",
      "mimeType": "text/markdown"
    },
    {
      "uri": "https://www.harlakshsingh.com/openapi.json",
      "name": "OpenAPI 3.1 specification",
      "description": "Every public JSON endpoint, with operation IDs and typed request and response schemas.",
      "mimeType": "application/json"
    },
    {
      "uri": "https://www.harlakshsingh.com/sitemap.xml",
      "name": "Sitemap",
      "description": "Every indexable URL on the site, with a last-modified date.",
      "mimeType": "application/xml"
    },
    {
      "uri": "https://www.harlakshsingh.com/feed.xml",
      "name": "RSS feed",
      "description": "The latest blog posts as RSS 2.0.",
      "mimeType": "application/rss+xml"
    }
  ],
  "links": {
    "site": "https://www.harlakshsingh.com",
    "api": "https://www.harlakshsingh.com/openapi.json",
    "docs": "https://www.harlakshsingh.com/developers/",
    "skill": "https://www.harlakshsingh.com/.well-known/agent-skills/harlakshsingh/SKILL.md"
  }
}
