## ๐ Start with a request. Grow into a platform.
**Multimeter** is Git-native API testing in VS Code. Requests, tests, mocks, and docs are YAML `.mmt` files in your repo.
Start with a single HTTP request.
Grow into tests, suites, mocks, reports, documentation, and CI when you need them.
All in the same tool. No migration. No second product.
## ๐ฏ What you get
**Simple by default**
- โ
Git-native, file-based YAML
- โ
Lightweight โ no account, no cloud lock-in
- โ
Collaboration through pull requests, like code
- โ
The same files locally and in CI
**A full testing platform when you need it**
- โ
HTTP, WebSocket, GraphQL, and gRPC
- โ
Multi-step flows and test suites
- โ
Mock servers
- โ
Generated documentation
- โ
Reports
- โ
CI with `testlight`
**AI in the same files**
- โ
Generate tests from an API or a description (Cursor, Copilot, Claude via MCP)
- โ
Judge replies โ semantic similarity, or open-ended checks like how funny a response is
- โ
Bring your own model (Ollama or cloud)
[See all features โ](https://mmt.dev/#features)
## โก Start simple
Multimeter is a VS Code-native extension. All you need:
- Click Install button in [Multimeter VS Code Extension](https://marketplace.visualstudio.com/items?itemName=mshobeyri.multimeter)
- Open **Get Started** from the `Activity bar` and follow the instructions
There you run a POST request as follows:
```yaml
type: api
title: Simple POST
url: https://test.mmt.dev/echo
method: post
format: json
body:
message: hello
```
That's enough.
- No suites.
- No mocks.
- No workflows.
- No complexity.
## ๐งช Need tests?
```yaml
type: test
steps:
- http: https://test.mmt.dev/echo
method: get
expect:
status: 200
```
- Still simple.
- Still Git-native.
- Still easy to review.
## ๐ Scale without switching tools
As your project grows, Multimeter grows with it.
Add:
- Test suites
- Mock servers
- Documentation
- Workflow execution
- Structured reporting
- CI artifacts
**Only when you need them.**
Everything stays in the same ecosystem.
[See all examples โ](./examples)
## ๐ค MCP, AI generation, and AI judges
Cursor, Copilot, and Claude write and run the same `.mmt` files you edit in VS Code. MCP (`mmt-mcp`) gives them `scaffold_test`, `validate`, `format`, and `run` โ generate tests from an API or a description, then keep them in Git.
**Judge** an API answer in the same test. Compare semantic similarity to an expected reply, or check something open-ended โ for example, how funny the response is. Bring your own model (Ollama or cloud). An alternative to a separate Promptfoo eval stack.
See [MCP docs](https://mmt.dev/docs/features/mcp) ยท [Judge docs](https://mmt.dev/docs/files/judge)
## ๐ Built for reliable CI
Multimeter validates test definitions before execution.
That means:
- โ
Earlier feedback
- โ
More deterministic execution
- โ
Fewer surprises in CI
- โ
Easier debugging
- โ
Reproducible results
GitHub Actions:
```yaml
- uses: actions/checkout@v6
- uses: mshobeyri/testlight-action@v1
with:
file: tests/suite.mmt
report: junit
report-file: results/junit.xml
```
Or from a terminal using the Multimeter CLI called `testlight`.
```sh
npm install -g mmt-testlight
testlight run tests/suite.mmt
```
See the [GitHub Action](https://github.com/mshobeyri/testlight-action) and [Testlight install](https://mmt.dev/docs/features/testlight/install).
## ๐ฆ Everything stays in Git
Your code, tests, mocks, documentation, reports, and environment settings live in the same repository.
- โ
Version controlled
- โ
Code and tests evolve together
- โ
Reviewable through pull requests
- โ
Easy to move and share
- โ
No platform lock-in
- โ
AI can update code and tests together
- โ
Environment variables never go missing
- โ
Historical test results stay with the project
## ๐ง Philosophy
Most API tools focus on requests.
Multimeter focuses on behavior.
Instead of asking:
> "Did this request return the expected response?"
Multimeter helps you answer:
> "Does this system still behave correctly?"
---
## License
Multimeter is licensed under the [Apache License 2.0](LICENSE.md).
[Demos](https://mmt.dev/demos) ยท [Documentation](./docs/toc.md) ยท [Website](https://mmt.dev) ยท [GitHub](https://github.com/mshobeyri/multimeter)