Skip to main content

MCP server and CLI for API management, security scanning, and Playwright test generation — powered by Claude

Project description

Maeris

Test, scan, and manage your APIs — right from your terminal or AI editor.

PyPI Python License

Maeris connects your codebase to the Maeris Portal, giving you the tools to generate UI tests, extract API definitions, run security scans, and manage everything through a simple CLI or your AI assistant.


Highlights

Generate UI Tests

Scans your frontend code and produces ready-to-run Playwright tests — grounded in your actual source, not guesswork.

Extract APIs

Finds API endpoints across your codebase and catalogs them into organized collections.

Security Scanning

Checks your code against OWASP Top 10 vulnerabilities with AI-guided static analysis.

API Management

Create, organize, and run APIs with collections, environments, and multi-step flows.

Test Management

Run tests, auto-fix broken selectors, track coverage, and export reports.

Portal Sync

Push everything to Maeris Portal so your whole team stays in the loop.


Installation

pip install maeris

Requirements: Python 3.10+ and Claude Code for AI-powered features.


Quick Start

# 1. Set up Maeris in your project
cd your-project
maeris app init

# 2. Restart your editor to pick up the MCP config

# 3. (Optional) Sign in for portal features
maeris auth login

That's it. Now you can use Maeris from the CLI or just ask your AI assistant:

From the CLI From your AI assistant
maeris scan security
maeris scan api
maeris test generate
maeris test run

"Scan this repo for security issues"

"Extract all API endpoints from my codebase"

"Generate UI tests for the login flow"


CLI Reference

Setup & Authentication
Command What it does
maeris app init Set up Maeris for this project
maeris auth login Sign in to Maeris Portal
maeris auth logout Sign out
maeris auth status Check who you're logged in as
maeris doctor Diagnose setup issues
Test Generation & Management
Command What it does
maeris test generate Generate Playwright tests from your source code
maeris test run Run tests (filter with --name, --folder, --smoke, --regression)
maeris test list List all test cases
maeris test import <file> Import existing Playwright/Cypress/Selenium tests
maeris test fix Auto-fix broken test selectors using AI
maeris test recalibrate Regenerate tests after UI changes
maeris test delete Delete test cases

Test Folders

Command What it does
maeris folder create --name "Login Tests" Create a folder to organize tests
maeris folder list List all test folders
maeris folder delete Delete a folder
Scanning
Command What it does
maeris scan security Run a security scan (OWASP Top 10)
maeris scan api Extract API definitions from source code
maeris scan push Push scan results to the portal

Use --quick for a fast scan or --deep for thorough analysis.

API Management
Command What it does
maeris api list List all APIs
maeris api get <name> View API details
maeris api create --name N --method GET --url /path Create an API
maeris api bulk Create multiple APIs at once
maeris api update <name> Update an API
maeris api delete <name> Delete an API
maeris api move <name> --to-collection C Move to a collection
maeris api clone <name> Duplicate an API
maeris api import Import from Postman
maeris api param add <api> Add headers or query params
Collections
Command What it does
maeris collection list List all collections
maeris collection create --name "Auth APIs" Create a collection
maeris collection get <name> View collection details
maeris collection clone <name> Deep-copy a collection
maeris collection rename <name> Rename a collection
maeris collection delete <name> Delete a collection
Environments
Command What it does
maeris env list List all environments
maeris env create --name "Staging" Create an environment
maeris env rename <name> Rename an environment
maeris env delete <name> Delete an environment
maeris env data list <env> View environment variables
maeris env data add <env> Add variables to an environment
maeris env data update <env> Update a variable
API Flows
Command What it does
maeris flow list List all flows
maeris flow create --name "Checkout" Create a flow
maeris flow run <name> Execute a flow end-to-end
maeris flow map set <flow> Define the step sequence
maeris flow param add <flow> Add parameter mappings between steps
Assertions
Command What it does
maeris assertion list List all assertions
maeris assertion create --api A --nature N --type T --value V Create an assertion
maeris assertion update Update an assertion
maeris assertion delete Delete an assertion
Coverage & Reports
Command What it does
maeris coverage ui View UI test coverage by feature area
maeris coverage api View API test coverage
maeris report tests Export a test report (HTML, JSON, or CSV)
maeris report coverage Export a coverage report
maeris report security Export a security scan report
Repair & Maintenance
Command What it does
maeris repair ui Fix broken CSS selectors in tests
maeris repair api Reconcile stale API references
maeris repair flow Repair flow parameter mappings
maeris repair contract Validate API contracts
maeris baseline generate Build a full baseline test suite
Push to Portal
Command What it does
maeris push tests --folder "Smoke" Push generated tests to Maeris Portal
Configuration & Other
Command What it does
maeris listen Listen for commands from the Maeris web UI
maeris config set <key> <value> Set a CLI config value
maeris config get <key> Read a config value
maeris config completions Output shell completions (bash/zsh)
maeris welcome Show the onboarding screen

Linking Additional Repos

If your tests need context from another repository (e.g., a shared component library):

maeris app link ../my-frontend-repo     # Add context source
maeris app links                         # See all linked repos
maeris app unlink ../my-frontend-repo   # Remove a link

Troubleshooting

maeris doctor

Checks your Python version, CLI installation, editor config, credentials, and backend connectivity — and tells you exactly what to fix.


How It Works

Maeris runs as an MCP server alongside your AI editor. When you ask your assistant to scan code or generate tests, it calls Maeris tools under the hood.

┌──────────┐     ┌─────────────┐     ┌──────────────────┐     ┌────────────────┐
│ Your Code │────▶│ Claude Code │────▶│ Maeris MCP Server│────▶│ Maeris Portal  │
│          │◀────│             │◀────│  (runs locally)  │◀────│(cloud dashboard)│
└──────────┘     └─────────────┘     └──────────────────┘     └────────────────┘

All scanning and test generation happens on your machine. Only results you explicitly push leave your local environment.


Portal  ·  Discord  ·  Support

MIT License

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

maeris-0.9.0b4.tar.gz (654.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

maeris-0.9.0b4-py3-none-any.whl (639.9 kB view details)

Uploaded Python 3

File details

Details for the file maeris-0.9.0b4.tar.gz.

File metadata

  • Download URL: maeris-0.9.0b4.tar.gz
  • Upload date:
  • Size: 654.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.11

File hashes

Hashes for maeris-0.9.0b4.tar.gz
Algorithm Hash digest
SHA256 2828ae661a2a3f4dd842102e80e1a4cb95cf75560f6faafbc9917a34b34623fc
MD5 8b37368821d81b88a73fe9620f74fdf3
BLAKE2b-256 f8cf6da4bbcba82a73e15a297892476c487874592ae9304f7a9a5d98676ac16e

See more details on using hashes here.

File details

Details for the file maeris-0.9.0b4-py3-none-any.whl.

File metadata

  • Download URL: maeris-0.9.0b4-py3-none-any.whl
  • Upload date:
  • Size: 639.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.11

File hashes

Hashes for maeris-0.9.0b4-py3-none-any.whl
Algorithm Hash digest
SHA256 d1e668a5127ff19acff456168599f6409a1fbf5ec7557d6c65dec75b8ef9c56f
MD5 4216d46594827b2f0b8b2bd05aec4863
BLAKE2b-256 2849b4c6ec053c095d2533b738ebd5ab9416da964d485cba14391ef1040c7ffb

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page