mssql

GitHub

用于安全执行只读SQL查询的MSSQL技能,支持多库连接、自动选择及防写保护。

skills/mssql/SKILL.md sanjay3290/ai-skills

Trigger Scenarios

查询MSSQL数据库内容 探索数据库表结构或Schema 进行数据分析和SELECT操作

Install

npx skills add sanjay3290/ai-skills --skill mssql -g -y
More Options

Use without installing

npx skills use sanjay3290/ai-skills@mssql

指定 Agent (Claude Code)

npx skills add sanjay3290/ai-skills --skill mssql -a claude-code -g -y

安装 repo 全部 skill

npx skills add sanjay3290/ai-skills --all -g -y

预览 repo 内 skill

npx skills add sanjay3290/ai-skills --list

SKILL.md

Frontmatter
{
    "name": "mssql",
    "license": "Apache-2.0",
    "metadata": {
        "author": "sanjay3290",
        "version": "1.0"
    },
    "description": "Execute read-only SQL queries against multiple Microsoft SQL Server databases. Use when: (1) querying MSSQL\/SQL Server databases, (2) exploring database schemas\/tables, (3) running SELECT queries for data analysis, (4) checking database contents. Supports multiple database connections with descriptions for intelligent auto-selection. Blocks all write operations (INSERT, UPDATE, DELETE, DROP, etc.) for safety."
}

MSSQL Read-Only Query Skill

Execute safe, read-only queries against configured Microsoft SQL Server databases.

Requirements

  • Python 3.8+
  • pymssql: pip install -r requirements.txt

Setup

Create connections.json in the skill directory or ~/.config/claude/mssql-connections.json.

Security: Set file permissions to 600 since it contains credentials:

chmod 600 connections.json
{
  "databases": [
    {
      "name": "production",
      "description": "Main app database - users, orders, transactions",
      "host": "db.example.com",
      "port": 1433,
      "database": "app_prod",
      "user": "readonly_user",
      "password": "your-password",
      "encrypt": true,
      "tds_version": "7.3"
    }
  ]
}

Config Fields

Field Required Description
name Yes Identifier for the database (case-insensitive)
description Yes What data this database contains (used for auto-selection)
host Yes Database hostname
port No Port number (default: 1433)
database Yes Database name
user Yes Username
password Yes Password
encrypt No Enable TLS encryption (default: false)
tds_version No TDS protocol version: 7.0, 7.1, 7.2, 7.3, 7.4 (default: auto)

Usage

List configured databases

python3 scripts/query.py --list

Query a database

python3 scripts/query.py --db production --query "SELECT TOP 10 * FROM users"

List tables

python3 scripts/query.py --db production --tables

Show schema

python3 scripts/query.py --db production --schema

Limit results

python3 scripts/query.py --db production --query "SELECT * FROM orders" --limit 100

Note: MSSQL uses TOP N instead of LIMIT. The --limit flag automatically inserts TOP N after SELECT.

Database Selection

Match user intent to database description:

User asks about Look for description containing
users, accounts users, accounts, customers
orders, sales orders, transactions, sales
analytics, metrics analytics, metrics, reports
logs, events logs, events, audit

If unclear, run --list and ask user which database.

Safety Features

  • Read-only enforcement: Query validation blocks write operations (use a db_datareader role user for server-side protection)
  • Query validation: Only SELECT, SHOW, EXPLAIN, WITH, SP_HELP queries allowed
  • Single statement: Multiple statements per query rejected
  • TLS support: Configurable encryption for secure connections
  • Query timeout: 30-second timeout enforced via pymssql
  • Connection timeout: 10-second login timeout
  • Memory protection: Max 10,000 rows per query to prevent OOM
  • Column width cap: 100 char max per column for readable output
  • Credential sanitization: Error messages don't leak passwords

Troubleshooting

Error Solution
Config not found Create connections.json in skill directory
Authentication failed Check username/password in config
Connection timeout Verify host/port, check firewall/VPN
TDS version error Try "tds_version": "7.3" or "7.4"
Encryption error Set "encrypt": true for Azure SQL
Permission warning Run chmod 600 connections.json

Exit Codes

  • 0: Success
  • 1: Error (config missing, auth failed, invalid query, database error)

Workflow

  1. Run --list to show available databases
  2. Match user intent to database description
  3. Run --tables or --schema to explore structure
  4. Execute query with appropriate --limit (auto-converts to TOP N)

Version History

  • 3619692 Current 2026-07-24 17:34

Same Skill Collection

skills/atlassian/SKILL.md
skills/azure-devops/SKILL.md
skills/elevenlabs/SKILL.md
skills/gmail/SKILL.md
skills/google-calendar/SKILL.md
skills/google-chat/SKILL.md
skills/google-docs/SKILL.md
skills/google-drive/SKILL.md
skills/google-sheets/SKILL.md
skills/google-slides/SKILL.md
skills/grok-build/SKILL.md
skills/imagen/SKILL.md
skills/jules/SKILL.md
skills/manus/SKILL.md
skills/mysql/SKILL.md
skills/notebooklm/SKILL.md
skills/postgres/SKILL.md
skills/apple-container/SKILL.md
skills/google-tts/SKILL.md
skills/telegram/SKILL.md
skills/whatsapp/SKILL.md

Metadata

Files
0
Version
3619692
Hash
2e9d895d
Indexed
2026-07-24 17:34

inicio - Wiki
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-08-22 02:01
浙ICP备14020137号-1 $mapa de visitantes$