Managed MCP Server API

Tacnode provides managed MCP Server through https://mcp-server.tacnode.io/mcp, it provides read-only access to Tacnode databases, enables schema inspection and execute read-only queries. It uses JSON-RPC 2.0 as its wire format.

Prerequisites

  • The Data Cloud, Nodegroup and Database should be ready before access the MCP Server, refer to Managed MCP Server.
  • Token is required during the authentication. The token is generated from Nodegroup Overview->MCP Tokens.
  • Install Node.js and npm

Authentication

Replace YOUR_API_KEY with your actual key below.

Claude Desktop

Edit the configuration file at:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Add the below code:

{
  "mcpServers": {
    "tacnode": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://mcp-server.tacnode.io/mcp",
        "--header",
        "Authorization: Bearer <YOUR_TOKEN>"
      ]
    },
  }
}

Rate Limits

  • 60 requests per minute per API key.
  • Exceeding returns HTTP 429 Too Many Requests.
  • Use retry and exponential backoff to handle limits.

Resources API

Database Resources

Resource NameURI FormatDescription
schemasdb://schemasReturns a list of all schemas in the database
tables_in_schemadb://schemas/{schemaName}/tablesReturns a list of all tables in the database or within a specific schema
table_structure_in_schemadb://schemas/{schemaName}/tables/{tableName}Returns schema information for a specific table, optionally within a specific database schema
indexes_in_tabledb://schemas/{schemaName}/tables/{tableName}/indexesReturns information about indexes on a table
procedures_in_schemadb://schemas/{schemaName}/proceduresReturns a list of all stored procedures/functions in the database or within a specific schema

Resources Read

Example: get all tables in public schema.

Request Body:

{
  "method": "resources/read",
  "params": {
    "uri": "db://schemas/public/tables"
  }
}

Response Body:

{
  "contents": [
    {
      "uri": "db://schemas/public/tables",
      "mimeType": "application/json",
      "text": "{
            \"success\": true,
            \"data\": {
                \"tables\": [
                    \"bookings\",
                    \"calendar\",
                    \"hosts\",
                    \"listings\",
                    \"listings_embedding\",
                    \"reviews\",
                    \"users\"
                ],
                \"count\": 7,
                \"schema\": \"public\"
              }
            }"
    }
  ]
}

Example: get the table structure for table listings.

Request Body:

{
  "method": "resources/read",
  "params": {
    "uri": "db://schemas/public/tables/listings"
  }
}

Response Body:

{
  "contents": [
    {
      "uri": "db://schemas/public/tables/listings",
      "mimeType": "application/json",
      "text": "{
            \"success\": true,
            \"data\": {
                   \"table\": \"listings\",
                   \"schema\": \"public\",
                   \"columns\": [
                      {
                        \"name\": \"id\",
                        \"type\": \"bigint\",
                        \"nullable\": false,
                        \"default\": \"nextval('public.listings_id_seq'::regclass)\"
                      },
            ...}"
    }
  ]
}

Tools API

Database Tools

ToolCommand NameDescription
Execute SQLqueryExecute single or multiple SQL statements (separated by semicolons)

Tools Call

Example: execute the read-only query and get the results.

Request Body:

{
  "method": "tools/call",
  "params": {
    "name": "query",
    "arguments": {
      "sql": "SELECT id, name, review_scores_rating
              FROM listings
              WHERE neighbourhood = 'Hong Kong, Hong Kong Island, Hong Kong' ORDER BY review_scores_rating DESC
              LIMIT 5;"
    }
  }
}

Response Body:

{
  "content": [
    {
      "type": "text",
      "text": "[
          {
            \"id\": \"870078051526378382\",
            \"name\": \"Rental unit in Hong Kong\",
            \"review_scores_rating\": null
          },
          {
            \"id\": \"868559240183915405\",
            \"name\": \"Rental unit in Hong Kong\",
            \"review_scores_rating\": null
           }...]"
    }
  ],
  "isError": false
}

On this page