The Conversion Tools MCP connector routes your AI agent's tool calls to Conversion Tools's own MCP server through Scalekit. Each user signs in to Conversion Tools once, and Scalekit stores and refreshes their tokens, so your agent never handles credentials. It comes with 23 tools.
- Tools
- 23
- What they doRead · write · destructive
- 0 · 23 · 00 read23 write0 destructive
- Users sign in with
- OAuth
- OAuth app
- Scalekit's or your own
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 Conversion Tools MCP connection
In AgentKit > Connections, create a Conversion Tools MCP connection. The name you give it is the
connection_nameyour code passes. See Configure connections.Scalekit credentials are available for Conversion Tools MCP server, so you don't need to register an OAuth app.
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 = 'conversiontoolsmcp'const identifier = 'user_123'// Generate an authorization link for the userconst { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })console.log('Authorize Conversion Tools 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: 'conversiontoolsmcp_auth_login',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 = "conversiontoolsmcp"identifier = "user_123"# Generate an authorization link for the userlink_response = actions.get_authorization_link(connection_name=connection_name,identifier=identifier,)print("Authorize Conversion Tools MCP:", link_response.link)input("Press Enter after authorizing...")# Make your first callresult = actions.execute_tool(tool_input={},tool_name="conversiontoolsmcp_auth_login",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_toolconversiontoolsmcp_auth_loginLogin to ConversionTools using OAuth.WriteAuth Login
Login to ConversionTools using OAuth. Opens a browser window for authentication.
Inputs
forceboolean- Force re-authentication even if already logged in
conversiontoolsmcp_auth_logoutLogout from ConversionTools.WriteAuth Logout
Logout from ConversionTools. Clears stored credentials.
Inputs
This tool takes no inputs.
conversiontoolsmcp_auth_statusCheck authentication status and account info.WriteAuth Status
Check authentication status and account info.
Inputs
This tool takes no inputs.
conversiontoolsmcp_convert_fileConvert a file between 140+ supported formats including documents, images, audio, video, and data files.WriteConvert File
Convert a file between 140+ supported formats including documents, images, audio, video, and data files. Returns a download URL for the converted file.
Inputs
input_pathstringrequired- Local path to the input file, used for filename and format detection.
output_pathstringrequired- Local path where the converted file should be saved.
converterstring- Specific converter type to use (e.g., convert.pdf_to_excel). If omitted, the converter is auto-detected from file extensions.
file_contentstring- Base64-encoded file content for files 5 MB or smaller.
file_idstring- File ID returned by request_upload_url for files larger than 5 MB.
optionsobject- Converter-specific options as key-value pairs. Call get_converter_info to see which options a converter accepts.
conversiontoolsmcp_find_converterFind the best converter for converting between two specific formats.WriteFind Converter
Find the best converter for converting between two specific formats.
Inputs
input_formatstringrequired- Input file format extension (e.g., pdf, xlsx, png).
output_formatstringrequired- Desired output format extension (e.g., csv, json, jpg).
conversiontoolsmcp_get_converter_infoGet detailed information about a specific converter, including available options and their allowed values.WriteGet Converter Info
Get detailed information about a specific converter, including available options and their allowed values.
Inputs
converterstringrequired- Converter type identifier (e.g., convert.pdf_to_excel).
conversiontoolsmcp_get_download_urlRegenerate a fresh, short-lived download URL for a file already converted by convert_file, using its task_id.WriteGet Download URL
Regenerate a fresh, short-lived download URL for a file already converted by convert_file, using its task_id. Call this if the original download URL expired before you fetched it.
Inputs
task_idstringrequired- The task_id returned by convert_file.
conversiontoolsmcp_list_convertersList available file converters.WriteList Converters
List available file converters. Use this to discover what conversions are supported.
Inputs
categorystring- Filter converters by category.one of
aiaudiodatadocumentsebookimagesocrpdfsubtitlesvideoweb input_formatstring- Filter by input format extension (e.g., pdf, xlsx, png).
output_formatstring- Filter by output format extension (e.g., csv, json, jpg).
conversiontoolsmcp_parse_create_schemaCreate a saved, reusable Parse extraction schema with a named field definition, for extractions that will be run more than once.WriteParse Create Schema
Create a saved, reusable Parse extraction schema with a named field definition, for extractions that will be run more than once.
Inputs
fieldsarrayrequired- The field definitions. Each: {name (snake_case), type, description?, required?, examples?, aliases?, items?, fields?, validation?}.
namestringrequired- Human-readable schema name, e.g. "Supplier invoice".
descriptionstring- What this schema is for (optional).
conversiontoolsmcp_parse_exportTurn a completed Parse extraction into a CSV or XLSX spreadsheet, flattening nested lists into rows.WriteParse Export
Turn a completed Parse extraction into a CSV or XLSX spreadsheet, flattening nested lists into rows.
Inputs
extraction_idstringrequired- The completed extraction to export.
formatstringrequired- Spreadsheet format.one of
csvxlsx output_pathstring- Local path to save the file (stdio mode).
conversiontoolsmcp_parse_extractExtract structured data from a document (PDF, scan, photo, invoice, receipt, form, statement) using Parse, the AI extraction engine.WriteParse Extract
Extract structured data from a document (PDF, scan, photo, invoice, receipt, form, statement) using Parse, the AI extraction engine. Submits the document and returns an extraction id immediately; poll parse_extraction_status for the extracted data.
Inputs
fieldsarray- Inline field list for a one-off extraction (ignored when schema_id is set). Each field: {name (snake_case), type: string|number|date|boolean|array|object, description?, required?, examples?, aliases?, items? (for array), fields? (for object / array-of-object), validation?}.
file_contentstring- Base64-encoded document bytes (remote/http mode).
file_idstring- File id from a previous Parse upload. Note: wait does not apply to this path - submit, then poll.
file_pathstring- Path to the document (local/stdio mode), or a filename label in remote mode.
no_cacheboolean- Force a fresh extraction instead of reusing a stored result for an identical document + fields.
output_formatstring- Start a spreadsheet export automatically once the extraction completes. Collect it with parse_export.one of
csvxlsx schema_idstring- Id of a saved schema to extract with (from parse_list_schemas / parse_create_schema).
waitnumber- Seconds to hold the request open waiting for the result (max 120). Upload path only. Omit to get the id back immediately and poll.
webhook_urlstring- Public http(s) URL notified when the extraction reaches a terminal state. Carries the id and status only, never the extracted data.
conversiontoolsmcp_parse_extraction_statusPoll a document extraction submitted with parse_extract.WriteParse Extraction Status
Poll a document extraction submitted with parse_extract. Returns processing while the extraction runs, or completed/failed with the extracted data or error once finished.
Inputs
extraction_idstringrequired- The extraction id returned by parse_extract.
conversiontoolsmcp_parse_list_schemasList the saved Parse extraction schemas on this account, including each schema's fields and usage count.WriteParse List Schemas
List the saved Parse extraction schemas on this account, including each schema's fields and usage count.
Inputs
This tool takes no inputs.
conversiontoolsmcp_parse_usageShow this account's Parse usage for the current billing month: plan, pages used, page limit, pages remaining, and reset date.WriteParse Usage
Show this account's Parse usage for the current billing month: plan, pages used, page limit, pages remaining, and reset date.
Inputs
This tool takes no inputs.
conversiontoolsmcp_request_upload_urlGet a signed URL for uploading large files (over 5 MB).WriteRequest Upload URL
Get a signed URL for uploading large files (over 5 MB). After uploading to the URL, pass the returned file_id to convert_file.
Inputs
filenamestringrequired- Name of the file to upload, including its extension.
conversiontoolsmcp_studio_attach_fileAttach a new input file to an existing built AI Studio converter so it can be re-run on fresh data without rebuilding.WriteStudio Attach File
Attach a new input file to an existing built AI Studio converter so it can be re-run on fresh data without rebuilding.
Inputs
converter_idstringrequired- The existing converter to reuse.
file_contentstring- Base64-encoded file content (remote/http mode).
file_idstring- File ID from a previous upload (large files, via request_upload_url).
file_pathstring- Path to the new input file (local/stdio mode).
conversiontoolsmcp_studio_chatSend a plain-language build instruction to the AI Studio planner for a converter created with studio_create_converter.WriteStudio Chat
Send a plain-language build instruction to the AI Studio planner for a converter created with studio_create_converter. The planner may ask a clarifying question or propose a ready-to-run converter.
Inputs
converter_idstringrequired- The converter_id from studio_create_converter.
messagestringrequired- Plain-language build instruction or answer to the planner.
conversiontoolsmcp_studio_create_converterStart building a new custom converter with AI Studio, for conversions that need engines not available locally, large or sensitive files, multi-step transformations, or a durable reusable converter.WriteStudio Create Converter
Start building a new custom converter with AI Studio, for conversions that need engines not available locally, large or sensitive files, multi-step transformations, or a durable reusable converter. Optionally attaches the input file in the same call.
Inputs
file_contentstring- Base64-encoded file content (remote/http mode).
file_idstring- File ID from a previous upload (use request_upload_url for large files).
file_pathstring- Path to the input file (local/stdio mode), or a filename label in remote mode.
namestring- Optional name for the converter.
conversiontoolsmcp_studio_download_resultDownload the result of a successful AI Studio converter run, using the result_file_id from studio_run_status.WriteStudio Download Result
Download the result of a successful AI Studio converter run, using the result_file_id from studio_run_status.
Inputs
result_file_idstringrequired- The result_file_id from studio_run_status SUCCESS.
output_pathstring- Local path to save the file (stdio mode).
conversiontoolsmcp_studio_get_converterGet a custom AI Studio converter's details and current status, including its input/output shape and the file currently attached.WriteStudio Get Converter
Get a custom AI Studio converter's details and current status, including its input/output shape and the file currently attached.
Inputs
converter_idstringrequired- The converter_id (from studio_list_converters or studio_create_converter).
conversiontoolsmcp_studio_list_convertersList the custom converters previously built in AI Studio for the signed-in account, so an existing converter can be reused instead of rebuilding one.WriteStudio List Converters
List the custom converters previously built in AI Studio for the signed-in account, so an existing converter can be reused instead of rebuilding one. Returns up to 10 results, most recent first.
Inputs
searchstring- Optional filter by name/description.
conversiontoolsmcp_studio_runRun a built AI Studio converter on its attached file.WriteStudio Run
Run a built AI Studio converter on its attached file. Runs asynchronously; poll studio_run_status for the result.
Inputs
converter_idstringrequired- The converter_id to run.
data_sourcestring- "uploaded" (the user's file, default) or "sample".one of
uploadedsample
conversiontoolsmcp_studio_run_statusPoll the status of an AI Studio converter run started with studio_run.WriteStudio Run Status
Poll the status of an AI Studio converter run started with studio_run. Returns RUNNING, SUCCESS (with a result file), or ERROR.
Inputs
converter_idstringrequired- The converter_id whose run to poll.
No tools match.