Skip to main content
Glama
AnuragRai017

Database Updater MCP Server

by AnuragRai017

database-updater MCP Server

database-updater-MCP-Server MCP server

A Model Context Protocol server for updating databases from CSV and Excel files.

Features

Tools

  • update_database - Update database from CSV/Excel files

    • Supports CSV and Excel (.xlsx, .xls) file formats

    • Compatible with multiple database types (PostgreSQL, MySQL, MongoDB, SQLite)

    • Configurable connection settings and table mapping

  • create_note - Create and manage notes (for documentation)

    • Store important information about database updates

    • Track changes and modifications

Related MCP server: MCP Database Server

Usage

Update Database

Use the update_database tool with the following parameters:

{
  "filePath": "/path/to/your/file.csv",
  "databaseType": "PostgreSQL",
  "connectionString": "postgresql://user:pass@localhost:5432/db",
  "tableName": "target_table"
}

Supported Database Types

  • PostgreSQL

  • MySQL

  • MongoDB

  • SQLite

Development

Install dependencies:

npm install

Build the server:

npm run build

For development with auto-rebuild:

npm run watch

Installation

To use with Claude Desktop, add the server config:

On MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json On Windows: %APPDATA%/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "database-updater": {
      "command": "/path/to/database-updater/build/index.js"
    }
  }
}

Debugging

Since MCP servers communicate over stdio, debugging can be challenging. We recommend using the MCP Inspector:

npm run inspector

The Inspector will provide a URL to access debugging tools in your browser.

Available Tools

2 tools
create_noteC

Create a new note

ParametersJSON Schema
NameRequiredDescriptionDefault
titleYesTitle of the note
contentYesText content of the note

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states 'Create a new note', implying a write operation, but does not disclose any behavioral traits like permissions needed, whether the creation is idempotent, error handling, or response format. This leaves significant gaps for a mutation tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description 'Create a new note' is extremely concise and front-loaded, consisting of a single, direct sentence with no wasted words. It efficiently communicates the core action without unnecessary elaboration.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given that this is a mutation tool with no annotations and no output schema, the description is incomplete. It does not address behavioral aspects like what happens on success or failure, nor does it provide context for usage relative to siblings. The 100% schema coverage helps with parameters, but overall completeness is lacking for effective tool invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with clear documentation for 'title' and 'content' parameters. The description does not add any semantic details beyond what the schema provides, such as format constraints or examples. Baseline score of 3 is appropriate as the schema handles parameter documentation adequately.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description 'Create a new note' clearly states the action (create) and resource (note), making the purpose understandable. However, it lacks specificity about what a 'note' entails in this context and does not distinguish it from sibling tools like 'update_database', which could involve similar data operations.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives, such as the sibling tool 'update_database'. It does not mention prerequisites, context for creation, or any exclusions, leaving the agent without usage instructions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

update_databaseC

Update the database from a CSV or Excel file

ParametersJSON Schema
NameRequiredDescriptionDefault
filePathYesPath to the CSV or Excel file
databaseTypeYesType of database (e.g., PostgreSQL, MySQL, MongoDB, SQLite)
connectionStringYesConnection string for the database
tableNameYesName of the table to update

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool updates a database, implying a mutation operation, but fails to describe critical behaviors such as required permissions, whether the update is destructive or additive, error handling, or any rate limits. This is a significant gap for a tool that performs database writes.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. It is front-loaded with the core action and resource, making it easy to parse. Every part of the sentence contributes essential information, earning its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of a database update tool with no annotations and no output schema, the description is incomplete. It lacks details on the update behavior (e.g., whether it overwrites or merges data), expected outcomes, error conditions, or security considerations. This leaves the agent with insufficient context for safe and effective use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema description coverage is 100%, so the input schema already documents all four parameters thoroughly. The description adds no additional meaning beyond what the schema provides, such as explaining how parameters interact or providing examples. This meets the baseline for high schema coverage but doesn't enhance parameter understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Update') and resource ('the database'), specifying the source format ('from a CSV or Excel file'). It distinguishes from the sibling tool 'create_note' by focusing on database operations rather than note creation. However, it doesn't specify what 'update' entails (e.g., insert, upsert, replace), keeping it from a perfect score.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives, prerequisites, or exclusions. It mentions the source file types but doesn't explain when this tool is appropriate compared to other database operations or data import methods. This lack of context leaves the agent with minimal usage direction.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

TDQS

C2.8/5.0
Disambiguation5/5

The two tools have completely distinct purposes with no overlap: create_note is for creating a new note, while update_database is for updating a database from a file. An agent can easily tell them apart based on their different functions and target resources (note vs. database).

Naming Consistency2/5

The naming is inconsistent: create_note follows a verb_noun pattern, but update_database uses a verb_noun pattern with a different verb style (update vs. create) and lacks a clear object for the update action. While both are readable, they do not follow a predictable or uniform convention across the set.

Tool Count2/5

With only 2 tools, this server feels thin for a 'Database Updater' purpose. The scope suggests operations like querying, deleting, or managing database entries, but only update_database directly relates, while create_note seems out of place. This mismatch makes the count inappropriate for the apparent domain.

Completeness2/5

The tool surface is significantly incomplete for a database updater server. There are no tools for reading, deleting, or querying the database, and create_note does not align with the core domain. This leaves obvious gaps that will hinder agents in performing typical database operations.

Maintenance

ActivityInactive
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    Provides Claude Desktop with secure access to multiple database connections, allowing users to query MySQL, PostgreSQL, SQLite, and SQL Server databases directly through natural language.
  • A
    license
    Not graded
    quality
    D
    maintenance
    Provides Claude with direct access to databases including SQLite, SQL Server, PostgreSQL, and MySQL, enabling execution of SQL queries and table management through natural language.
    806
    1
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables Claude to connect to and interact with SQLite, SQL Server, PostgreSQL, and MySQL databases through natural language. Supports executing queries, managing tables, exporting data, and storing business insights with authentication options including AWS IAM.
    806
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables Claude to query and manage databases (SQLite, SQL Server, PostgreSQL, MySQL) through natural language, supporting read/write operations and schema management.
    806
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/AnuragRai017/database-updater-MCP-Server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server