MCP.so
Sign In
Servers

APILinter MCP Server

@jbovet

The OpenAPI MCP Server powers seamless communication using agents and REST APIs by implementing the Model Context Protocol

Overview

What is APILinter MCP Server?

APILinter MCP Server enables seamless communication between LLMs and REST APIs by implementing the Model Context Protocol (MCP). It integrates with the Zally API Linter to validate and analyze OpenAPI/Swagger specifications, providing tools for linting, quality scoring, and design review.

How to use APILinter MCP Server?

Clone the repository, install dependencies with npm install, and build with npm run build. Configure environment variables (e.g., PORT, APILINTER_URL), run Zally server separately, then start the MCP server with npm run dev. Use the provided tools (validate_api_specification, list_rules, etc.) and prompts (api_design_review) via an MCP client or the included example interactive client (npx tsx example/simpleStreamableHttp.ts).

Key features of APILinter MCP Server

  • Implements MCP Streamable HTTP transport (stateless)
  • Provides five tools for API linting and quality scoring
  • Includes pre-configured api_design_review prompt
  • Supports retry logic and circuit breaker patterns
  • Structured logging, metrics, health checks, and error handling
  • Input validation and origin validation for security

Use cases of APILinter MCP Server

  • Validate an API specification against Zally linting rules
  • List available linting rules filtered by active status
  • Calculate a quality score for an OpenAPI specification
  • Retrieve rule categories from the API linter
  • Obtain structured design feedback on an API specification

FAQ from APILinter MCP Server

What runtime dependencies does it require?

It requires Node.js, npm, and a running Zally server (see Zally’s quick start guide).

How does it handle service failures?

It implements retry logic (configurable via RETRY_COUNT) and a circuit breaker (threshold configurable via CIRCUIT_BREAKER_THRESHOLD) to gracefully handle transient failures.

What transport protocols are supported?

Only MCP Streamable HTTP transport is implemented. SSE and STDIO transports are not planned.

Where does API specification data live?

Data is sent to the API linter service (configured via APILINTER_URL) for validation; the server itself is stateless and does not persist specification content.

Is authentication supported?

MCP authentication is not implemented, as the README states it is "not necessary". Origin validation (localhost only in development) is used for security.

More from Other