Writing
MCP Servers for Agents You Don't Trust
Most MCP servers assume a human is watching. When they're not, use usepaso serve --strict to enforce consent gates at the server level.
MCP vs REST vs GraphQL: What Changes When AI is the Client
REST and GraphQL were built for human-operated clients. MCP was built for agents. Here's how they differ and where paso fits.
The Complete Guide to MCP Servers
Everything you need to know about MCP servers: what they are, how to build one, testing, permissions, performance, and connecting to AI agents.
What is a paso Declaration?
A paso declaration is 30 lines of YAML that turn your API into an MCP server. Here's what every field does.
paso vs. Writing MCP Servers by Hand
A structured comparison of generating MCP servers from YAML declarations versus writing them manually with the MCP SDK. When to use each approach.
What Happens When an Agent Calls DELETE
AI agents with API access can create, modify, and delete data. Without permission boundaries, that's a problem. Here's how to control it.
How to Create an MCP Server
Two ways to create an MCP server: write TypeScript by hand, or declare YAML and let paso generate it. Side-by-side comparison with code for both.
paso Works the Same in Python
Node.js and Python. Same declaration, same CLI, same output. Pick the one your team uses.
Why We Built paso
Why we built paso: declare your API once in YAML, get a live MCP server that any AI agent can use. No per-protocol integration code, no lock-in.