define-xml-mcp-server
TypeScript MCP server for CDISC Define-XML.
Features
- Supports Define-XML 2.0 and 2.1
- Detects Define version and ARM presence from ODM attributes
- Supports both MCP transports:
stdio(default)- Streamable HTTP (
/mcpendpoint)
- Local file-path input only
- Multi-document in-memory cache using
document_id - Response formats:
jsonmarkdown
Install
npm install
Build
npm run build
Run
stdio (default)
npm run dev
or
node dist/index.js --transport=stdio
Streamable HTTP
node dist/index.js --transport=http --port=3000
Server endpoint:
POST /mcp
Tool Catalog
Document Tools
define_load_document- Input:
file_path,response_format - Loads/parses XML and returns
document_id
- Input:
define_close_document- Input:
document_id,response_format - Removes document from cache
- Input:
define_get_metadata_summary- Input:
document_id,response_format - Returns metadata and entity counts
- Input:
Required List/Get Tools
- Datasets
define_list_datasetsdefine_get_dataset
- Variables
define_list_variablesdefine_get_variable
- Codelists
define_list_codelistsdefine_get_codelist
- ARM
define_list_arm_resultsdefine_get_arm_result
Search Tool
define_search
Notes
- ARM is optional. ARM tools return empty results when ARM data is not present.
- All list tools support pagination via
offsetandlimit.