Workspace-DB-Manager
使用文件系统集成管理工作区数据库的打字稿MCP服务器
1
Github Watches
0
Github Forks
0
Github Stars
WIP: Caution!!! AI code and probably wrong in many ways though it "runs".
Workspace DB Manager
A TypeScript MCP (Model Context Protocol) server for managing workspace databases with filesystem integration.
Features
- SQLite database management with automatic discovery
- Real-time filesystem monitoring for database changes
- Database connection pooling and management
- Automatic database tracking and status updates
- Cross-database operations support
- TypeScript/ES Module architecture
Getting Started
- Install dependencies:
npm install
- Build the TypeScript code:
npm run build
- Initialize the core database:
npm run init-db
- Start the server:
npm start
Development
# Run in development mode with auto-reload
npm run dev
# Run tests
npm test
# Build TypeScript
npm run build
Continuous Integration
This project uses GitHub Actions for continuous integration:
- Runs on Node.js 20.x, 21.x, and 22.x
- Automatically runs tests on every push and pull request
- Checks TypeScript compilation
- Generates and uploads test coverage reports
- Fails if code quality standards are not met
Configuration
The server can be configured through a WorkspaceConfig object:
const manager = new WorkspaceDBManager({
watchPaths: ['/path/to/workspace'],
pollInterval: 1000, // Optional: file system polling interval
database: {
verbose: true // Optional: enable verbose database logging
}
});
Database Operations
Automatic Database Discovery
The server automatically detects and tracks:
- New database files
- Database modifications
- Database removals
Database Management
// List all managed databases
const databases = await manager.listManagedDatabases();
// Get system configuration
const config = await manager.getConfig('some_key');
Events
The server emits events for various operations:
-
database-added: When a new database is discovered -
database-changed: When a database is modified -
database-removed: When a database is removed -
error: When an error occurs -
initialized: When the server is fully initialized
Testing
# Run all tests
npm test
# Run tests with coverage
npm test -- --coverage
Contributing
- Fork the repository
- Create your feature branch
- Commit your changes
- Push to the branch
- Create a Pull Request
License
ISC
相关推荐
I craft unique cereal names, stories, and ridiculously cute Cereal Baby images.
Evaluator for marketplace product descriptions, checks for relevancy and keyword stuffing.
Confidential guide on numerology and astrology, based of GG33 Public information
Emulating Dr. Jordan B. Peterson's style in providing life advice and insights.
Reviews
user_6ByCbfUo
As a dedicated user of the RAGFlow MCP Server developed by Wang Junjian, I am highly impressed with its performance and reliability. This server solution offers seamless integration and efficient management of workflows, making it an essential tool for any professional environment. The user-friendly interface and comprehensive support make it a standout choice for MCP applications. Highly recommended!