Skip to main content
Glama
iamsoham25

Intern Task Tracker MCP Server

by iamsoham25

Intern Task Tracker - MCP Server

A Python-based Model Context Protocol (MCP) Server developed for tracking daily internship work.

The project uses FastMCP to expose task-management tools and SQLite to permanently store Daily Work Log information.


Project Overview

The Intern Task Tracker allows internship work details to be managed through MCP tools.

The current system supports:

  • Adding Daily Work Logs

  • Listing Daily Work Logs

  • Updating a work log status to Done

  • Deleting Daily Work Logs

  • Viewing an overall work summary

  • Storing all work log information in SQLite

  • Testing MCP tools through MCP Inspector


Related MCP server: Daily Work MCP Server

Technologies Used

  • Python

  • Model Context Protocol (MCP)

  • FastMCP

  • SQLite

  • MCP Inspector

  • VS Code

  • Node.js / NPX


Project Structure

MCP_Server/
│
├── server.py
├── database.py
├── intern_tracker.db
├── requirements.txt
├── README.md
│
├── venv/
│
└── __pycache__/

server.py

Contains the MCP server and all MCP tools.

database.py

Handles:

  • SQLite connection

  • Database initialization

  • Table creation

  • Database reset functionality

intern_tracker.db

SQLite database used to permanently store Daily Work Log records.

requirements.txt

Contains the Python dependencies required by the project.


Daily Work Log Structure

The daily_work_log table stores the following information:

Field

Description

id

Unique ID of the work log

work_date

Date of work

day

Day automatically calculated from date

task_description

Work performed / task description

deliverables

Deliverables or output

blockers

Blockers or dependencies

hours_spent

Total working hours

status

Current task status

notes

Additional comments

created_at

Record creation timestamp

updated_at

Last update timestamp

When a new Daily Work Log is created, its status is automatically:

To Do

The update_work_status MCP tool changes the status to:

Done

MCP Tools

The server currently provides five MCP tools.

1. add_daily_work_log

Adds a new Daily Work Log to the SQLite database.

Inputs include:

  • Work Date

  • Task Description

  • Deliverables

  • Blockers

  • Hours Spent

  • Notes

The day is automatically calculated from the entered date.

The default status is automatically set to To Do.


2. list_daily_work_logs

Retrieves the Daily Work Logs stored in the database.

Logs can optionally be filtered using their status.

Examples:

To Do
Done

3. update_work_status

Marks an existing Daily Work Log as:

Done

The Log ID is required to identify the record.


4. delete_daily_work_log

Deletes a Daily Work Log using its Log ID.


5. get_work_summary

Returns a summary containing:

  • Total Work Logs

  • Completed Logs

  • To Do Logs

  • Total Hours Spent


Setup Instructions

1. Open the Project

Open the project folder in VS Code:

cd D:\MCP_Server

2. Activate Virtual Environment

Run:

.\venv\Scripts\Activate.ps1

The terminal should show:

(venv) PS D:\MCP_Server>

PowerShell Execution Policy Issue

If PowerShell prevents the virtual environment from activating, run:

Set-ExecutionPolicy -Scope Process -ExecutionPolicy RemoteSigned

Then:

.\venv\Scripts\Activate.ps1

Running the Project

The following commands are used to verify and run the MCP server.

Step 1 - Check server.py for syntax errors

Run:

python -m py_compile server.py

If no error appears, the Python file compiled successfully.


Step 2 - Verify the MCP Server

Run:

python -c "from server import mcp; print('Server loaded successfully')"

Expected output:

Server loaded successfully

Step 3 - Initialize the SQLite Database

Run:

python database.py

Expected output:

==================================================
Intern Tracker Database Initialized Successfully
==================================================

This creates the database/table if it does not already exist.


Step 4 - Start MCP Inspector

Run:

npx @modelcontextprotocol/inspector python server.py

Expected output will be similar to:

Starting MCP inspector...

MCP Inspector Web is up and running at:
http://localhost:6274?MCP_INSPECTOR_API_TOKEN=...

Sandbox (MCP Apps):
http://localhost:xxxxx/sandbox

Auth token: ...

Opening browser...

The port numbers and authentication token can change every time MCP Inspector starts.

The browser should open MCP Inspector automatically.


Quick Run Commands

For normal development, use:

cd D:\MCP_Server

.\venv\Scripts\Activate.ps1

python -m py_compile server.py

python database.py

npx @modelcontextprotocol/inspector python server.py

For additional server verification, run:

python -c "from server import mcp; print('Server loaded successfully')"

Using MCP Inspector

After MCP Inspector opens:

  1. Open the Tools section.

  2. Select add_daily_work_log.

  3. Enter the work log information.

  4. Click Execute Tool.

  5. Select list_daily_work_logs.

  6. Execute the tool to verify that the record was stored.

  7. Use update_work_status to mark a work log as Done.

  8. Use delete_daily_work_log when a record needs to be removed.

  9. Use get_work_summary to view the overall internship work summary.


Data Flow

    MCP Inspector
          |
          v
      MCP Tool
          |
          v
      server.py
          |
          v
     database.py
          |
          v
        SQLite
          |
          v
    intern_tracker.db
          |
          v
    daily_work_log

For example:

User enters Daily Work Log
          |
          v
   add_daily_work_log
          |
          v
    INSERT SQL Query
          |
          v
   intern_tracker.db
          |
          v
  daily_work_log table

Viewing Stored Data

The intern_tracker.db file is a binary SQLite database file, so it should not be opened as a normal text file.

Use a SQLite viewer/editor extension in VS Code.

Open:

intern_tracker.db

Then select:

TABLES
   └── daily_work_log

The stored records will be displayed in table format.

You can also verify the data from the terminal:

python -c "import sqlite3; con=sqlite3.connect('intern_tracker.db'); rows=con.execute('SELECT * FROM daily_work_log').fetchall(); print(rows); con.close()"

Current Project Status

The following functionality has been completed:

  • Python MCP server setup

  • FastMCP integration

  • SQLite database setup

  • Daily Work Log table

  • Add Daily Work Log

  • List Daily Work Logs

  • Update Work Status

  • Delete Daily Work Log

  • Work Summary

  • Automatic day calculation

  • Default To Do status

  • MCP Inspector integration

  • SQLite data persistence

  • End-to-end MCP tool testing


Future Development

Future versions of the project can include:

  • MCP Resources

  • MCP Prompts

  • Additional validation

  • Duplicate work-date handling

  • Improved reporting and summaries


Developer

Soham Thoke

AI Engineering Intern


Project Purpose

This project was developed to understand and implement a Python-based MCP server while building a practical internship Daily Work Log tracking system using MCP tools and SQLite.

F
license - not found
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • F
    license
    -
    quality
    D
    maintenance
    Enables recording, querying, and summarizing daily work entries with tags using a local SQLite database. Supports work logging, search, timeline queries, tag management, and automated reminders for tracking daily tasks.
    Last updated
  • F
    license
    -
    quality
    D
    maintenance
    Enables project and task management through a lightweight SQLite database, allowing users to create projects, add categorized tasks, track status changes, and get project statistics through natural language commands.
    Last updated
  • F
    license
    -
    quality
    D
    maintenance
    Enables natural language task management including logging, updating, and summarizing productivity activities across multiple categories using a local SQLite database. It allows users to manage workflows and generate time-based summaries through standardized Model Context Protocol tools.
    Last updated
    1

View all related MCP servers

Related MCP Connectors

  • Manage projects, tasks, time tracking, and team collaboration through natural language.

  • Manage your MakeMeBetter AI tasks, habits, and goals from your AI assistant.

  • Track time on usetimebook.com - start/stop timers, log entries, list projects/clients.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/iamsoham25/MCP-Task-Tracker'

If you have feedback or need assistance with the MCP directory API, please join our Discord server