8000 GitHub - moeki0/mcp-testing-library: Test environment for MCP servers
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

moeki0/mcp-testing-library

Repository files navigation

MCP Testing Library

A CLI tool for running Model Context Protocol (MCP) tests.

Features

  • CLI tool for running MCP tests
  • Supports running individual test files or test patterns
  • Configurable test timeout and exclusion patterns
  • Verbose mode for detailed output
  • Written in TypeScript with full type support
  • Compatible with the Model Context Protocol SDK
  • Colorful test output for better readability
  • Comprehensive test coverage

Installation

To install as a development dependency in your project:

npm install --save-dev mcp-testing-library

Usage

Command Line Options

Usage: mcpt [options] [test-files...]

Options:
  -v, --version             output version number
  -e, --exclude <patterns>  Exclude files matching the pattern (comma-separated)
                           (default: "**/node_modules/**,**/dist/**")
  -t, --timeout <ms>        Set test timeout in milliseconds (default: "30000")
  --pattern <glob>          Test file pattern to match (default: "**/*.test.{js,ts}")
  --no-color                Disable colored output
  -h, --help                display help for command

Examples

Run all tests in the project:

mcpt

Run a specific test file:

mcpt sample/index.test.ts

Run tests with a longer timeout:

mcpt --timeout 10000

Run tests without color output:

mcpt --no-color

Exclude specific directories:

mcpt --exclude "**/node_modules/**,**/dist/**,**/build/**"

Using in Code

You can also use the MCP test utilities directly in your code:

import { mcpt, expect } from 'mcp-testing-library';

// Test a filesystem MCP server
mcpt(
  {
    command: 'npx',
    args: ['-y', '@modelcontextprotocol/server-filesystem', '/path/to/directory'],
  },
  async ({ tools, prompts, resources, isMethodExist }) => {
    expect(tools.length).to.be.greaterThan(0);
    expect(await isMethodExist('list-tools')).to.eq(true);

    // More assertions...
  }
);

License

MIT

About

Test environment for MCP servers

Resources

Stars

Watchers

Forks

Packages

No packages published
0