=== NEW SERVERS ADDED (7) === - servers/closebot — 119 tools, 14 modules, 4,656 lines TS (Stage 7) - servers/google-console — Google Search Console MCP (Stage 7) - servers/meta-ads — Meta/Facebook Ads MCP (Stage 8) - servers/twilio — Twilio communications MCP (Stage 8) - servers/competitor-research — Competitive intel MCP (Stage 6) - servers/n8n-apps — n8n workflow MCP apps (Stage 6) - servers/reonomy — Commercial real estate MCP (Stage 1) === FACTORY INFRASTRUCTURE ADDED === - infra/factory-tools — mcp-jest, mcp-validator, mcp-add, MCP Inspector - 60 test configs, 702 auto-generated test cases - All 30 servers score 100/100 protocol compliance - infra/command-center — Pipeline state, operator playbook, dashboard config - infra/factory-reviews — Automated eval reports === DOCS ADDED === - docs/MCP-FACTORY.md — Factory overview - docs/reports/ — 5 pipeline evaluation reports - docs/research/ — Browser MCP research === RULES ESTABLISHED === - CONTRIBUTING.md — All MCP work MUST go in this repo - README.md — Full inventory of 37 servers + infra docs - .gitignore — Updated for Python venvs TOTAL: 37 MCP servers + full factory pipeline in one repo. This is now the single source of truth for all MCP work.
1.9 KiB
1.9 KiB
Copyright (c) 2025 Scott Wilcox
SPDX-License-Identifier: AGPL-3.0-or-later
MCP STDIO Testing Module
This module provides tools for testing MCP servers that use Standard Input/Output (STDIO) as the transport layer.
Components
- tester.py: Core
MCPStdioTesterclass that implements the test suite - utils.py: Helper utilities for server process management and other common tasks
- cli.py: Command-line interface for running tests
Usage
From the Command Line
The STDIO testing module can be run directly from the command line:
# Using the bin script
./bin/stdio_test python /path/to/your/server.py
# Using Python module import
python -m mcp_testing.stdio.cli python /path/to/your/server.py
From Python Code
You can also use the module programmatically:
from mcp_testing.stdio.tester import MCPStdioTester
# Create tester with server command
tester = MCPStdioTester("python /path/to/your/server.py", debug=True)
# Run all tests
tester.run_all_tests()
# Or run specific tests
tester.start_server()
tester.initialize()
tester.list_tools()
tester.test_echo_tool()
tester.stop_server()
Test Coverage
The STDIO testing module currently tests:
- Server Start: Verifies that the server process starts successfully
- Initialization: Tests the server's ability to initialize and return a session ID
- Tools Listing: Verifies that the server can list available tools
- Tool Execution: Tests basic tool execution (echo, add)
- Async Tools: Tests async tool execution with the sleep tool
Adding New Tests
To add new tests, add methods to the MCPStdioTester class in tester.py. Tests should:
- Return
Trueif passing,Falseif failing - Print clear error messages
- Handle exceptions gracefully
Add your new test method to the list in the run_all_tests method to include it in the full test suite.