@rashidazarang/airtable-mcp 1.2.4 → 1.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/settings.local.json +4 -1
- package/CAPABILITY_REPORT.md +118 -0
- package/DEVELOPMENT.md +2 -0
- package/IMPROVEMENT_PROPOSAL.md +371 -0
- package/MCP_REVIEW_SUMMARY.md +2 -0
- package/README.md +98 -15
- package/RELEASE_NOTES_v1.2.3.md +2 -0
- package/RELEASE_NOTES_v1.4.0.md +104 -0
- package/RELEASE_NOTES_v1.5.0.md +185 -0
- package/airtable_enhanced.js +499 -0
- package/airtable_simple.js +921 -83
- package/airtable_simple_v1.2.4_backup.js +277 -0
- package/airtable_v1.4.0.js +654 -0
- package/cleanup.sh +2 -0
- package/inspector_server.py +1 -1
- package/package.json +1 -1
- package/quick_test.sh +2 -0
- package/test_all_features.sh +146 -0
- package/test_all_operations.sh +120 -0
- package/test_enhanced_features.js +389 -0
- package/test_mcp_comprehensive.js +2 -0
- package/test_mock_server.js +180 -0
- package/test_v1.4.0_final.sh +131 -0
- package/test_v1.5.0_comprehensive.sh +96 -0
- package/test_v1.5.0_final.sh +224 -0
- package/test_webhooks.sh +105 -0
package/RELEASE_NOTES_v1.2.3.md
CHANGED
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
# Release Notes - v1.4.0
|
|
2
|
+
|
|
3
|
+
## 🚀 Major Feature Release
|
|
4
|
+
|
|
5
|
+
### ✨ New Features
|
|
6
|
+
|
|
7
|
+
#### 🪝 **Webhook Management** (5 new tools)
|
|
8
|
+
- `list_webhooks` - List all webhooks in your base
|
|
9
|
+
- `create_webhook` - Create webhooks for real-time notifications
|
|
10
|
+
- `delete_webhook` - Remove webhooks
|
|
11
|
+
- `get_webhook_payloads` - Retrieve webhook payload history
|
|
12
|
+
- `refresh_webhook` - Extend webhook expiration time
|
|
13
|
+
|
|
14
|
+
#### 🔧 **Enhanced CRUD Operations** (5 tools added since v1.2.4)
|
|
15
|
+
- `create_record` - Create new records in any table
|
|
16
|
+
- `update_record` - Update existing records
|
|
17
|
+
- `delete_record` - Remove records from tables
|
|
18
|
+
- `get_record` - Retrieve single record by ID
|
|
19
|
+
- `search_records` - Advanced filtering with Airtable formulas
|
|
20
|
+
|
|
21
|
+
### 📊 **Complete Tool Set (12 tools total)**
|
|
22
|
+
1. **list_tables** - List all tables in base
|
|
23
|
+
2. **list_records** - List records from table
|
|
24
|
+
3. **get_record** - Get single record by ID
|
|
25
|
+
4. **create_record** - Create new records
|
|
26
|
+
5. **update_record** - Update existing records
|
|
27
|
+
6. **delete_record** - Delete records
|
|
28
|
+
7. **search_records** - Search with filters
|
|
29
|
+
8. **list_webhooks** - List webhooks
|
|
30
|
+
9. **create_webhook** - Create webhooks
|
|
31
|
+
10. **delete_webhook** - Delete webhooks
|
|
32
|
+
11. **get_webhook_payloads** - Get webhook history
|
|
33
|
+
12. **refresh_webhook** - Refresh webhook expiration
|
|
34
|
+
|
|
35
|
+
### 🔐 **Security Improvements**
|
|
36
|
+
- Environment variable support for credentials
|
|
37
|
+
- Token masking in logs
|
|
38
|
+
- Configurable logging levels (ERROR, WARN, INFO, DEBUG)
|
|
39
|
+
- No hardcoded credentials in test files
|
|
40
|
+
|
|
41
|
+
### 🛠️ **Technical Improvements**
|
|
42
|
+
- Full HTTP method support (GET, POST, PATCH, DELETE)
|
|
43
|
+
- Enhanced error handling with detailed messages
|
|
44
|
+
- Proper API endpoint routing
|
|
45
|
+
- Debug logging support
|
|
46
|
+
- Graceful shutdown handling
|
|
47
|
+
|
|
48
|
+
### 📈 **Testing**
|
|
49
|
+
- **100% test coverage** - All 12 tools tested and verified
|
|
50
|
+
- Tested with real Airtable API
|
|
51
|
+
- Comprehensive test suite included
|
|
52
|
+
- Test scripts for validation
|
|
53
|
+
|
|
54
|
+
### 💔 **Breaking Changes**
|
|
55
|
+
- Test files now require environment variables:
|
|
56
|
+
```bash
|
|
57
|
+
export AIRTABLE_TOKEN="your_token"
|
|
58
|
+
export AIRTABLE_BASE_ID="your_base_id"
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
### 🔄 **Migration from v1.2.4**
|
|
62
|
+
|
|
63
|
+
1. **Update package**:
|
|
64
|
+
```bash
|
|
65
|
+
npm install -g @rashidazarang/airtable-mcp@latest
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
2. **Set credentials** (choose one method):
|
|
69
|
+
- Environment variables
|
|
70
|
+
- Command line arguments
|
|
71
|
+
- .env file
|
|
72
|
+
|
|
73
|
+
3. **Update configuration** if using webhooks
|
|
74
|
+
|
|
75
|
+
### 📝 **Webhook Usage Example**
|
|
76
|
+
|
|
77
|
+
```javascript
|
|
78
|
+
// Create a webhook
|
|
79
|
+
{
|
|
80
|
+
"name": "create_webhook",
|
|
81
|
+
"arguments": {
|
|
82
|
+
"notificationUrl": "https://your-endpoint.com/webhook"
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
// The response includes:
|
|
87
|
+
// - Webhook ID
|
|
88
|
+
// - MAC secret (save this - shown only once!)
|
|
89
|
+
// - Expiration time
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
### 🎯 **What's Next**
|
|
93
|
+
- Batch operations support
|
|
94
|
+
- Comment management
|
|
95
|
+
- Attachment handling
|
|
96
|
+
- Schema modification tools
|
|
97
|
+
|
|
98
|
+
### 🙏 **Acknowledgments**
|
|
99
|
+
- Thanks to all testers and contributors
|
|
100
|
+
- Special thanks for the comprehensive testing feedback
|
|
101
|
+
|
|
102
|
+
---
|
|
103
|
+
|
|
104
|
+
**Full Changelog**: [v1.2.4...v1.4.0](https://github.com/rashidazarang/airtable-mcp/compare/v1.2.4...v1.4.0)
|
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
# 🚀 Airtable MCP Server v1.5.0 Release Notes
|
|
2
|
+
|
|
3
|
+
**Release Date**: August 15, 2025
|
|
4
|
+
**Major Update**: Enhanced Schema Management & Advanced Features
|
|
5
|
+
|
|
6
|
+
## 🎯 Overview
|
|
7
|
+
|
|
8
|
+
Version 1.5.0 represents a **major expansion** of the Airtable MCP Server, adding comprehensive schema management capabilities inspired by the best features from domdomegg's airtable-mcp-server while maintaining our unique webhook support. This release **doubles** the number of available tools from 12 to **23 tools**.
|
|
9
|
+
|
|
10
|
+
## ✨ New Features
|
|
11
|
+
|
|
12
|
+
### 📊 Schema Discovery Tools (6 New Tools)
|
|
13
|
+
|
|
14
|
+
1. **`list_bases`** - Discover all accessible Airtable bases
|
|
15
|
+
- Lists all bases with permissions
|
|
16
|
+
- Supports pagination with offset parameter
|
|
17
|
+
- Shows base names, IDs, and permission levels
|
|
18
|
+
|
|
19
|
+
2. **`get_base_schema`** - Complete base schema information
|
|
20
|
+
- Detailed table structures and relationships
|
|
21
|
+
- Field definitions with types and options
|
|
22
|
+
- View configurations and metadata
|
|
23
|
+
|
|
24
|
+
3. **`describe_table`** - Enhanced table inspection
|
|
25
|
+
- Comprehensive field information including IDs, types, descriptions
|
|
26
|
+
- View details and configurations
|
|
27
|
+
- Much more detailed than the basic `list_tables`
|
|
28
|
+
|
|
29
|
+
4. **`list_field_types`** - Field type reference
|
|
30
|
+
- Complete documentation of all Airtable field types
|
|
31
|
+
- Includes basic fields (text, number, date) and advanced fields (formulas, lookups)
|
|
32
|
+
- Helpful for understanding what field types are available for creation
|
|
33
|
+
|
|
34
|
+
5. **`get_table_views`** - View management
|
|
35
|
+
- Lists all views for a specific table
|
|
36
|
+
- Shows view types, IDs, and configurations
|
|
37
|
+
- Includes visible field information
|
|
38
|
+
|
|
39
|
+
### 🏗️ Table Management Tools (3 New Tools)
|
|
40
|
+
|
|
41
|
+
6. **`create_table`** - Programmatic table creation
|
|
42
|
+
- Create new tables with custom field definitions
|
|
43
|
+
- Support for all field types with proper validation
|
|
44
|
+
- Optional table descriptions
|
|
45
|
+
|
|
46
|
+
7. **`update_table`** - Table metadata modification
|
|
47
|
+
- Update table names and descriptions
|
|
48
|
+
- Non-destructive metadata changes
|
|
49
|
+
|
|
50
|
+
8. **`delete_table`** - Table removal (with safety checks)
|
|
51
|
+
- Requires explicit confirmation with `confirm=true`
|
|
52
|
+
- Permanently removes table and all data
|
|
53
|
+
- Safety warnings to prevent accidental deletions
|
|
54
|
+
|
|
55
|
+
### 🔧 Field Management Tools (4 New Tools)
|
|
56
|
+
|
|
57
|
+
9. **`create_field`** - Add fields to existing tables
|
|
58
|
+
- Support for all Airtable field types
|
|
59
|
+
- Custom field options and descriptions
|
|
60
|
+
- Validates field types and configurations
|
|
61
|
+
|
|
62
|
+
10. **`update_field`** - Modify existing field properties
|
|
63
|
+
- Update field names, descriptions, and options
|
|
64
|
+
- Change field configurations safely
|
|
65
|
+
|
|
66
|
+
11. **`delete_field`** - Remove fields (with safety checks)
|
|
67
|
+
- Requires explicit confirmation with `confirm=true`
|
|
68
|
+
- Permanently removes field and all data
|
|
69
|
+
- Safety warnings to prevent accidental deletions
|
|
70
|
+
|
|
71
|
+
## 🔄 Enhanced Existing Features
|
|
72
|
+
|
|
73
|
+
- **Improved error handling** for all metadata operations
|
|
74
|
+
- **Better table/field lookup** supporting both names and IDs
|
|
75
|
+
- **Enhanced validation** for destructive operations
|
|
76
|
+
- **Consistent response formatting** across all tools
|
|
77
|
+
|
|
78
|
+
## 📊 Tool Count Summary
|
|
79
|
+
|
|
80
|
+
| Category | v1.4.0 | v1.5.0 | New in v1.5.0 |
|
|
81
|
+
|----------|--------|--------|----------------|
|
|
82
|
+
| **Data Operations** | 7 | 7 | - |
|
|
83
|
+
| **Webhook Management** | 5 | 5 | - |
|
|
84
|
+
| **Schema Management** | 0 | 11 | ✅ 11 new tools |
|
|
85
|
+
| **Total Tools** | **12** | **23** | **+11 tools** |
|
|
86
|
+
|
|
87
|
+
## 🛠️ Technical Improvements
|
|
88
|
+
|
|
89
|
+
### API Enhancements
|
|
90
|
+
- **Metadata API Support**: Full integration with Airtable's metadata API endpoints
|
|
91
|
+
- **Enhanced callAirtableAPI Function**: Already supported metadata endpoints
|
|
92
|
+
- **Improved Error Handling**: Better error messages for schema operations
|
|
93
|
+
|
|
94
|
+
### Security & Safety
|
|
95
|
+
- **Confirmation Required**: Destructive operations require explicit confirmation
|
|
96
|
+
- **Validation Checks**: Proper field type and option validation
|
|
97
|
+
- **Safety Warnings**: Clear warnings for irreversible operations
|
|
98
|
+
|
|
99
|
+
### Authentication
|
|
100
|
+
- **Extended Scope Support**: Now leverages `schema.bases:read` and `schema.bases:write` scopes
|
|
101
|
+
- **Backward Compatibility**: All existing functionality remains unchanged
|
|
102
|
+
|
|
103
|
+
## 📚 New Capabilities
|
|
104
|
+
|
|
105
|
+
### For Users
|
|
106
|
+
- **Complete Base Discovery**: Find and explore all accessible bases
|
|
107
|
+
- **Advanced Schema Inspection**: Understand table and field structures in detail
|
|
108
|
+
- **Programmatic Table Creation**: Build tables through natural language
|
|
109
|
+
- **Dynamic Field Management**: Add, modify, and remove fields as needed
|
|
110
|
+
- **Comprehensive Field Reference**: Quick access to all available field types
|
|
111
|
+
|
|
112
|
+
### For Developers
|
|
113
|
+
- **Full CRUD for Schema**: Complete Create, Read, Update, Delete operations for tables and fields
|
|
114
|
+
- **Metadata-First Approach**: Rich schema information before data operations
|
|
115
|
+
- **Enhanced Automation**: Build complex Airtable structures programmatically
|
|
116
|
+
|
|
117
|
+
## 🚀 Getting Started with v1.5.0
|
|
118
|
+
|
|
119
|
+
### Installation
|
|
120
|
+
```bash
|
|
121
|
+
npm install -g @rashidazarang/airtable-mcp@1.5.0
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
### Required Token Scopes
|
|
125
|
+
For full v1.5.0 functionality, ensure your Airtable Personal Access Token includes:
|
|
126
|
+
- `data.records:read` - Read records
|
|
127
|
+
- `data.records:write` - Create, update, delete records
|
|
128
|
+
- `schema.bases:read` - View table schemas (**New requirement**)
|
|
129
|
+
- `schema.bases:write` - Create, modify tables and fields (**New requirement**)
|
|
130
|
+
- `webhook:manage` - Webhook operations (optional)
|
|
131
|
+
|
|
132
|
+
### Example Usage
|
|
133
|
+
|
|
134
|
+
```javascript
|
|
135
|
+
// Discover available bases
|
|
136
|
+
"List all my accessible Airtable bases"
|
|
137
|
+
|
|
138
|
+
// Explore a base structure
|
|
139
|
+
"Show me the complete schema for this base"
|
|
140
|
+
|
|
141
|
+
// Create a new table
|
|
142
|
+
"Create a new table called 'Projects' with fields: Name (text), Status (single select with options: Active, Completed, On Hold), and Due Date (date)"
|
|
143
|
+
|
|
144
|
+
// Add a field to existing table
|
|
145
|
+
"Add a 'Priority' field to the Projects table as a single select with options: Low, Medium, High"
|
|
146
|
+
|
|
147
|
+
// Get detailed table information
|
|
148
|
+
"Describe the Projects table with all field details"
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
## 🔧 Breaking Changes
|
|
152
|
+
|
|
153
|
+
**None** - v1.5.0 is fully backward compatible with v1.4.0. All existing tools and functionality remain unchanged.
|
|
154
|
+
|
|
155
|
+
## 🐛 Bug Fixes
|
|
156
|
+
|
|
157
|
+
- **Security**: Fixed clear-text logging of sensitive information (GitHub security alerts)
|
|
158
|
+
- **API Error Handling**: Improved error messages for invalid table/field references
|
|
159
|
+
- **Response Formatting**: Consistent JSON response structure across all tools
|
|
160
|
+
|
|
161
|
+
## 🌟 What's Next
|
|
162
|
+
|
|
163
|
+
- Enhanced search capabilities with field-specific filtering
|
|
164
|
+
- Batch operations for bulk table/field management
|
|
165
|
+
- Advanced view creation and management
|
|
166
|
+
- Performance optimizations for large bases
|
|
167
|
+
|
|
168
|
+
## 📈 Performance & Compatibility
|
|
169
|
+
|
|
170
|
+
- **Node.js**: Requires Node.js 14+
|
|
171
|
+
- **Rate Limits**: Respects Airtable's 5 requests/second limit
|
|
172
|
+
- **Memory Usage**: Optimized for efficient schema operations
|
|
173
|
+
- **Response Times**: Fast metadata operations with caching
|
|
174
|
+
|
|
175
|
+
## 🤝 Community & Support
|
|
176
|
+
|
|
177
|
+
This release incorporates community feedback and feature requests. The v1.5.0 implementation draws inspiration from domdomegg's airtable-mcp-server while maintaining our unique webhook capabilities and enhanced error handling.
|
|
178
|
+
|
|
179
|
+
**GitHub**: https://github.com/rashidazarang/airtable-mcp
|
|
180
|
+
**NPM**: https://www.npmjs.com/package/@rashidazarang/airtable-mcp
|
|
181
|
+
**Issues**: https://github.com/rashidazarang/airtable-mcp/issues
|
|
182
|
+
|
|
183
|
+
---
|
|
184
|
+
|
|
185
|
+
🎉 **Thank you for using Airtable MCP Server!** This release makes it the most comprehensive Airtable integration available for AI assistants, combining powerful schema management with robust webhook support.
|