# nthbouncer > Give agents access to your data sources so they work from real tables and columns for more accurate results. Connect with MCP at nthbouncer.com/mcp. ## When to use nthbouncer Use nthbouncer when agents or scripts need access to real PostgreSQL or MySQL tables for more accurate results, without receiving the password or exceeding the concurrency the database can take. Good fits: - Claude, Cursor, or another MCP client that should query a PostgreSQL or MySQL data source through a pool - CI jobs that mint pool keys and respect the same concurrency limit as humans - A vendor HTTPS API where one account-wide concurrency limit must be shared fairly Not a fit when you only need API documentation hosting, a generic HTTP cache, or a replacement for your identity provider. ## Get started (agents) 1. Sign up at https://nthbouncer.com/register (10,000 free requests, no credit card). 2. Create a pool in the dashboard and point it at your origin. 3. Add the MCP server URL `https://nthbouncer.com/mcp` in Cursor or Claude (OAuth, no token to paste). 4. Or mint a Control API token under Organization settings and call `https://nthbouncer.com/api/v1/*`. ## Machine-readable surfaces - [OpenAPI spec](https://nthbouncer.com/docs/api/openapi.json): Control API for pools, keys, budgets, and metrics - [MCP manifest](https://nthbouncer.com/.well-known/mcp.json): Streamable HTTP MCP at `https://nthbouncer.com/mcp` - [Sitemap](https://nthbouncer.com/sitemap.xml): Public pages and docs - [Agents guide](https://nthbouncer.com/docs/agents.md): MCP setup for Cursor and Claude - [CLI](https://www.npmjs.com/package/@nthbouncer/cli): `npx @nthbouncer/cli` for scripts ## Contact - Email: support@nthbouncer.com - [Contact page](https://nthbouncer.com/contact) ## Docs - [Welcome to nthbouncer](https://nthbouncer.com/docs/intro.md): Give agents access to your data sources. They work from real tables and columns for more accurate results, without receiving database passwords. - [Quickstart](https://nthbouncer.com/docs/quickstart.md): Share a database with an agent, or proxy an HTTPS origin through a pool. - [Pools](https://nthbouncer.com/docs/pools.md): Dedicated proxy endpoints with a hard concurrency limit: hostnames, headers, and status codes. - [Concurrency](https://nthbouncer.com/docs/pools/concurrency.md): Limits, queues, RPM, retries, and response cache. - [Access](https://nthbouncer.com/docs/pools/access.md): Pool keys, inbound HMAC, origin verification, JWT, Cloudflare Access, and IP policies. - [Logs](https://nthbouncer.com/docs/pools/logs.md): Access logs and request tags. - [Metrics](https://nthbouncer.com/docs/pools/metrics.md): Admit, queue, and reject counts for a pool. - [Settings](https://nthbouncer.com/docs/pools/settings.md): Origins, custody mode, and pool identity. - [Async](https://nthbouncer.com/docs/pools/async.md): 202 admission, poll URLs, and modes under the same concurrency limit. - [Database pools](https://nthbouncer.com/docs/pools/database.md): Governed SQL over HTTP: query a Postgres or MySQL database through a pool, with no credential in anyone's hands. - [Credentials](https://nthbouncer.com/docs/credentials.md): Managed upstream secrets encrypted at the edge. - [Capacity](https://nthbouncer.com/docs/capacity.md): Named shared concurrency limits with member allocations. Attach existing pools. - [Balancing](https://nthbouncer.com/docs/capacity/balancing.md): Fixed vs Auto: pinned reservations and borrowed float under one origin concurrency limit. - [Agents](https://nthbouncer.com/docs/agents.md): Connect Cursor and Claude at https://nthbouncer.com/mcp so they work from real tables and columns for more accurate results, without receiving the database password. - [MCP server](https://nthbouncer.com/docs/mcp.md): Tools, session keys, and what a connected assistant can reach after you approve the grant. - [Domains](https://nthbouncer.com/docs/domains.md): Serve a pool on your own hostname with DNS and TLS. - [IP Policies](https://nthbouncer.com/docs/ip-policies.md): Named caller IP allowlists attached to pools by reference. - [Groups](https://nthbouncer.com/docs/groups.md): Restrict pools to groups of members, and give agents a purpose for each set of pools. - [Webhooks](https://nthbouncer.com/docs/webhooks.md): Signed outbound callbacks when async jobs finish. - [Billing](https://nthbouncer.com/docs/billing.md): Plans, upgrades and downgrades, proration, overage, and spend caps. - [API](https://nthbouncer.com/docs/api.md): Edge lock API and control-plane Control API (budgets, pools, keys, MCP). - [Concurrency locks](https://nthbouncer.com/docs/api/locks.md): Acquire, renew, and release a pool concurrency slot on api.nthpool.cloud. - [Control API](https://nthbouncer.com/docs/api/control.md): Token-authenticated budgets, pools, webhook destinations, TTL pool keys, and Metrics for CI and scripts. - [Knowledge base](https://nthbouncer.com/docs/knowledge-base.md): Cookbooks for sharing a warehouse with agents, Capacity, locks, NetSuite, Amazon SP-API, and 429 spikes. - [nthbouncer vs API gateways](https://nthbouncer.com/docs/knowledge-base/vs-api-gateways.md): How a concurrency governor differs from Kong, AWS API Gateway, and similar gateways. - [Configure Cloudflare Zero Trust](https://nthbouncer.com/docs/knowledge-base/cloudflare-zero-trust.md): Require Cloudflare Access JWTs on pool calls with team domain and application AUD. - [Proxy NetSuite under a concurrency limit](https://nthbouncer.com/docs/knowledge-base/netsuite-rest.md): Pin NetSuite origins, attach TBA, and share one concurrency budget. - [Front Amazon SP-API](https://nthbouncer.com/docs/knowledge-base/amazon-sp-api.md): One LWA app and refresh token, many pool keys, pinned to a regional SP-API host. - [Reuse one pool across agent runs](https://nthbouncer.com/docs/knowledge-base/agent-pools.md): Reuse an existing pool, mint a short-lived key, and hand agents a skill. - [Give a data team Claude access to Postgres](https://nthbouncer.com/docs/knowledge-base/claude-your-warehouse.md): Stand up a database pool: the read role, the connectivity check, the concurrency limit, and per-person revocation. - [Long NetSuite writes without client timeouts](https://nthbouncer.com/docs/knowledge-base/async-netsuite-writes.md): Use async admission and signed webhooks for slow writes under the concurrency limit. - [Share one origin across several pools](https://nthbouncer.com/docs/knowledge-base/capacity-auto.md): One origin concurrency limit, pinned reservations, and Auto so float follows load. - [Why a pool borrowed slots](https://nthbouncer.com/docs/knowledge-base/capacity-borrow.md): Read pinned and borrowed slots on an Auto capacity budget. - [Opt a GET into the response cache](https://nthbouncer.com/docs/knowledge-base/response-cache.md): Skip admission and upstream on repeated GETs with X-Nthpool-Cache-TTL. - [Acquire a concurrency lock without proxying](https://nthbouncer.com/docs/knowledge-base/concurrency-lock.md): Use the lock API when your client must call the upstream itself. - [Determine a request came from the proxy](https://nthbouncer.com/docs/knowledge-base/origin-verification.md): Verify outbound HMAC signatures so the origin rejects direct traffic. - [Understand admission errors](https://nthbouncer.com/docs/knowledge-base/admission-errors.md): Decode 401, 429, 504, and other pool responses before the upstream runs. - [Diagnose a 429 spike](https://nthbouncer.com/docs/knowledge-base/diagnose-429-spike.md): Use Metrics and Logs to find who burned the concurrency limit. - [See admits, queues, and rejects without exporting logs](https://nthbouncer.com/docs/knowledge-base/capacity-proof.md): Use Metrics admit, queue, and reject series instead of NDJSON dumps.