mcp-server-interview
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@mcp-server-interview Create a new todo list called 'Work'."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
mcp-server-interview
Model Context Protocol server for croonchloop interview
Usage
The following steps were how the server was tested.
First a client like claude desktop should be installed. Then open a terminal in the mcp-server-interview folder and execute:
Add MCP to your project dependencies:
uv add "mcp[cli]"
Then install the mcp server in claude:
uv run mcp install src/main.py
Related MCP server: Todoist MCP Server
Structure
MCP-SERVER-INTERVIEW/
├── requirements.txt
├── .gitignore
├── config/
│ ├── conf.yml
| ├── loader.py
│ └── __init__.py
├── src/
| ├── dto/
| │ ├── lists.py
| │ └── tasks.py
| ├── service/
| | ├── __init__.py
| │ ├── todoList.py
| │ └── tasks.py
│ └── main.py
├── README.md
└── requirements.txtInteracting with the server.
Examples of propts given to claude desktop to test and interact with the server. The prompts were given in spanish like the example of the challenge instructions.
Create a new todo list.
Crea una lista llamada 'Nombre de lista"
Create a task for a specific list.
Crea la tarea llamada 'tarea1' con descripcion 'desc' en la lista llamda 'Nombre de lista'
Start a task (change the task's status to 'InProgress')
Comenzar la tarea 'tarea1' de la lista 'Nombre de lista'
Complete a task (change the task's status to 'Completed')
Terminar la tarea 'tarea1' de la lista 'Nombre de lista'
Delete a task
Eliminar la tarea 'tarea1' de la lista 'Nombre de lista'
Next steps
Tasks: Right now it's not avilable to change name and description for a giving task.
Areas for improvement
Test: Even though the server was manually tested, testing the service layer will ensure correctness in futures changes.
App Configuration: After having dependency-related errors, the app configuration module was left out, and the todo list service url was hardcoded in the main script. However, keeping all configuration values in one place make te deployment and usage easier.
Project structure: Structuring a project in layers helps to assign responsabilities and group similar functions and classes. For this kind of project, it's not common to find a architecture design to follow.
Available Tools
7 toolscomplete_a_taskC
Complete, terminate o finalizar una tarea / task con nombre 'name' en la lista llamada 'listname'
Inputs: list (required), name (required).
create_listD
Crear lista ‘Prueba’
Inputs: name (required).
create_taskC
Crear task o tarea ‘Prueba’ con descripcion 'desc' en la lista 'nombre de lista'
Inputs: desc (required), list (required), name (required).
delete_a_taskA
Eliminar, remover o quitar una tarea / task con nombre 'name' de la lista llamada 'listname'
Inputs: list (required), name (required).
get_listC
Obter, ver la lista con nombre ‘Prueba’
Inputs: name (required).
start_a_taskC
Comenzar, empezar o start una tarea / task con nombre 'name' en la lista llamada 'listname'
Inputs: list (required), name (required).
update_list_nameC
Cambiar, actualizar o update el nombre de la lista ‘OldName’ a o por 'NewName'
Inputs: newName (required), oldName (required).
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 7 tools
All seven tools target distinct operations: list creation, list renaming, list retrieval, task creation, task starting, task completion, and task deletion. No two tools have overlapping purposes.
Tool names follow a verb_noun pattern, but there is inconsistency: 'start_a_task' and 'complete_a_task' include an extra 'a_', while others like 'create_task' and 'delete_a_task' vary in article usage. This breaks the otherwise consistent pattern.
Seven tools cover the essential operations for a list-based task manager without being overly numerous or insufficient. The count feels right for the domain.
Basic CRUD is present but incomplete: there is no delete list, no update task (e.g., description or name), and no way to list all tasks in a list. Notable gaps exist for a full task management workflow.
Related MCP Connectors
AI-powered to-do list: add, list, complete and organise tasks across lists from any assistant.
To-do lists by voice or chat: add tasks with due dates, check them off, see what's due.
Manage Superlist tasks and lists in plain language from any MCP-compatible AI agent.
Create, list, and complete todo items through MCP.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables AI assistants to manage Todoist tasks, projects, labels, sections, and comments through natural conversation. Supports comprehensive task operations including creation, updates, completion, and organization with natural language quick-add functionality.-
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to manage Todoist tasks, projects, sections, and labels through natural language, supporting task creation, updates, completion, and intelligent organization of your workflow.17 npmMIT
- AlicenseAqualityFmaintenanceEnables AI assistants to manage Todoist tasks, projects, and labels through natural language, with support for filters, priorities, and natural language dates.12MIT
- AlicenseAqualityDmaintenanceEnables AI assistants to manage a todo list with add, list, complete, and delete tasks.410 npmMIT