PostgreSQL
Query a PostgreSQL database directly: list tables, describe columns and run read-only SQL. Installs read-only; credentials are held encrypted rather than in the connection string.
7 天免费 · 无需信用卡 · EU 托管
问 PostgreSQL 任何事
通过 AnythingMCP 对 PostgreSQL 试一个真实提示 — Claude 调用工具并返回答案。在你的消息上按 Enter 即可在 Cloud 安装。
在 Cloud 上安装 PostgreSQLClaude 是 AI,可能会出错。请核对回答。
2 分钟设置
- 1在 cloud.anythingmcp.com 开始免费试用。
- 2在连接器商店点击 PostgreSQL。提示时粘贴凭据。
- 3生成 MCP API 密钥,将 AI 客户端指向生成的 MCP URL。
PostgreSQL 指南
面向主流 AI 客户端的逐步设置。
配置 PostgreSQL
直接来自连接器定义:在哪里获取凭据、需要哪些权限,以及该适配器调用的是哪个 API。 由连接器作者以英文提供。
Setup
- Create a dedicated role for the agent and grant it only what it needs:
The last line matters: without it, tables created tomorrow are invisible.CREATE ROLE amcp_reader LOGIN PASSWORD 'change-me'; GRANT CONNECT ON DATABASE sales TO amcp_reader; GRANT USAGE ON SCHEMA public TO amcp_reader; GRANT SELECT ON ALL TABLES IN SCHEMA public TO amcp_reader; ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT SELECT ON TABLES TO amcp_reader; - Set
POSTGRES_HOST,POSTGRES_PORT(5432),POSTGRES_DATABASE,POSTGRES_USERandPOSTGRES_PASSWORD.
search_path is not set for you. Unqualified table names resolve against the role's default search path, which on a fresh role is "$user", public. Schema-qualify (analytics.orders) when in doubt.
How a database connector behaves
- It installs read-only. The engine rejects anything that is not a read until you flip the switch in the connector's settings. That is a guard rail, not a security boundary: give the connection a database role that is itself read-only, and the guard rail never has to matter.
- Credentials live in the encrypted
authConfig, not in the connection string.POSTGRES_USERandPOSTGRES_PASSWORDare stored encrypted and spliced into the DSN at call time; the host and database name are stored in the plaintextbaseUrlcolumn. - Results are capped at 1000 rows. A query that would return more comes back truncated with a flag. Aggregate in SQL rather than in the agent.
- A statement runs exactly as written. There is no query rewriting and no automatic LIMIT — an unbounded scan on a large table is a real unbounded scan on your production database. Say LIMIT.
Reachable from where?
- On AnythingMCP Cloud the server must accept connections from the public internet, which for a production database usually means it should not. Point the connector at a read replica, or self-host AnythingMCP inside the network.
- Self-hosted, add the host to
SSRF_ALLOWED_HOSTS: the outbound guard blocks private address space by default, and10.0.0.5is exactly the shape it is there to block.
Supersedes the marketing site's postgres placeholder, which advertised a POSTGRES_URL connection string. This adapter takes host, port and database separately and keeps the password encrypted, which the single-URL form could not do.