The Airparser MCP connector routes your AI agent's tool calls to Airparser's own MCP server through Scalekit. Each user signs in to Airparser once, and Scalekit stores and refreshes their tokens, so your agent never handles credentials. It comes with 17 tools.
- Tools
- 17
- What they doRead · write · destructive
- 8 · 9 · 08 read9 write0 destructive
- Users sign in with
- OAuth
- OAuth app
- Your own Airparser MCP server app
Setup
Install the SDK
Terminal window npm install @scalekit-sdk/node dotenvTerminal window pip install scalekit-sdk-python python-dotenvSet your credentials
Add your Scalekit credentials to your
.envfile. Find values in app.scalekit.com > Developers > API Credentials..env SCALEKIT_ENVIRONMENT_URL=<your-environment-url>SCALEKIT_CLIENT_ID=<your-client-id>SCALEKIT_CLIENT_SECRET=<your-client-secret>Create the Airparser MCP connection
In AgentKit > Connections, create an Airparser MCP connection and copy its redirect URI. The name you give it is the
connection_nameyour code passes. See Configure connections.Register an OAuth app
Airparser MCP server connections use your own OAuth app. Register one with Airparser MCP server and add the redirect URI you copied.
Then enter the app's Client ID and Client Secret on the Airparser MCP connection.
Authorize a user and make your first call
quickstart.mts import { ScalekitClient } from '@scalekit-sdk/node'import 'dotenv/config'import { createInterface } from 'node:readline/promises'const scalekit = new ScalekitClient(process.env.SCALEKIT_ENVIRONMENT_URL,process.env.SCALEKIT_CLIENT_ID,process.env.SCALEKIT_CLIENT_SECRET,)const actions = scalekit.actionsconst connector = 'airparsermcp'const identifier = 'user_123'// Generate an authorization link for the userconst { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })console.log('Authorize Airparser MCP:', link)const rl = createInterface({ input: process.stdin, output: process.stdout })await rl.question('Press Enter after authorizing...')rl.close()// Make your first callconst result = await actions.executeTool({connector,identifier,toolName: 'airparsermcp_get_extraction_schema_format_guide',toolInput: {},})console.log(result)Terminal window npx tsx quickstart.mtsquickstart.py import osfrom scalekit import ScalekitClientfrom dotenv import load_dotenvload_dotenv()scalekit_client = ScalekitClient(env_url=os.getenv("SCALEKIT_ENVIRONMENT_URL"),client_id=os.getenv("SCALEKIT_CLIENT_ID"),client_secret=os.getenv("SCALEKIT_CLIENT_SECRET"),)actions = scalekit_client.actionsconnection_name = "airparsermcp"identifier = "user_123"# Generate an authorization link for the userlink_response = actions.get_authorization_link(connection_name=connection_name,identifier=identifier,)print("Authorize Airparser MCP:", link_response.link)input("Press Enter after authorizing...")# Make your first callresult = actions.execute_tool(tool_input={},tool_name="airparsermcp_get_extraction_schema_format_guide",connection_name=connection_name,identifier=identifier,)print(result)Terminal window python quickstart.pyEach user signs in once. See Authorize a user for the full flow and statuses.
Tools
Pass the exact name toexecute_toolairparsermcp_get_documentGet one Airparser document with parsed JSON for the authenticated user.Read-onlyGet Document
Get one Airparser document with parsed JSON for the authenticated user.
Inputs
document_idstringrequired- Airparser document id.
airparsermcp_get_extraction_schemaGet the current extraction schema configured for an Airparser inbox.Read-onlyGet Extraction Schema
Get the current extraction schema configured for an Airparser inbox.
Inputs
inbox_idstringrequired- Airparser inbox id.
airparsermcp_get_extraction_schema_format_guideGet a compact guide to the native Airparser extraction schema format, including field types and examples.Read-onlyGet Extraction Schema Format Guide
Get a compact guide to the native Airparser extraction schema format, including field types and examples.
Inputs
This tool takes no inputs.
airparsermcp_get_inboxGet a single Airparser inbox, including extraction schema details.Read-onlyGet Inbox
Get a single Airparser inbox, including extraction schema details.
Inputs
inbox_idstringrequired- Airparser inbox id.
airparsermcp_get_postprocessingGet the current Airparser post-processing configuration for an inbox, including whether it is enabled and the saved Python code.Read-onlyGet Post-Processing Configuration
Get the current Airparser post-processing configuration for an inbox, including whether it is enabled and the saved Python code.
Inputs
inbox_idstringrequired- Airparser inbox id.
airparsermcp_get_postprocessing_runtime_rulesGet the runtime constraints and allowed imports for Airparser post-processing Python code.Read-onlyGet Post-Processing Runtime Rules
Get the runtime constraints and allowed imports for Airparser post-processing Python code.
Inputs
This tool takes no inputs.
airparsermcp_list_documentsList documents inside an Airparser inbox, including recent parsed results and pagination metadata.Read-onlyList Documents
List documents inside an Airparser inbox, including recent parsed results and pagination metadata.
Inputs
inbox_idstringrequired- Airparser inbox id.
fromstring- Start date filter in YYYY-MM-DD format.
pageinteger- 1-based page number for pagination.
tostring- End date filter in YYYY-MM-DD format.
airparsermcp_list_inboxesList active Airparser inboxes available to the authenticated user.Read-onlyList Inboxes
List active Airparser inboxes available to the authenticated user.
Inputs
This tool takes no inputs.
airparsermcp_create_inboxCreate a new Airparser inbox with the selected LLM engine.WriteCreate Inbox
Create a new Airparser inbox with the selected LLM engine.
Inputs
llm_enginestringrequired- Parsing engine: 'text' for text-based documents, 'vision' for image-based documents.one of
textvision namestringrequired- Human-friendly inbox name.
airparsermcp_generate_schema_from_documentGenerate an Airparser extraction schema proposal from an existing document in an inbox.WriteGenerate Schema From Document
Generate an Airparser extraction schema proposal from an existing document in an inbox.
Inputs
document_idstringrequired- Existing document id inside that inbox.
inbox_idstringrequired- Airparser inbox id.
airparsermcp_save_postprocessing_codeSave Airparser post-processing Python code for an inbox without changing whether it is enabled.WriteSave Postprocessing Code
Save Airparser post-processing Python code for an inbox without changing whether it is enabled.
Inputs
codestringrequired- Python function body to save.
inbox_idstringrequired- Airparser inbox id.
airparsermcp_set_postprocessing_enabledEnable or disable the saved Airparser post-processing step for an inbox.WriteSet Post-Processing Enabled
Enable or disable the saved Airparser post-processing step for an inbox.
- Idempotent
Inputs
inbox_idstringrequired- Airparser inbox id.
is_enabledbooleanrequired- Whether post-processing should be enabled.
airparsermcp_test_postprocessing_codeRun Airparser post-processing Python code against an existing parsed document without saving it.WriteTest Post-Processing Code
Run Airparser post-processing Python code against an existing parsed document without saving it.
- Idempotent
Inputs
codestringrequired- Python function body to run inside the restricted Airparser post-processing wrapper.
document_idstringrequired- Parsed Airparser document id.
inbox_idstringrequired- Airparser inbox id.
airparsermcp_update_extraction_schemaCreate or update the extraction schema for an Airparser inbox using the native validated schema format.WriteUpdate Extraction Schema
Create or update the extraction schema for an Airparser inbox using the native validated schema format.
- Idempotent
Inputs
fieldsarrayrequired- Extraction schema fields in Airparser native format. Each field object must use "name" (not "key") as the field identifier.
inbox_idstringrequired- Airparser inbox id.
airparsermcp_update_extraction_schema_from_json_schemaConvert an OpenAI-style schema description into the native Airparser extraction schema format and save it to an inbox.WriteUpdate Extraction Schema From JSON Schema
Convert an OpenAI-style schema description into the native Airparser extraction schema format and save it to an inbox.
- Idempotent
Inputs
fieldsarrayrequired- OpenAI-style field definitions to convert. Each item has name, description, type, and optional attributes.
inbox_idstringrequired- Airparser inbox id.
airparsermcp_update_fields_metaEnable or disable per-document output metadata fields for an Airparser inbox.WriteUpdate Fields Meta
Enable or disable per-document output metadata fields for an Airparser inbox. Only passed fields are changed; omitted fields keep their current value.
- Idempotent
Inputs
fields_metaobjectrequired- Partial set of metadata fields to enable/disable. Optional boolean properties: from, from_name, original_recipient, to, cc, bcc, reply_to, subject, received_at_datetime, received_at_date, received_at_time, attachments_nb, doc_id, doc_url, content_type, content, content_plaintext, content_plaintext_md, download_url, parent_id, parent_data, name, filename, credits, pages, confidence.
inbox_idstringrequired- Airparser inbox id.
airparsermcp_upload_document_syncUpload one document to an Airparser inbox and wait for the parsed result.WriteUpload Document Sync
Upload one document to an Airparser inbox and wait for the parsed result. File content must be base64 encoded.
Inputs
content_base64stringrequired- Base64-encoded file contents.
content_typestringrequired- MIME type of the document.
filenamestringrequired- Original filename including extension.
inbox_idstringrequired- Target Airparser inbox id.
metadataobject- Optional metadata key-value pairs to attach.
No tools match.