{"schema_version":"2025-11-25","name":"hirejeffgreen","description":"Jeff Green's portfolio API - skills, work history, and contact","homepage":"https://www.hirejeffgreen.com","authentication":{"type":"none"},"endpoints":{"http":{"url":"https://www.hirejeffgreen.com/api"}},"tools":[{"name":"get_profile","description":"Get Jeff Green's professional profile including bio, title, location, and availability status","endpoint":"/api/profile","inputSchema":{"type":"object","properties":{},"required":[]}},{"name":"get_work","description":"Get employment history (Authentic Brands Group, Brandito, Virginia Commonwealth University, COLAB) and featured projects (commerce changeset, ops signal console)","endpoint":"/api/work","inputSchema":{"type":"object","properties":{},"required":[]}},{"name":"get_skills","description":"Get technical skills (React/Next.js, Vue.js, TypeScript, CSS/Tailwind), capabilities, and technology stack","endpoint":"/api/skills","inputSchema":{"type":"object","properties":{},"required":[]}},{"name":"send_message","description":"Send a message to Jeff Green via contact form. Rate limited to 5 requests per hour.","endpoint":"/api/contact","inputSchema":{"type":"object","properties":{"name":{"type":"string","description":"Sender's full name"},"email":{"type":"string","format":"email","description":"Sender's email address for replies"},"organization":{"type":"string","description":"Optional: Sender's company or organization"},"message":{"type":"string","description":"Message content (10-5000 characters)"}},"required":["name","email","message"]}}],"resources":[{"uri":"https://github.com/logpare/logpare","name":"logpare","description":"Semantic log compression for LLM context windows - reduces logs by 60-99%"}],"x-webmcp":{"supported":true,"tools":[{"name":"getProfile","kind":"answer","description":"Get Jeff Green's professional profile: name, title, headline, bio, summary, location, availability status and social links. Start here when you need to know who he is or how to describe him.","page":"/about"},{"name":"getWorkHistory","kind":"answer","description":"Get Jeff Green's employment history and project portfolio with roles, tech stacks, highlights and links. Pass a query to search across both instead of listing everything.","page":"/work"},{"name":"getSkills","kind":"answer","description":"Get Jeff Green's technical skills by category, his capability areas, and the stack this website itself is built with. Use the category filter to narrow to one group.","page":"/about"},{"name":"getContactInfo","kind":"answer","description":"Get Jeff Green's email, location, social links, response time, and whether he is currently open to consulting, speaking or open-source collaboration. This is the single source for both how to reach him and whether he is available.","page":"/contact"},{"name":"findContent","kind":"answer","description":"Search or list everything readable on Jeff Green's site: blog posts, interactive lab experiments, case studies and the main static pages. Returns paths you can pass to readContent or navigateTo, plus the full tag vocabulary.","page":"/blog"},{"name":"readContent","kind":"answer","description":"Read the full markdown of one item found via findContent. Pass a `path` from that tool's results. Lab experiments are interactive and have no text rendition — open those with navigateTo instead."},{"name":"navigateTo","kind":"act","description":"Navigate the browser to one of Jeff Green's pages without a full reload. Available routes: / (Home), /about (About Jeff), /work (Work history), /projects (Case studies), /blog (Writing), /lab (Interactive lab experiments), /tools (Tools Jeff builds with), /uses (Hardware and software setup), /developers (Developer and agent documentation), /api (Public JSON API index), /contact (Contact form). Use this to take the user somewhere they can read or act; use findContent first if you need to pick a specific post or case study."},{"name":"scrollToSection","kind":"act","description":"Scroll the current page to one of the homepage's sections: work, capabilities, writing, lab, experience, other-work. Only works while the homepage is open — call navigateTo first from anywhere else.","page":"/"},{"name":"setTheme","kind":"act","description":"Switch the site's colour palette. Available themes: atelier-neutral, cloud-dancer, dusty-jewel, wellness-mint, thermal-glow, midnight. The change persists for this visitor and animates unless they have asked for reduced motion."},{"name":"openCommandPalette","kind":"act","description":"Open the site's command palette and optionally seed its search box, so the visitor can pick a destination themselves. Returns the labels currently listed, or reports unsupported if the palette is not mounted on this page."},{"name":"prefillContactForm","kind":"act","description":"Open Jeff Green's contact form with fields already filled in, so the person you are helping can read the draft and press send themselves. This does not send anything. Use sendContactMessage instead only when they have explicitly asked you to send on their behalf.","page":"/contact"},{"name":"sendContactMessage","kind":"transact","description":"Send a real email to Jeff Green through his contact form. This delivers to his inbox and cannot be undone. Only call it when the person you are acting for has explicitly asked you to contact him, and only with details they supplied. Rate limited per IP; use prefillContactForm instead if they would rather review the draft first.","page":"/contact"}],"declarativeTools":[{"name":"submitContactForm","kind":"transact","description":"Declarative form tool on /contact; submits Jeff's contact form.","page":"/contact"}],"spec":"https://webmachinelearning.github.io/webmcp/"}}