Skip to content

It's an MCP server now xD!#67

Merged
letsgogeeky merged 4 commits into
mainfrom
feat/AIC-98-MCP
Mar 29, 2026
Merged

It's an MCP server now xD!#67
letsgogeeky merged 4 commits into
mainfrom
feat/AIC-98-MCP

Conversation

@letsgogeeky

@letsgogeeky letsgogeeky commented Mar 29, 2026

Copy link
Copy Markdown
Owner
  • POST /api/mcp — Streamable HTTP transport, stateless, JSON mode
  • roast_stack: accepts natural tool names, fuzzy-resolves to catalog
  • challenge_stack: same name resolution, auto-derives slots from catalog
  • get_stack_questions + recommend_stack: drives the quiz questionnaire
    and returns slot-by-slot recommendations via quizScoring + genomeAnalysis
  • lib/ai/resolveTools.ts: 7-step fuzzy matching (id, name, npm, pip, env_var)
  • lib/ai/roast.ts + challenge.ts: single implementation shared by HTTP
    routes and MCP tools — no duplicated AI logic
  • lib/quizContent.ts: single source of truth for QUESTIONS (was in 2 places)
  • 50 tests passing, make check clean

What does this PR do?

Type of change

  • Data (add/update tool, stack, or relationship)
  • Bug fix
  • New feature
  • Docs / chore

Checklist

  • make check passes (lint + typecheck)
  • No unrelated files changed
  • PR title follows Conventional Commits (feat:, fix:, chore:, docs:)

Notes for reviewers

…nd recommend tools

  - POST /api/mcp — Streamable HTTP transport, stateless, JSON mode
  - roast_stack: accepts natural tool names, fuzzy-resolves to catalog
  - challenge_stack: same name resolution, auto-derives slots from catalog
  - get_stack_questions + recommend_stack: drives the quiz questionnaire
    and returns slot-by-slot recommendations via quizScoring + genomeAnalysis
  - lib/ai/resolveTools.ts: 7-step fuzzy matching (id, name, npm, pip, env_var)
  - lib/ai/roast.ts + challenge.ts: single implementation shared by HTTP
    routes and MCP tools — no duplicated AI logic
  - lib/quizContent.ts: single source of truth for QUESTIONS (was in 2 places)
  - 50 tests passing, make check clean
  - Static server component with Hero, Quick Setup, Tool Reference, and Example Prompts sections
  - Copyable MCP URL block + JSON config snippet for Claude Code / Cursor
  - Four ToolCards: get_stack_questions, recommend_stack, roast_stack, challenge_stack
  - CopyButton client component for clipboard interactions
  - pageMeta() metadata wired for /mcp route
  - MCP section placed right above "Honest take" (LlmPromptSection) for early visibility
  - Headline: "Stop asking Claude to research your stack" with token-cost framing
  - 4 tool pills, "View setup guide" CTA → /mcp, server URL inline
  - Subtle "use inside Claude Code" hint in hero secondary links
  - MCP link added to footer nav
  - New mcp_events table (migration 20260329170050) with tool, called_at,
    duration_ms, success, tool_count, skipped_count columns
  - lib/mcp/logger.ts — fire-and-forget insert, never throws or blocks
  - Wired into all 4 tool handlers: roast_stack, challenge_stack,
    get_stack_questions, recommend_stack
@letsgogeeky letsgogeeky merged commit c8f6210 into main Mar 29, 2026
1 check passed
@github-actions github-actions Bot deleted the feat/AIC-98-MCP branch March 29, 2026 19:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant