Skip to content

rudrathkr/MCPServerCreationPythonSDK

Repository files navigation

MCP Server Demo

This project contains Python MCP servers for QA-oriented test failure analysis, built with FastMCP.

image

Current Structure

mcp-server-demo/
├── FailureAnalysisFromLogs.py
├── README.md
├── logs/
├── pyproject.toml
├── testFailureAnalysis.py
└── uv.lock

What This Project Includes

  • testFailureAnalysis.py
    • analyze_test_failure
    • cluster_failures
    • detect_flaky_tests
  • FailureAnalysisFromLogs.py
    • analyze_test_failure
    • Reads and classifies local .log files from the logs/ folder
  • logs/
    • Sample failure logs used by the log-based MCP server
  • pyproject.toml
    • Python version and dependency configuration
  • uv.lock
    • Locked dependency versions for reproducible installs
  • .vscode/mcp.json
    • MCP server entries for test-failure-analysis, test-failure-analysis-from-logs, and mcp-atlassian

Prerequisites

  • Python 3.11 or later
  • uv
  • Internet access for the first dependency install

Installation

From the repository root:

cd mcp-server-demo
uv sync

Running the Server

Start the input-based MCP server with:

uv run python testFailureAnalysis.py

Start the log-based MCP server with:

uv run python FailureAnalysisFromLogs.py

Available Tools

analyze_test_failure

Analyzes a failed test using the test name, stack trace, and logs, then returns a likely failure category and recommendation.

analyze_test_failure in FailureAnalysisFromLogs.py

Analyzes local .log files from the logs/ folder and returns failure classification, likely root cause, recommendation, and important error lines. It can analyze all logs, a specific test name, or an exact log file name.

cluster_failures

Groups similar failures by stack trace signature so repeated patterns are easier to spot.

detect_flaky_tests

Reviews historical pass/fail results and identifies tests that show flaky behavior.

Optional Local MCP Configuration

The repository root contains .vscode/mcp.json, which can be used by MCP-aware tooling for local server setup during development. It includes entries for test-failure-analysis, test-failure-analysis-from-logs, and mcp-atlassian.

Atlassian MCP

The local MCP configuration includes an mcp-atlassian server entry for Jira access.

How to use it

Use the configured mcp-atlassian entry from .vscode/mcp.json in your MCP-aware client.

To run it manually, use:

JIRA_URL=<your-jira-url> \
JIRA_USERNAME=<your-jira-username> \
JIRA_API_TOKEN=<your-jira-api-token> \
uvx mcp-atlassian

Troubleshooting

  • If uv is not available, install it and reopen the terminal.
  • If dependency installation fails, confirm Python 3.11+ is active.
  • If the server does not start, run uv sync again inside mcp-server-demo.

Work Flow Image in Image folder at image/project-workflow.png

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages