A personal portfolio website built with React, TypeScript, and Vite. Features a chatbot powered by Gemini API, project showcase, certifications, CV modal, and contact forms.
This is not an MCP server. The repository is a React portfolio website (Vite + TypeScript) with a chatbot UI component. The 'sendMessage' tool is a frontend function in src/components/chatBot/api/geminiCall.ts that calls the Gemini API directly from the browser. There is no MCP server implementation, no tool registration via MCP protocol, no schema definitions, and no transport layer. The tool lacks input validation, error handling, and structured output. This submission appears to be a misclassification, it is a web application, not an MCP server.
Sends a message to the Gemini API and returns the model's response for the chatbot
Not an MCP server. This is a React web application with a frontend chatbot component, not a Model Context Protocol server.
No input schema defined. The tool accepts 'messages' array but provides no JSON Schema with type definitions, constraints, or field descriptions.
No output schema documented. Callers cannot know what fields the Gemini response contains or how to parse it.
No error handling or recovery guidance. If the Gemini API fails, there is no structured error response or guidance for the caller.
API key exposure risk. The Gemini API key is likely embedded in frontend code or environment variables accessible to the browser, violating secret-injection pattern.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 14 | 2026-07-28+ | v2 |