Model Context Protocol (MCP)
PgArachne nativně podporuje Model Context Protocol (MCP), otevřený standard, který umožňuje AI modelům (jako Claude nebo Cursor) bezpečně přistupovat k vašim datům a funkcím jako k „nástrojům“ (tools).
Jak to funguje?
PgArachne funguje přímo jako MCP Server. Namísto psaní vlastního HTTP serveru pro každý projekt stačí PgArachne spustit nad vaší databází. PgArachne automaticky analyzuje vaše povolené SQL funkce a vystaví je AI klientům pomocí HTTP(S).
🛠️ SQL Funkce jako Nástroje
Jakákoliv SQL funkce, která je dostupná přes JSON-RPC 2.0 endpoint PgArachne, se automaticky stane „nástrojem“ v AI. Výchozí nastavení (volání pgarachne.allowed_schemas()) vystavuje funkce uložené ve schématu api, ke kterým má uživatel přístup (GRANT EXECUTE). LLM vidí název funkce, parametry a popis z SQL komentářů.
Průvodce připojením
1. Vytvoření API tokenu
Pro trvalé propojení s AI doporučujeme použít dlouhodobý API token namísto krátkodobého JWT. Z bezpečnostních důvodů musí token generovat administrátor (role pgarachne_admin):
-- Přepnutí do administrátorské role
SET ROLE pgarachne_admin;
-- Vygeneruje nový token pro roli proxy uživatele (např. 'app_user')
SELECT pgarachne.add_api_token('Claude Desktop', 'app_user');Poznamenejte si vrácený řetězec, bude sloužit k autentizaci. Token se validuje při každém HTTP požadavku nezávisle na platnosti expiračního data.
2. Claude Desktop
Přidejte PgArachne do konfigurace Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"pgarachne": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-http",
"--url",
"https://your-api.com/db/my_database/mcp"
],
"env": {
"Authorization": "Bearer VÁŠ_API_TOKEN"
}
}
}
}Poznámka: Pro připojení je vyžadováno HTTP(S). Ukázka uses npx bridge server-http od Anthropicu, který zprostředkuje komunikaci mezi standardním MCP (stdio) a PgArachne (HTTP).
3. Cursor
V nastavení Cursoru (Settings > MCP) přidejte nový server komunikující napřímo přes HTTP (nebo pomocí výše zmíněného bridge, pokud Cursor nativní HTTP MCP server nepodporuje ve vaší verzi):
- Type:
command(s npx bridge) nebohttp - Name:
PgArachne - URL:
https://your-api.com/db/my_database/mcp - Auth Header:
Authorization: Bearer VÁŠ_API_TOKEN
🌐 Veřejná dostupnost (Ngrok)
Pokud testujete PgArachne lokálně a chcete jej propojit s webovou AI (mimo lokální instalace), váš server musí být veřejně dostupný na HTTP(S) URL.
# Spusťte ngrok pro HTTP port PgArachne (např. 8080)
ngrok http 8080V konfiguraci AI poté použijte vygenerovanou HTTPS adresu od Ngroku.
Bezpečnost
MCP endpoint v PgArachne plně respektuje nastavená pravidla databáze:
- Autentizace: Každý požadavek na HTTP endpoint vyžaduje platný API token nebo JWT, jinak je okamžitě zamítnut.
- Autorizace: AI vidí a může volat jen ty funkce z povolených schémat, ke kterým má autentizovaná role
GRANT EXECUTE. - RLS: Row-Level Security je plně aktivní — AI uvidí jen ty řádky, ke kterým má konkrétní role přístup.