@rashidazarang/airtable-mcp 3.1.0 → 3.2.8
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/README.md +209 -334
- package/bin/airtable-mcp.js +12 -32
- package/dist/typescript/airtable-mcp-server.js +77 -0
- package/dist/typescript/airtable-mcp-server.js.map +1 -0
- package/dist/typescript/app/airtable-client.js +327 -0
- package/dist/typescript/app/airtable-client.js.map +1 -0
- package/dist/typescript/app/config.js +151 -0
- package/dist/typescript/app/config.js.map +1 -0
- package/dist/typescript/app/context.js +3 -0
- package/dist/typescript/app/context.js.map +1 -0
- package/dist/typescript/app/exceptions.js +85 -0
- package/dist/typescript/app/exceptions.js.map +1 -0
- package/dist/typescript/app/governance.js +58 -0
- package/dist/typescript/app/governance.js.map +1 -0
- package/dist/typescript/app/logger.js +47 -0
- package/dist/typescript/app/logger.js.map +1 -0
- package/dist/typescript/app/rateLimiter.js +37 -0
- package/dist/typescript/app/rateLimiter.js.map +1 -0
- package/dist/typescript/app/sanitize.js +95 -0
- package/dist/typescript/app/sanitize.js.map +1 -0
- package/dist/typescript/app/tools/create.js +55 -0
- package/dist/typescript/app/tools/create.js.map +1 -0
- package/dist/typescript/app/tools/describe.js +190 -0
- package/dist/typescript/app/tools/describe.js.map +1 -0
- package/dist/typescript/app/tools/handleError.js +205 -0
- package/dist/typescript/app/tools/handleError.js.map +1 -0
- package/dist/typescript/app/tools/index.js +24 -0
- package/dist/typescript/app/tools/index.js.map +1 -0
- package/dist/typescript/app/tools/listBases.js +47 -0
- package/dist/typescript/app/tools/listBases.js.map +1 -0
- package/dist/typescript/app/tools/listExceptions.js +16 -0
- package/dist/typescript/app/tools/listExceptions.js.map +1 -0
- package/dist/typescript/app/tools/listGovernance.js +15 -0
- package/dist/typescript/app/tools/listGovernance.js.map +1 -0
- package/dist/typescript/app/tools/query.js +133 -0
- package/dist/typescript/app/tools/query.js.map +1 -0
- package/dist/typescript/app/tools/response.js +21 -0
- package/dist/typescript/app/tools/response.js.map +1 -0
- package/dist/typescript/app/tools/update.js +57 -0
- package/dist/typescript/app/tools/update.js.map +1 -0
- package/dist/typescript/app/tools/upsert.js +66 -0
- package/dist/typescript/app/tools/upsert.js.map +1 -0
- package/dist/typescript/app/tools/webhooks.js +45 -0
- package/dist/typescript/app/tools/webhooks.js.map +1 -0
- package/dist/typescript/app/types.js +291 -0
- package/dist/typescript/app/types.js.map +1 -0
- package/dist/typescript/app/validateApiKey.js +75 -0
- package/dist/typescript/app/validateApiKey.js.map +1 -0
- package/dist/typescript/errors.js +75 -0
- package/dist/typescript/errors.js.map +1 -0
- package/dist/typescript/index.js +27 -0
- package/dist/typescript/index.js.map +1 -0
- package/package.json +49 -31
- package/tsconfig.json +10 -4
- package/types/typescript/airtable-mcp-server.d.ts +2 -0
- package/types/typescript/app/airtable-client.d.ts +50 -0
- package/types/typescript/app/config.d.ts +17 -0
- package/types/typescript/app/context.d.ts +12 -0
- package/types/typescript/app/exceptions.d.ts +12 -0
- package/types/typescript/app/governance.d.ts +18 -0
- package/types/typescript/app/logger.d.ts +13 -0
- package/types/typescript/app/rateLimiter.d.ts +13 -0
- package/types/typescript/app/sanitize.d.ts +50 -0
- package/types/typescript/app/tools/create.d.ts +3 -0
- package/types/typescript/app/tools/describe.d.ts +3 -0
- package/types/typescript/app/tools/handleError.d.ts +8 -0
- package/types/typescript/app/tools/index.d.ts +3 -0
- package/types/typescript/app/tools/listBases.d.ts +13 -0
- package/types/typescript/app/tools/listExceptions.d.ts +3 -0
- package/types/typescript/app/tools/listGovernance.d.ts +3 -0
- package/types/typescript/app/tools/query.d.ts +3 -0
- package/types/typescript/app/tools/response.d.ts +20 -0
- package/types/typescript/app/tools/update.d.ts +3 -0
- package/types/typescript/app/tools/upsert.d.ts +3 -0
- package/types/typescript/app/tools/webhooks.d.ts +3 -0
- package/types/typescript/app/types.d.ts +318 -0
- package/types/typescript/app/validateApiKey.d.ts +25 -0
- package/types/typescript/errors.d.ts +57 -0
- package/types/typescript/index.d.ts +10 -0
- package/types/typescript/prompt-templates.d.ts +5 -0
- package/types/typescript/tools-schemas.d.ts +5 -0
- package/airtable_simple.js +0 -1561
- package/airtable_simple_production.js +0 -1564
- package/dist/airtable-mcp-server.js +0 -660
- package/dist/airtable-mcp-server.js.map +0 -1
- package/dist/test-suite.js +0 -421
- package/dist/test-suite.js.map +0 -1
- package/examples/airtable-crud-example.js +0 -203
- package/examples/building-mcp.md +0 -6666
- package/examples/claude_config.json +0 -4
- package/examples/claude_simple_config.json +0 -7
- package/examples/env-demo.js +0 -172
- package/examples/example-tasks-update.json +0 -23
- package/examples/example-tasks.json +0 -26
- package/examples/example_usage.md +0 -124
- package/examples/python_debug_patch.txt +0 -27
- package/examples/sample-transform.js +0 -76
- package/examples/typescript/advanced-ai-prompts.ts +0 -447
- package/examples/typescript/basic-usage.ts +0 -174
- package/examples/typescript/claude-desktop-config.json +0 -29
- package/examples/windsurf_mcp_config.json +0 -17
- package/types/ai-prompts.d.ts +0 -321
- package/types/airtable-mcp-server.d.ts +0 -52
- package/types/index.d.ts +0 -357
- package/types/tools.d.ts +0 -514
- /package/types/{test-suite.d.ts → typescript/test-suite.d.ts} +0 -0
package/types/ai-prompts.d.ts
DELETED
|
@@ -1,321 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* AI-Powered Prompt Templates Type Definitions
|
|
3
|
-
* Enterprise-grade TypeScript types for all 10 AI prompt templates
|
|
4
|
-
*/
|
|
5
|
-
|
|
6
|
-
import { PromptSchema, PromptArgument } from './index';
|
|
7
|
-
|
|
8
|
-
// ============================================================================
|
|
9
|
-
// AI Prompt Template Interfaces
|
|
10
|
-
// ============================================================================
|
|
11
|
-
|
|
12
|
-
export interface AnalyzeDataPrompt {
|
|
13
|
-
table: string;
|
|
14
|
-
analysis_type?: 'trends' | 'statistical' | 'patterns' | 'predictive' | 'anomaly_detection' | 'correlation_matrix';
|
|
15
|
-
field_focus?: string;
|
|
16
|
-
time_dimension?: string;
|
|
17
|
-
confidence_level?: 0.90 | 0.95 | 0.99;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
export interface CreateReportPrompt {
|
|
21
|
-
table: string;
|
|
22
|
-
report_type: 'executive_summary' | 'detailed_analysis' | 'dashboard' | 'stakeholder_report';
|
|
23
|
-
target_audience: 'executives' | 'managers' | 'analysts' | 'technical_team';
|
|
24
|
-
include_recommendations?: boolean;
|
|
25
|
-
time_period?: string;
|
|
26
|
-
format_preference?: 'narrative' | 'bullet_points' | 'charts' | 'mixed';
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
export interface DataInsightsPrompt {
|
|
30
|
-
table: string;
|
|
31
|
-
insight_type: 'business_intelligence' | 'trend_analysis' | 'performance_metrics' | 'opportunity_identification';
|
|
32
|
-
focus_areas?: string[];
|
|
33
|
-
comparison_period?: string;
|
|
34
|
-
include_forecasting?: boolean;
|
|
35
|
-
stakeholder_context?: string;
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
export interface OptimizeWorkflowPrompt {
|
|
39
|
-
table: string;
|
|
40
|
-
current_process_description: string;
|
|
41
|
-
optimization_goals: ('efficiency' | 'accuracy' | 'speed' | 'cost_reduction' | 'compliance')[];
|
|
42
|
-
constraints?: string[];
|
|
43
|
-
automation_preference?: 'minimal' | 'moderate' | 'aggressive';
|
|
44
|
-
change_tolerance?: 'low' | 'medium' | 'high';
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
export interface SmartSchemaDesignPrompt {
|
|
48
|
-
purpose: string;
|
|
49
|
-
data_types: string[];
|
|
50
|
-
expected_volume: 'small' | 'medium' | 'large' | 'enterprise';
|
|
51
|
-
compliance_requirements?: ('GDPR' | 'HIPAA' | 'SOX' | 'PCI_DSS')[];
|
|
52
|
-
performance_priorities?: ('query_speed' | 'storage_efficiency' | 'scalability' | 'maintainability')[];
|
|
53
|
-
integration_needs?: string[];
|
|
54
|
-
user_access_patterns?: string;
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
export interface DataQualityAuditPrompt {
|
|
58
|
-
table: string;
|
|
59
|
-
quality_dimensions: ('completeness' | 'accuracy' | 'consistency' | 'timeliness' | 'validity' | 'uniqueness')[];
|
|
60
|
-
automated_fixes?: boolean;
|
|
61
|
-
severity_threshold?: 'low' | 'medium' | 'high' | 'critical';
|
|
62
|
-
compliance_context?: string;
|
|
63
|
-
reporting_requirements?: string[];
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
export interface PredictiveAnalyticsPrompt {
|
|
67
|
-
table: string;
|
|
68
|
-
target_field: string;
|
|
69
|
-
prediction_periods?: number;
|
|
70
|
-
algorithm?: 'linear_regression' | 'arima' | 'exponential_smoothing' | 'random_forest' | 'neural_network';
|
|
71
|
-
include_confidence_intervals?: boolean;
|
|
72
|
-
historical_periods?: number;
|
|
73
|
-
external_factors?: string[];
|
|
74
|
-
business_context?: string;
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
export interface NaturalLanguageQueryPrompt {
|
|
78
|
-
question: string;
|
|
79
|
-
tables?: string[];
|
|
80
|
-
response_format?: 'natural_language' | 'structured_data' | 'visualization_ready' | 'action_items';
|
|
81
|
-
context_awareness?: boolean;
|
|
82
|
-
confidence_threshold?: number;
|
|
83
|
-
clarifying_questions?: boolean;
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
export interface SmartDataTransformationPrompt {
|
|
87
|
-
source_table: string;
|
|
88
|
-
target_schema?: string;
|
|
89
|
-
transformation_goals: ('normalization' | 'aggregation' | 'enrichment' | 'validation' | 'standardization')[];
|
|
90
|
-
data_quality_rules?: string[];
|
|
91
|
-
preserve_history?: boolean;
|
|
92
|
-
validation_strategy?: 'strict' | 'permissive' | 'custom';
|
|
93
|
-
error_handling?: 'fail_fast' | 'log_and_continue' | 'manual_review';
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
export interface AutomationRecommendationsPrompt {
|
|
97
|
-
workflow_description: string;
|
|
98
|
-
current_pain_points: string[];
|
|
99
|
-
automation_scope: 'single_task' | 'workflow_segment' | 'end_to_end' | 'cross_system';
|
|
100
|
-
technical_constraints?: string[];
|
|
101
|
-
business_impact_priority?: ('cost_savings' | 'time_efficiency' | 'error_reduction' | 'scalability')[];
|
|
102
|
-
implementation_timeline?: 'immediate' | 'short_term' | 'medium_term' | 'long_term';
|
|
103
|
-
risk_tolerance?: 'conservative' | 'moderate' | 'aggressive';
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
// ============================================================================
|
|
107
|
-
// AI Prompt Response Types
|
|
108
|
-
// ============================================================================
|
|
109
|
-
|
|
110
|
-
export interface AnalysisResult {
|
|
111
|
-
summary: string;
|
|
112
|
-
key_findings: string[];
|
|
113
|
-
statistical_measures?: {
|
|
114
|
-
mean?: number;
|
|
115
|
-
median?: number;
|
|
116
|
-
std_deviation?: number;
|
|
117
|
-
correlation_coefficients?: Record<string, number>;
|
|
118
|
-
confidence_intervals?: Array<{ field: string; lower: number; upper: number; confidence: number }>;
|
|
119
|
-
};
|
|
120
|
-
trends?: Array<{
|
|
121
|
-
field: string;
|
|
122
|
-
direction: 'increasing' | 'decreasing' | 'stable' | 'volatile';
|
|
123
|
-
strength: 'weak' | 'moderate' | 'strong';
|
|
124
|
-
significance: number;
|
|
125
|
-
}>;
|
|
126
|
-
anomalies?: Array<{
|
|
127
|
-
record_id: string;
|
|
128
|
-
field: string;
|
|
129
|
-
expected_value: unknown;
|
|
130
|
-
actual_value: unknown;
|
|
131
|
-
deviation_score: number;
|
|
132
|
-
}>;
|
|
133
|
-
recommendations: string[];
|
|
134
|
-
next_steps: string[];
|
|
135
|
-
}
|
|
136
|
-
|
|
137
|
-
export interface ReportResult {
|
|
138
|
-
title: string;
|
|
139
|
-
executive_summary: string;
|
|
140
|
-
detailed_sections: Array<{
|
|
141
|
-
heading: string;
|
|
142
|
-
content: string;
|
|
143
|
-
supporting_data?: unknown[];
|
|
144
|
-
visualizations?: Array<{ type: string; data: unknown; description: string }>;
|
|
145
|
-
}>;
|
|
146
|
-
key_metrics: Record<string, { value: unknown; change: string; significance: string }>;
|
|
147
|
-
recommendations: Array<{
|
|
148
|
-
priority: 'high' | 'medium' | 'low';
|
|
149
|
-
recommendation: string;
|
|
150
|
-
expected_impact: string;
|
|
151
|
-
implementation_effort: 'low' | 'medium' | 'high';
|
|
152
|
-
}>;
|
|
153
|
-
appendices?: Array<{ title: string; content: string }>;
|
|
154
|
-
}
|
|
155
|
-
|
|
156
|
-
export interface WorkflowOptimizationResult {
|
|
157
|
-
current_state_analysis: {
|
|
158
|
-
efficiency_score: number;
|
|
159
|
-
bottlenecks: Array<{ step: string; impact: 'high' | 'medium' | 'low'; description: string }>;
|
|
160
|
-
resource_utilization: Record<string, number>;
|
|
161
|
-
};
|
|
162
|
-
optimization_recommendations: Array<{
|
|
163
|
-
category: 'automation' | 'process_redesign' | 'tool_integration' | 'skill_development';
|
|
164
|
-
recommendation: string;
|
|
165
|
-
expected_benefits: string[];
|
|
166
|
-
implementation_complexity: 'simple' | 'moderate' | 'complex';
|
|
167
|
-
estimated_roi: string;
|
|
168
|
-
timeline: string;
|
|
169
|
-
}>;
|
|
170
|
-
implementation_roadmap: Array<{
|
|
171
|
-
phase: number;
|
|
172
|
-
duration: string;
|
|
173
|
-
objectives: string[];
|
|
174
|
-
deliverables: string[];
|
|
175
|
-
success_metrics: string[];
|
|
176
|
-
}>;
|
|
177
|
-
risk_assessment: Array<{
|
|
178
|
-
risk: string;
|
|
179
|
-
probability: 'low' | 'medium' | 'high';
|
|
180
|
-
impact: 'low' | 'medium' | 'high';
|
|
181
|
-
mitigation: string;
|
|
182
|
-
}>;
|
|
183
|
-
}
|
|
184
|
-
|
|
185
|
-
export interface SchemaDesignResult {
|
|
186
|
-
recommended_schema: {
|
|
187
|
-
tables: Array<{
|
|
188
|
-
name: string;
|
|
189
|
-
purpose: string;
|
|
190
|
-
fields: Array<{
|
|
191
|
-
name: string;
|
|
192
|
-
type: string;
|
|
193
|
-
constraints: string[];
|
|
194
|
-
description: string;
|
|
195
|
-
}>;
|
|
196
|
-
relationships: Array<{
|
|
197
|
-
type: 'one_to_one' | 'one_to_many' | 'many_to_many';
|
|
198
|
-
target_table: string;
|
|
199
|
-
description: string;
|
|
200
|
-
}>;
|
|
201
|
-
}>;
|
|
202
|
-
};
|
|
203
|
-
design_principles: string[];
|
|
204
|
-
performance_considerations: string[];
|
|
205
|
-
scalability_notes: string[];
|
|
206
|
-
compliance_alignment: Record<string, string[]>;
|
|
207
|
-
migration_strategy?: {
|
|
208
|
-
phases: Array<{ phase: number; description: string; estimated_time: string }>;
|
|
209
|
-
data_migration_notes: string[];
|
|
210
|
-
validation_checkpoints: string[];
|
|
211
|
-
};
|
|
212
|
-
}
|
|
213
|
-
|
|
214
|
-
export interface PredictionResult {
|
|
215
|
-
predictions: Array<{
|
|
216
|
-
period: string;
|
|
217
|
-
predicted_value: number;
|
|
218
|
-
confidence_interval?: { lower: number; upper: number };
|
|
219
|
-
probability_bands?: Array<{ probability: number; range: [number, number] }>;
|
|
220
|
-
}>;
|
|
221
|
-
model_performance: {
|
|
222
|
-
algorithm_used: string;
|
|
223
|
-
accuracy_metrics: Record<string, number>;
|
|
224
|
-
feature_importance?: Record<string, number>;
|
|
225
|
-
validation_results: Record<string, number>;
|
|
226
|
-
};
|
|
227
|
-
business_insights: {
|
|
228
|
-
trend_direction: 'positive' | 'negative' | 'stable';
|
|
229
|
-
seasonality_detected: boolean;
|
|
230
|
-
external_factors_impact: string[];
|
|
231
|
-
risk_factors: string[];
|
|
232
|
-
};
|
|
233
|
-
recommendations: Array<{
|
|
234
|
-
type: 'operational' | 'strategic' | 'tactical';
|
|
235
|
-
recommendation: string;
|
|
236
|
-
timing: string;
|
|
237
|
-
confidence: number;
|
|
238
|
-
}>;
|
|
239
|
-
}
|
|
240
|
-
|
|
241
|
-
// ============================================================================
|
|
242
|
-
// Prompt Template Definitions (Type-Safe)
|
|
243
|
-
// ============================================================================
|
|
244
|
-
|
|
245
|
-
export const AI_PROMPT_TEMPLATES: Record<string, PromptSchema> = {
|
|
246
|
-
analyze_data: {
|
|
247
|
-
name: 'analyze_data',
|
|
248
|
-
description: 'Advanced AI data analysis with statistical insights, pattern recognition, and predictive modeling',
|
|
249
|
-
arguments: [
|
|
250
|
-
{ name: 'table', description: 'Table name or ID to analyze', required: true, type: 'string' },
|
|
251
|
-
{ name: 'analysis_type', description: 'Type of analysis', required: false, type: 'string', enum: ['trends', 'statistical', 'patterns', 'predictive', 'anomaly_detection', 'correlation_matrix'] },
|
|
252
|
-
{ name: 'field_focus', description: 'Specific fields to focus the analysis on', required: false, type: 'string' },
|
|
253
|
-
{ name: 'time_dimension', description: 'Time field for temporal analysis', required: false, type: 'string' },
|
|
254
|
-
{ name: 'confidence_level', description: 'Statistical confidence level', required: false, type: 'number', enum: ['0.90', '0.95', '0.99'] }
|
|
255
|
-
]
|
|
256
|
-
},
|
|
257
|
-
|
|
258
|
-
create_report: {
|
|
259
|
-
name: 'create_report',
|
|
260
|
-
description: 'Intelligent report generation with business insights and stakeholder-specific recommendations',
|
|
261
|
-
arguments: [
|
|
262
|
-
{ name: 'table', description: 'Table name or ID for report data', required: true, type: 'string' },
|
|
263
|
-
{ name: 'report_type', description: 'Type of report to generate', required: true, type: 'string', enum: ['executive_summary', 'detailed_analysis', 'dashboard', 'stakeholder_report'] },
|
|
264
|
-
{ name: 'target_audience', description: 'Primary audience for the report', required: true, type: 'string', enum: ['executives', 'managers', 'analysts', 'technical_team'] },
|
|
265
|
-
{ name: 'include_recommendations', description: 'Include actionable recommendations', required: false, type: 'boolean' },
|
|
266
|
-
{ name: 'time_period', description: 'Time period for analysis', required: false, type: 'string' },
|
|
267
|
-
{ name: 'format_preference', description: 'Preferred report format', required: false, type: 'string', enum: ['narrative', 'bullet_points', 'charts', 'mixed'] }
|
|
268
|
-
]
|
|
269
|
-
},
|
|
270
|
-
|
|
271
|
-
predictive_analytics: {
|
|
272
|
-
name: 'predictive_analytics',
|
|
273
|
-
description: 'Advanced forecasting and trend prediction with multiple algorithms and uncertainty quantification',
|
|
274
|
-
arguments: [
|
|
275
|
-
{ name: 'table', description: 'Table name or ID for prediction', required: true, type: 'string' },
|
|
276
|
-
{ name: 'target_field', description: 'Field to predict', required: true, type: 'string' },
|
|
277
|
-
{ name: 'prediction_periods', description: 'Number of periods to predict', required: false, type: 'number' },
|
|
278
|
-
{ name: 'algorithm', description: 'Prediction algorithm to use', required: false, type: 'string', enum: ['linear_regression', 'arima', 'exponential_smoothing', 'random_forest', 'neural_network'] },
|
|
279
|
-
{ name: 'include_confidence_intervals', description: 'Include confidence intervals', required: false, type: 'boolean' },
|
|
280
|
-
{ name: 'historical_periods', description: 'Historical periods for training', required: false, type: 'number' },
|
|
281
|
-
{ name: 'external_factors', description: 'External factors to consider', required: false, type: 'string' },
|
|
282
|
-
{ name: 'business_context', description: 'Business context for predictions', required: false, type: 'string' }
|
|
283
|
-
]
|
|
284
|
-
},
|
|
285
|
-
|
|
286
|
-
natural_language_query: {
|
|
287
|
-
name: 'natural_language_query',
|
|
288
|
-
description: 'Process natural language questions about data with intelligent context awareness',
|
|
289
|
-
arguments: [
|
|
290
|
-
{ name: 'question', description: 'Natural language question about the data', required: true, type: 'string' },
|
|
291
|
-
{ name: 'tables', description: 'Specific tables to search (optional)', required: false, type: 'string' },
|
|
292
|
-
{ name: 'response_format', description: 'Preferred response format', required: false, type: 'string', enum: ['natural_language', 'structured_data', 'visualization_ready', 'action_items'] },
|
|
293
|
-
{ name: 'context_awareness', description: 'Use context from previous queries', required: false, type: 'boolean' },
|
|
294
|
-
{ name: 'confidence_threshold', description: 'Minimum confidence for responses', required: false, type: 'number' },
|
|
295
|
-
{ name: 'clarifying_questions', description: 'Ask clarifying questions if needed', required: false, type: 'boolean' }
|
|
296
|
-
]
|
|
297
|
-
}
|
|
298
|
-
};
|
|
299
|
-
|
|
300
|
-
// ============================================================================
|
|
301
|
-
// Export All AI Prompt Types
|
|
302
|
-
// ============================================================================
|
|
303
|
-
|
|
304
|
-
export {
|
|
305
|
-
AnalyzeDataPrompt,
|
|
306
|
-
CreateReportPrompt,
|
|
307
|
-
DataInsightsPrompt,
|
|
308
|
-
OptimizeWorkflowPrompt,
|
|
309
|
-
SmartSchemaDesignPrompt,
|
|
310
|
-
DataQualityAuditPrompt,
|
|
311
|
-
PredictiveAnalyticsPrompt,
|
|
312
|
-
NaturalLanguageQueryPrompt,
|
|
313
|
-
SmartDataTransformationPrompt,
|
|
314
|
-
AutomationRecommendationsPrompt,
|
|
315
|
-
|
|
316
|
-
AnalysisResult,
|
|
317
|
-
ReportResult,
|
|
318
|
-
WorkflowOptimizationResult,
|
|
319
|
-
SchemaDesignResult,
|
|
320
|
-
PredictionResult
|
|
321
|
-
};
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
/**
|
|
3
|
-
* Airtable MCP Server - TypeScript Implementation
|
|
4
|
-
* Model Context Protocol server for Airtable integration with enterprise-grade type safety
|
|
5
|
-
*
|
|
6
|
-
* Features:
|
|
7
|
-
* - Complete MCP 2024-11-05 protocol support with strict typing
|
|
8
|
-
* - OAuth2 authentication with PKCE and type safety
|
|
9
|
-
* - Enterprise security features with validated types
|
|
10
|
-
* - Rate limiting and comprehensive input validation
|
|
11
|
-
* - Production monitoring and health checks
|
|
12
|
-
* - AI-powered analytics with strongly typed schemas
|
|
13
|
-
*
|
|
14
|
-
* Author: Rashid Azarang
|
|
15
|
-
* License: MIT
|
|
16
|
-
*/
|
|
17
|
-
import { MCPServerInfo } from '../types/index';
|
|
18
|
-
import { ToolResponse } from '../types/tools';
|
|
19
|
-
declare class AirtableMCPServer {
|
|
20
|
-
private server;
|
|
21
|
-
private readonly config;
|
|
22
|
-
private readonly tools;
|
|
23
|
-
private readonly prompts;
|
|
24
|
-
private readonly roots;
|
|
25
|
-
constructor();
|
|
26
|
-
initialize(): Promise<MCPServerInfo>;
|
|
27
|
-
handleToolCall(name: string, params: Record<string, unknown>): Promise<ToolResponse>;
|
|
28
|
-
private handleListTables;
|
|
29
|
-
private handleListRecords;
|
|
30
|
-
private handleCreateRecord;
|
|
31
|
-
private handleUpdateRecord;
|
|
32
|
-
private handleDeleteRecord;
|
|
33
|
-
handlePromptGet(name: string, args: Record<string, unknown>): Promise<{
|
|
34
|
-
messages: Array<{
|
|
35
|
-
role: string;
|
|
36
|
-
content: {
|
|
37
|
-
type: string;
|
|
38
|
-
text: string;
|
|
39
|
-
};
|
|
40
|
-
}>;
|
|
41
|
-
}>;
|
|
42
|
-
private handleAnalyzeDataPrompt;
|
|
43
|
-
private handleCreateReportPrompt;
|
|
44
|
-
private handlePredictiveAnalyticsPrompt;
|
|
45
|
-
private handleNaturalLanguageQueryPrompt;
|
|
46
|
-
start(): Promise<void>;
|
|
47
|
-
stop(): Promise<void>;
|
|
48
|
-
private handleRequest;
|
|
49
|
-
private handleMCPRequest;
|
|
50
|
-
}
|
|
51
|
-
export { AirtableMCPServer };
|
|
52
|
-
export default AirtableMCPServer;
|