Skip to main content
Glama
by JoseGarayar

MCP Employee API Server

A Model Context Protocol (MCP) server that provides tools for managing employee data through a REST API. This server exposes employee management operations as MCP tools that can be used by AI assistants and other MCP clients.

Features

  • Employee Management: Full CRUD operations for employee data

  • REST API Integration: Connects to a local employee API server

  • MCP Protocol: Exposes functionality through the Model Context Protocol

  • Async Operations: Built with async/await for optimal performance

  • Error Handling: Robust error handling for API requests

Available Tools

The server provides the following MCP tools:

  • get_employees() - Retrieve all employees

  • get_employee(id) - Get a specific employee by ID

  • add_employee(name, age) - Create a new employee

  • update_employee(id, name, age) - Update an existing employee

  • delete_employee(id) - Delete an employee by ID

Prerequisites

  • Python 3.13 or higher

  • A running employee API server at http://localhost:8000

Installation

  1. Clone the repository:

    git clone https://github.com/JoseGarayar/mcp_test.git cd mcp_test
  2. Clone the api employee repository:

    git clone https://github.com/JoseGarayar/api_employees.git
  3. Install dependencies using uv:

    uv sync

Usage

Running the MCP Server

Start the MCP server using stdio transport:

uv run python main.py

The server will run and listen for MCP protocol messages via stdin/stdout.

API Configuration

The server is configured to connect to a local API server at http://localhost:8000. You can modify the URL_BASE constant in main.py to point to a different API endpoint.

Example API Endpoints

The server expects the following API endpoints to be available:

  • GET /employees - List all employees

  • GET /employees/{id} - Get employee by ID

  • POST /employees - Create new employee

  • PUT /employees/{id} - Update employee

  • DELETE /employees/{id} - Delete employee

Development

Project Structure

mcp_test/ ├── main.py # Main MCP server implementation ├── pyproject.toml # Project configuration and dependencies ├── README.md # This file └── uv.lock # Lock file for dependencies

Dependencies

  • httpx - Async HTTP client for API requests

  • mcp[cli] - Model Context Protocol implementation

Development Dependencies

  • ruff - Python linter and formatter

Error Handling

The server includes comprehensive error handling:

  • Network timeouts (30 seconds)

  • HTTP error status codes

  • Invalid HTTP methods

  • Connection failures

All errors are gracefully handled and return None for failed operations.

License

This project is part of a test implementation for MCP server development.

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/JoseGarayar/mcp_test'

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