Skip to main content
Glama

šŸ”§ Simple Code Review Assistant - MCP Assignment

Assignment Duration: 6-8 Hours
Target Audience: Intermediate Level Developers
Focus: Model Context Protocol (MCP) Basics

šŸŽÆ Learning Objectives

By completing this assignment, you will:

  • Build a basic MCP server using Model Context Protocol

  • Implement simple tool interfaces for AI models

  • Practice GitHub API integration

  • Understand how AI models connect to external data sources

šŸ“‹ Prerequisites

  • Python 3.11+ experience

  • Basic understanding of REST APIs

  • Familiarity with GitHub API

  • Basic knowledge of AI/LLM concepts

šŸš€ Quick Start

1. Environment Setup

# Clone and navigate to project cd MCPAssignment # Create virtual environment python3 -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate # Install dependencies pip install -r requirements.txt

2. Configuration

Create .env file in the project root:

GITHUB_TOKEN=your_github_token_here GITHUB_REPO_OWNER=your_github_username GITHUB_REPO_NAME=your_repository_name

3. Run the MCP Server

# Start the MCP Server python server.py # Test the server (in another terminal) python client.py

šŸ“ Project Structure

mcp-code-review/ ā”œā”€ā”€ README.md # Your implementation documentation ā”œā”€ā”€ requirements.txt # Dependencies ā”œā”€ā”€ .env.example # Environment template ā”œā”€ā”€ server.py # Single MCP Server file ā”œā”€ā”€ client.py # Simple client to test server └── docs/ ā”œā”€ā”€ api_guide.md # Sample documentation └── setup_guide.md # Sample documentation

šŸ—ļø System Architecture

MCP Tools (Keep it Simple!)

Tool

Purpose

Implementation

get_repository

Get repo info from GitHub

GitHub API call

search_docs

Search local documentation

Simple file search

get_file_content

Read file from repo

GitHub API call

Simple Flow

Client → MCP Server → GitHub API / Local Files → Response

šŸ“‹ Core Requirements (Simplified)

Must-Have Features (6-8 hours scope)

  1. Basic MCP Server

    • Implement ONE MCP server file (server.py)

    • Support 3 simple tools (listed above)

    • Follow basic MCP protocol

    • Handle errors gracefully

  2. GitHub Integration

    • Connect to GitHub API using token

    • Implement get_repository tool

    • Implement get_file_content tool

    • Add basic rate limiting

  3. Documentation Search

    • Implement search_docs tool for local files

    • Search through markdown files in /docs folder

    • Return relevant file content

    • Support simple keyword matching

  4. Simple Client

    • Create client.py to test your MCP server

    • Demonstrate all 3 tools working

    • Show real GitHub data retrieval

    • Display search results

šŸ”§ Implementation Steps

Step 1: Setup

pip install mcp requests # Create basic file structure # Setup GitHub token

Step 2: Basic MCP Server

  • Implement MCP protocol basics

  • Add the 3 required tools

  • Test with simple responses

Step 3: GitHub Integration

  • Connect to GitHub API

  • Implement repository and file tools

  • Add error handling

  • Create simple file search

  • Add sample documentation files

  • Test search functionality

Step 5: Client & Testing

  • Build simple client

  • Test all tools

  • Create demo

šŸ“ Submission Requirements (Minimal)

Required Files

  • āœ… server.py - Working MCP server

  • āœ… client.py - Simple test client

  • āœ… requirements.txt - Dependencies

  • āœ… .env.example - Environment template

  • āœ… Sample docs in /docs folder

Demo Requirements

  • āœ… Show MCP server starting up

  • āœ… Demonstrate GitHub repository access

  • āœ… Show documentation search working

  • āœ… Explain your implementation approach

šŸ”— Resources

šŸ”§ Development Commands

# Start MCP Server python server.py # Test with client (in another terminal) python client.py --test-all # Test individual tools python client.py --test-github python client.py --test-docs
-
security - not tested
F
license - not found
-
quality - not tested

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/Sharath-ts-07/MCPAssignment'

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