# mcp-pay > mcp-pay is a payment-awareness layer for the Model Context Protocol. It defines a JSON manifest at /.well-known/mcp/pay.json, ships a Rust reference server that returns HTTP 402 on paid tools, and is rail-agnostic across x402, MPP, Lightning, and card. Status: v0.1 draft from Neul Labs. mcp-pay complements SEP-2127 (MCP Server Card). The manifest declares pricing per tool, accepted payment rails, and a payment-specific SLA. The 402 flow uses X-PAYMENT-REQUIRED and X-PAYMENT headers; verification happens server-to-facilitator. Reference implementation is in Rust (axum) with three crates: mcp-pay-schema, mcp-pay-server, mcp-pay-cli. ## Docs - [Home](https://mcp-pay.neullabs.com/): Overview, schema example, 402 flow, and supported rails - [About](https://mcp-pay.neullabs.com/about/): Why mcp-pay exists, what it is and is not, and how it fits with SEP-2127 - [Writing](https://mcp-pay.neullabs.com/blog/): Engineering notes on the spec, the flow, and metering - [Docs (canonical)](https://docs.neullabs.com/mcp-pay/): Full developer documentation - [GitHub](https://github.com/neul-labs/mcp-pay): Source, schema, reference server ## Compare - [vs L402](https://mcp-pay.neullabs.com/compare/l402/) - [vs x402 (Coinbase)](https://mcp-pay.neullabs.com/compare/x402/) ## Optional - [RSS](https://mcp-pay.neullabs.com/rss.xml): Writing feed - [llms-full.txt](https://mcp-pay.neullabs.com/llms-full.txt): Long-form facts for LLM ingestion