developers
An OpenAPI spec, an MCP server and four SDKs. Every read endpoint is open: no key, no rate penalty.
SDKs
import { AshwinGopalsamyClient } from "@ashwingopalsamy/sdk";
const client = new AshwinGopalsamyClient();
const profile = await client.getProfile();
const results = await client.searchSite("rate limiters", 5);from ashwingopalsamy import Client
client = Client()
profile = client.get_profile()
results = client.search_site("rate limiters", limit=5)import (
"context"
ashwingopalsamy "github.com/ashwingopalsamy/ashwingopalsamy.in/packages/go"
)
client := ashwingopalsamy.NewClient()
profile, err := client.GetProfile(ctx)
results, err := client.SearchSite(ctx, "rate limiters", 5)require "ashwingopalsamy"
client = AshwinGopalsamy::Client.new
profile = client.get_profile
results = client.search_site("rate limiters", limit: 5)CLI
Inspect profile facts, technical notes, and search index directly from your terminal:
npx ashwingopalsamy profile
npx ashwingopalsamy search "rate limiters"
npx ashwingopalsamy note designing-rate-limiters-for-payment-systemscurl -sSL https://ashwingopalsamy.in/cli.sh | sh -s -- profile
curl -sSL https://ashwingopalsamy.in/cli.sh | sh -s -- search "ISO 8583"Endpoints
- GET/api/v1/profile
Authoritative career summary, current role, location, and verified profile facts.
- GET/api/v1/search?query={q}&limit={n}
Search technical notes, craft projects, and reading list entries.
- GET/api/v1/content?kind={kind}&limit={n}
List public entries by kind (note, craft, book, watch, or all).
- GET/api/v1/notes/{slug}
Retrieve raw Markdown content and metadata for a published note.
- GET/api/v1/status
API operational status, versioning policy, and capability catalog.
Protocols
- Streamable HTTP · JSON-RPC 2.0
Model Context Protocol (MCP)
/mcpProduction MCP endpoint offering native tool execution (search_site, get_profile, list_content, get_note_markdown), resources, and prompt templates for autonomous AI agents.
- JSON-RPC 2.0 Task Routing
Agent-to-Agent (A2A)
/a2aDirect agent message exchange protocol for task delegation, profile extraction, and capability handoff.
- OpenAPI 3.1.0
OpenAPI Specification
/openapi.jsonComplete machine-readable REST API schema defining strongly typed parameters, request contracts, and response schemas.
- RFC 9421 · Ed25519 JWK
Web Bot Auth Directory (RFC 9421)
/.well-known/http-message-signatures-directoryCryptographic public signature keys directory for verifying authentic bot identities and mitigating spoofing.
Headers
API responses carry a version header:
Errors RFC 9457
Explicit path versioning (/api/v1) paired with RFC 9457 Problem Details for typed error responses:
{
"type": "https://ashwingopalsamy.in/developers#errors",
"title": "Resource Not Found",
"status": 404,
"detail": "Note slug 'non-existent' was not found in published index.",
"code": "note_not_found",
"resolution_hint": "Check /api/v1/content?kind=note for a complete list of valid note slugs."
}Discovery
Developer APIs & Specifications
AI & Agent Discovery
- /mcpModel Context Protocol endpoint (Streamable HTTP · JSON-RPC 2.0).
- /mcp/catalog.jsonCatalog of registered MCP tools, resources, and prompt templates.
- /.well-known/mcp/server-card.jsonMCP Server Card metadata for automatic client configuration.
- /a2aAgent-to-Agent communication endpoint for task delegation.
- /.well-known/agents.mdSystem prompt instructions and capabilities for autonomous agents.
- /.well-known/ai-catalog.jsonAgent Resource Directory (ARD) index of accessible surfaces.
LLM Context & Machine Catalogs
- /llms.txtConcise profile and content summary for language models.
- /llms-full.txtComplete context bundle covering all technical notes and craft history.
- /knowledge.jsonJSON-LD graph dump of all verified biographical and career facts.
- /cli.shOfficial zero-dependency POSIX shell command-line interface.
- /.well-known/http-message-signatures-directoryRFC 9421 HTTP Message Signatures Ed25519 public key directory.