Koskamo

mcp-db-read-only MCP

A read-only Model Context Protocol server that allows AI assistants to query multiple database engines including SQL, NoSQL, and search platforms. It supports runtime switching between databases and ensures safety by preventing write operations through both client-side checks and database-level permissions.

Package and access

Local package with source-attributed installation metadata. Koskamo does not execute packages during review.

mcp-db-read-only MCP logo, by shibbirwebCommunity listingLocal stdioSource reviewed; not executedPublished by shibbirweb
Vendor documentation

What you can do with it

  • List tables in a database
  • Show newest orders
  • Count customers by country
  • Query Redis session keys

Source and maintenance

Community listingRegistry 1.1.0MIT
Last repository push
Latest release
v1.1.0
Maintenance checked

Packages and installation

Source-provided package data. Koskamo has not executed or live-probed this package.

@shibbirweb/mcp-db-read-only 1.1.0

npm
@shibbirweb/mcp-db-read-only package definition
{
  "version": "1.1.0",
  "transport": "stdio",
  "identifier": "@shibbirweb/mcp-db-read-only",
  "registryType": "npm",
  "environmentVariables": [
    {
      "name": "DB_URL",
      "format": "string",
      "description": "Connection URL to open at startup, e.g. postgres://user@host:5432/db, mongodb://user@host/db, redis://host:6379/0 or sqlite:///data/app.db"
    },
    {
      "name": "DB_PASSWORD",
      "format": "string",
      "description": "Password for DB_URL, so it need not be percent-encoded inside the URL"
    },
    {
      "name": "DB_PROFILES",
      "format": "string",
      "description": "JSON object of named connections to switch between, each a URL or {\"url\", \"password\"}"
    },
    {
      "name": "DB_DEFAULT_PROFILE",
      "format": "string",
      "description": "Which DB_PROFILES entry to start on"
    },
    {
      "name": "DB_CONNECT_TIMEOUT_MS",
      "format": "number",
      "description": "Connection timeout in milliseconds. Defaults to 10000"
    },
    {
      "name": "DB_QUERY_TIMEOUT_MS",
      "format": "number",
      "description": "Server-side query timeout in milliseconds. Defaults to 30000"
    },
    {
      "name": "DB_LOG",
      "format": "boolean",
      "description": "true logs every tool call, its statements and full output to stderr. Off by default"
    },
    {
      "name": "DB_LOG_FILE",
      "format": "filepath",
      "description": "Log every tool call to this file instead. Implies DB_LOG"
    },
    {
      "name": "DB_LOG_DIR",
      "format": "filepath",
      "description": "Save every tool call as its own JSON file in this folder, permanently. Implies logging"
    },
    {
      "name": "DB_LOG_FORMAT",
      "format": "string",
      "description": "pretty (default) or json, one object per line"
    },
    {
      "name": "DB_LOG_PORT",
      "format": "number",
      "description": "Serve a live log viewer in the browser on this port. Needs DB_LOG_DIR, DB_LOG or DB_LOG_FILE. No access control"
    },
    {
      "name": "DB_LOG_HISTORY",
      "format": "number",
      "description": "Entries the viewer keeps in memory when DB_LOG_DIR is not set. Defaults to 500"
    },
    {
      "name": "MYSQL_HOST",
      "format": "string",
      "description": "Legacy MySQL-only form, kept for drop-in compatibility. Prefer DB_URL"
    },
    {
      "name": "MYSQL_USER",
      "format": "string",
      "description": "Legacy MySQL-only form. Prefer DB_URL"
    },
    {
      "name": "MYSQL_PASSWORD",
      "format": "string",
      "description": "Legacy MySQL-only form. Prefer DB_URL with DB_PASSWORD"
    },
    {
      "name": "MYSQL_DATABASE",
      "format": "string",
      "description": "Legacy MySQL-only form. Prefer DB_URL"
    }
  ]
}

Tools

Reported by the attributed source; not independently observed by Koskamo.

No tool definitions available.

Maintenance history

Public check and source-refresh events. Editorial and ownership records remain private.

  • · repository · passed · metadata changed · updated
  • · backfill · recorded · Pre-expansion baseline; unobserved rich metadata remains unknown

Connect from your client

Each snippet configures the same source-provided package; replace placeholders before use.

This server is operated by the named third party. Listing and endpoint checks are not an endorsement or a security audit. Review the operator's permissions, terms, and data handling before connecting. How listings are checked and corrected.

Cursor

Merge this local stdio configuration, replace every placeholder environment value, and restart Cursor. Koskamo has not executed this package.
Cursor configuration
{
  "mcpServers": {
    "mcp-db-read-only-mcp-shibbirweb-mcp-db-read-only": {
      "command": "npx",
      "args": [
        "-y",
        "@shibbirweb/mcp-db-read-only@1.1.0"
      ],
      "env": {
        "DB_URL": "<YOUR_DB_URL>",
        "DB_PASSWORD": "<YOUR_DB_PASSWORD>",
        "DB_PROFILES": "<YOUR_DB_PROFILES>",
        "DB_DEFAULT_PROFILE": "<YOUR_DB_DEFAULT_PROFILE>",
        "DB_CONNECT_TIMEOUT_MS": "<YOUR_DB_CONNECT_TIMEOUT_MS>",
        "DB_QUERY_TIMEOUT_MS": "<YOUR_DB_QUERY_TIMEOUT_MS>",
        "DB_LOG": "<YOUR_DB_LOG>",
        "DB_LOG_FILE": "<YOUR_DB_LOG_FILE>",
        "DB_LOG_DIR": "<YOUR_DB_LOG_DIR>",
        "DB_LOG_FORMAT": "<YOUR_DB_LOG_FORMAT>",
        "DB_LOG_PORT": "<YOUR_DB_LOG_PORT>",
        "DB_LOG_HISTORY": "<YOUR_DB_LOG_HISTORY>",
        "MYSQL_HOST": "<YOUR_MYSQL_HOST>",
        "MYSQL_USER": "<YOUR_MYSQL_USER>",
        "MYSQL_PASSWORD": "<YOUR_MYSQL_PASSWORD>",
        "MYSQL_DATABASE": "<YOUR_MYSQL_DATABASE>"
      }
    }
  }
}

Cline

Merge this local stdio configuration, replace every placeholder environment value, and restart Cline. Koskamo has not executed this package.
Cline configuration
{
  "mcpServers": {
    "mcp-db-read-only-mcp-shibbirweb-mcp-db-read-only": {
      "command": "npx",
      "args": [
        "-y",
        "@shibbirweb/mcp-db-read-only@1.1.0"
      ],
      "env": {
        "DB_URL": "<YOUR_DB_URL>",
        "DB_PASSWORD": "<YOUR_DB_PASSWORD>",
        "DB_PROFILES": "<YOUR_DB_PROFILES>",
        "DB_DEFAULT_PROFILE": "<YOUR_DB_DEFAULT_PROFILE>",
        "DB_CONNECT_TIMEOUT_MS": "<YOUR_DB_CONNECT_TIMEOUT_MS>",
        "DB_QUERY_TIMEOUT_MS": "<YOUR_DB_QUERY_TIMEOUT_MS>",
        "DB_LOG": "<YOUR_DB_LOG>",
        "DB_LOG_FILE": "<YOUR_DB_LOG_FILE>",
        "DB_LOG_DIR": "<YOUR_DB_LOG_DIR>",
        "DB_LOG_FORMAT": "<YOUR_DB_LOG_FORMAT>",
        "DB_LOG_PORT": "<YOUR_DB_LOG_PORT>",
        "DB_LOG_HISTORY": "<YOUR_DB_LOG_HISTORY>",
        "MYSQL_HOST": "<YOUR_MYSQL_HOST>",
        "MYSQL_USER": "<YOUR_MYSQL_USER>",
        "MYSQL_PASSWORD": "<YOUR_MYSQL_PASSWORD>",
        "MYSQL_DATABASE": "<YOUR_MYSQL_DATABASE>"
      }
    }
  }
}

VS Code

Merge this local stdio configuration, replace every placeholder environment value, and restart VS Code. Koskamo has not executed this package.
VS Code configuration
{
  "servers": {
    "mcp-db-read-only-mcp-shibbirweb-mcp-db-read-only": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@shibbirweb/mcp-db-read-only@1.1.0"
      ],
      "env": {
        "DB_URL": "<YOUR_DB_URL>",
        "DB_PASSWORD": "<YOUR_DB_PASSWORD>",
        "DB_PROFILES": "<YOUR_DB_PROFILES>",
        "DB_DEFAULT_PROFILE": "<YOUR_DB_DEFAULT_PROFILE>",
        "DB_CONNECT_TIMEOUT_MS": "<YOUR_DB_CONNECT_TIMEOUT_MS>",
        "DB_QUERY_TIMEOUT_MS": "<YOUR_DB_QUERY_TIMEOUT_MS>",
        "DB_LOG": "<YOUR_DB_LOG>",
        "DB_LOG_FILE": "<YOUR_DB_LOG_FILE>",
        "DB_LOG_DIR": "<YOUR_DB_LOG_DIR>",
        "DB_LOG_FORMAT": "<YOUR_DB_LOG_FORMAT>",
        "DB_LOG_PORT": "<YOUR_DB_LOG_PORT>",
        "DB_LOG_HISTORY": "<YOUR_DB_LOG_HISTORY>",
        "MYSQL_HOST": "<YOUR_MYSQL_HOST>",
        "MYSQL_USER": "<YOUR_MYSQL_USER>",
        "MYSQL_PASSWORD": "<YOUR_MYSQL_PASSWORD>",
        "MYSQL_DATABASE": "<YOUR_MYSQL_DATABASE>"
      }
    }
  }
}

Claude Desktop

Merge this local stdio configuration, replace every placeholder environment value, and restart Claude Desktop. Koskamo has not executed this package.
Claude Desktop configuration
{
  "mcpServers": {
    "mcp-db-read-only-mcp-shibbirweb-mcp-db-read-only": {
      "command": "npx",
      "args": [
        "-y",
        "@shibbirweb/mcp-db-read-only@1.1.0"
      ],
      "env": {
        "DB_URL": "<YOUR_DB_URL>",
        "DB_PASSWORD": "<YOUR_DB_PASSWORD>",
        "DB_PROFILES": "<YOUR_DB_PROFILES>",
        "DB_DEFAULT_PROFILE": "<YOUR_DB_DEFAULT_PROFILE>",
        "DB_CONNECT_TIMEOUT_MS": "<YOUR_DB_CONNECT_TIMEOUT_MS>",
        "DB_QUERY_TIMEOUT_MS": "<YOUR_DB_QUERY_TIMEOUT_MS>",
        "DB_LOG": "<YOUR_DB_LOG>",
        "DB_LOG_FILE": "<YOUR_DB_LOG_FILE>",
        "DB_LOG_DIR": "<YOUR_DB_LOG_DIR>",
        "DB_LOG_FORMAT": "<YOUR_DB_LOG_FORMAT>",
        "DB_LOG_PORT": "<YOUR_DB_LOG_PORT>",
        "DB_LOG_HISTORY": "<YOUR_DB_LOG_HISTORY>",
        "MYSQL_HOST": "<YOUR_MYSQL_HOST>",
        "MYSQL_USER": "<YOUR_MYSQL_USER>",
        "MYSQL_PASSWORD": "<YOUR_MYSQL_PASSWORD>",
        "MYSQL_DATABASE": "<YOUR_MYSQL_DATABASE>"
      }
    }
  }
}

Let your agent find its tools

Find servers like mcp-db-read-only MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.