@sassoftware/mcp-serverjs
Version:
Demo of mcp server written in nodejs
52 lines (47 loc) • 1.3 kB
JavaScript
/*
* Copyright © 2025, SAS Institute Inc., Cary, NC, USA. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0
*/
import getLogonPayload from './getLogonPayload.js';
import restafedit from '@sassoftware/restafedit';
import debug from 'debug';
const log = debug('listlibrary');
async function _listLibrary(params) {
let { source, library } = params;
let logonPayload = await getLogonPayload();
let config = {
source: source,
table: null
};
let appControl = {};
log(config);
try {
let appControl = await restafedit.setup(
logonPayload,
config,
null,/* create a sessiion */
{},
'user',
{}
);
let payload = {
qs: {
limit: 1000,
start: 0,
}
};
library = library.trim();
if (library !== '*') {
payload.qs.filter = `eq(name, '${library}')`;
}
log(payload);
let items = await restafedit.getLibraryList(appControl, payload);
log('items', items);
return { content: [{ type: 'text', text: JSON.stringify(items) }] };
} catch (err) {
log(JSON.stringify(err));
// await deleteSession(appControl);
return { content: [{ type: 'text', text: JSON.stringify(err) }] };
}
}
export default _listLibrary;