# JustDocs developer docs > Build on JustDocs. Connect AI agents through the MCP server, call the REST API, and receive signed webhooks. A person approves before anything is sent. Each page is also available as Markdown, at its address with `.md` (for a section such as https://tryjustdocs.com/docs/mcp/, https://tryjustdocs.com/docs/mcp.md), as linked below. The REST API's OpenAPI description is at https://tryjustdocs.com/openapi.json and the MCP server is at https://tryjustdocs.com/mcp. ## Get started - [Overview](https://tryjustdocs.com/docs/get-started/index.md): What you can build on JustDocs, the records you work with, and how keys, permissions and approvals fit together. - [Quick start](https://tryjustdocs.com/docs/get-started/quickstart.md): From any JustDocs workspace to a document an agent prepared, a person approved, and a recipient signed. - [Plans and limits](https://tryjustdocs.com/docs/get-started/plans-and-limits.md): What each plan includes for agents and developers, and every limit on keys, calls, requests, approvals and webhooks. ## MCP server - [MCP server](https://tryjustdocs.com/docs/mcp/index.md): The JustDocs MCP server. It uses Streamable HTTP at tryjustdocs.com/mcp, takes OAuth sign-in or agent keys, and offers fourteen tools that work under a person's approval. - [Connect a client](https://tryjustdocs.com/docs/mcp/connect.md): Connect Claude, ChatGPT, Muse, Claude Code, Cursor, VS Code, connector platforms or any MCP client to the JustDocs MCP server, by signing in with OAuth or with an agent key. - [Sign in with OAuth](https://tryjustdocs.com/docs/mcp/oauth.md): How MCP clients such as Claude, ChatGPT and Claude Code sign in to the JustDocs MCP server with OAuth 2.1, what the person approving sees, what connecting makes, and the endpoints for client developers. - [Tools](https://tryjustdocs.com/docs/mcp/tools.md): The 14 tools of the JustDocs MCP server, with their inputs, permissions and annotations, and which ones wait for a person's approval. - [Safety model](https://tryjustdocs.com/docs/mcp/safety.md): How JustDocs keeps agents safe. A person approves every send, keys and connected apps have least privilege, no tool can sign, and every action leaves a trail. - [Troubleshooting](https://tryjustdocs.com/docs/mcp/troubleshooting.md): What the JustDocs MCP server's errors mean, from signing in with OAuth to 401, 403, 405, 406 and 429, and how to fix each one. ## REST API - [REST API](https://tryjustdocs.com/docs/api/index.md): The JustDocs REST API at /api/v1. It uses bearer keys and JSON, takes idempotent retries, and is described by OpenAPI 3.1. - [Keys and permissions](https://tryjustdocs.com/docs/api/keys.md): JustDocs API keys and agent keys. Covers who can make them, their permissions, recipient domains, daily limits, expiry, approval and revocation. - [Idempotency](https://tryjustdocs.com/docs/api/idempotency.md): Retry JustDocs create and send calls safely with an Idempotency-Key, so a network failure never creates or sends something twice. - [Errors and rate limits](https://tryjustdocs.com/docs/api/errors.md): The JustDocs API's error format, what each status means, and how its rate limits work. - [Pagination](https://tryjustdocs.com/docs/api/pagination.md): How JustDocs list operations page through results with next_cursor. - [Endpoint reference](https://tryjustdocs.com/docs/api/reference/index.md): Every operation of the JustDocs REST API, generated from its OpenAPI description. - [Get the key's workspace](https://tryjustdocs.com/docs/api/reference/get-workspace.md): GET /api/v1/workspace. Its name, plan and saved templates, and what the key may do. Needs the read permission. - [Create a template](https://tryjustdocs.com/docs/api/reference/create-template.md): POST /api/v1/templates. From text with fill-ins and signing fields, or copied from a library entry. It emails no one, so it needs no approval. Needs the documents permission. - [List templates](https://tryjustdocs.com/docs/api/reference/list-templates.md): GET /api/v1/templates. 100 at a time, newest first. Needs the read permission. - [Get a template](https://tryjustdocs.com/docs/api/reference/get-template.md): GET /api/v1/templates/{id}. With its fill-ins and the intake form that answers them, so you know what to supply. Needs the read permission. - [Start a document from a template](https://tryjustdocs.com/docs/api/reference/start-document.md): POST /api/v1/documents. Fills it with values or form answers. Needs the documents permission. - [Get a document](https://tryjustdocs.com/docs/api/reference/get-document.md): GET /api/v1/documents/{id}. Needs the read permission. - [Create a signing request, and optionally send it](https://tryjustdocs.com/docs/api/reference/create-signing-request.md): POST /api/v1/signing-requests. Needs the send permission. - [List signing requests](https://tryjustdocs.com/docs/api/reference/list-signing-requests.md): GET /api/v1/signing-requests. Newest first. Needs the read permission. - [Get a signing request](https://tryjustdocs.com/docs/api/reference/get-signing-request.md): GET /api/v1/signing-requests/{id}. With each recipient's status and the latest approval. Needs the read permission. - [Send a draft signing request](https://tryjustdocs.com/docs/api/reference/send-signing-request.md): POST /api/v1/signing-requests/{id}/send. Needs the send permission. - [Void a sent signing request](https://tryjustdocs.com/docs/api/reference/void-signing-request.md): POST /api/v1/signing-requests/{id}/void. Takes effect at once, without approval: recipients who were invited are told. Needs the send permission. - [Send an intake link](https://tryjustdocs.com/docs/api/reference/create-intake-request.md): POST /api/v1/intake-requests. Needs the send permission. - [Get an intake link](https://tryjustdocs.com/docs/api/reference/get-intake-request.md): GET /api/v1/intake-requests/{id}. With the answers, once submitted. Needs the read permission. - [Get an approval this key asked for](https://tryjustdocs.com/docs/api/reference/get-approval.md): GET /api/v1/approvals/{id}. Needs the read permission. ## Webhooks - [Webhooks](https://tryjustdocs.com/docs/webhooks/index.md): JustDocs webhooks are signed HTTPS events for signing requests, intake links and approvals, retried for about 20 hours. - [Events](https://tryjustdocs.com/docs/webhooks/events.md): The 10 JustDocs webhook events, what each means, and the payload each carries. - [Verify signatures](https://tryjustdocs.com/docs/webhooks/verify.md): Check the JustDocs-Signature header on every webhook. It is an HMAC-SHA256 of the timestamp and the raw body, made with your endpoint's secret. Examples in Node.js, Python and Go. - [Retries and pausing](https://tryjustdocs.com/docs/webhooks/retries.md): How JustDocs retries webhook deliveries that fail, and when it pauses an endpoint that keeps failing. ## Guides - [Create a template](https://tryjustdocs.com/docs/guides/create-a-template.md): Make a template from text you write or from a library entry, through the REST API or the MCP server, then start documents from it and send them with approval. - [Send an agreement with approval](https://tryjustdocs.com/docs/guides/send-with-approval.md): The whole flow, from template to signed copy. Find a template, start a document, ask to send it, have a person approve it, and follow it to completion. - [Collect details with an intake link](https://tryjustdocs.com/docs/guides/intake-links.md): Email someone a form whose answers fill your documents. Then review the answers yourself, or let the person go straight on to sign. - [Track completion with webhooks](https://tryjustdocs.com/docs/guides/track-with-webhooks.md): A complete webhook receiver that verifies, queues work, applies each event once, and updates your records as JustDocs requests are sent, signed and completed. - [Agent security checklist](https://tryjustdocs.com/docs/guides/agent-security.md): What to set and check before you give an AI agent a JustDocs key, and how to respond if a key leaks. ## Resources - [Changelog](https://tryjustdocs.com/docs/resources/changelog.md): Changes to the JustDocs REST API, MCP server and webhooks. - [Support and links](https://tryjustdocs.com/docs/resources/support.md): Where to get help with the JustDocs API, and machine-readable descriptions of the platform. ## Optional - [Everything in one file](https://tryjustdocs.com/docs/llms-full.txt) - [JustDocs for assistants](https://tryjustdocs.com/llms.txt)