mcpField
M
MCP Testing Library

MCP Testing Library

Local
github.com/moekiorgDeveloper Tools0Updated 81w ago

About MCP Testing Library

MCP Testing Library is a TypeScript CLI and test utility for developers validating MCP servers. It runs selected test files or patterns and offers configurable timeouts, exclusions, and verbose output.

Key features

  1. 01Run MCP tests from the CLI
  2. 02Select files or match patterns
  3. 03Configure timeouts and exclusions
  4. 04Use test utilities in TypeScript code
  5. 05Verbose and colorized output

Use cases

  1. 01Run a single MCP server test file
  2. 02Test files matching a project pattern
  3. 03Extend timeouts for slower tests

MCP support

It provides CLI and code-level utilities for running tests against MCP servers and is compatible with the Model Context Protocol SDK.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

No install method listed yet

We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.

Repository

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

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

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.