@mseep/rijksmuseum-mcp-oaipmh
Version:
MCP server for Rijksmuseum OAI-PMH API
56 lines • 1.89 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.listRecords = void 0;
const sdk_1 = require("@modelcontextprotocol/sdk");
const rijksmuseum_1 = __importDefault(require("../api/rijksmuseum"));
exports.listRecords = (0, sdk_1.createTool)({
name: 'rijksmuseum_list_records',
description: 'List records from the Rijksmuseum collection using OAI-PMH',
parameters: {
type: 'object',
properties: {
metadataPrefix: {
type: 'string',
description: 'The metadata format (e.g., "oai_dc")',
},
from: {
type: 'string',
description: 'Optional start date (YYYY-MM-DD)',
},
until: {
type: 'string',
description: 'Optional end date (YYYY-MM-DD)',
},
set: {
type: 'string',
description: 'Optional set for selective harvesting',
},
resumptionToken: {
type: 'string',
description: 'Optional token for resuming a previous list request',
},
},
required: ['metadataPrefix'],
},
handler: async ({ metadataPrefix, from, until, set, resumptionToken }) => {
try {
const result = await rijksmuseum_1.default.listRecords({
metadataPrefix,
from,
until,
set,
resumptionToken,
});
return result;
}
catch (error) {
return {
error: error.message || 'Failed to list records',
};
}
},
});
//# sourceMappingURL=listRecords.js.map