UNPKG

@economic-mcp/server-economic

Version:

Model Context Protocol server for e-conomic API

83 lines (76 loc) 2.43 kB
const express = require('express'); const axios = require('axios'); const { economicConfig } = require('../config'); const router = express.Router(); // GET /journals router.get('/', async (req, res) => { try { const response = await axios({ method: 'GET', url: `${economicConfig.baseUrl}/journals`, headers: economicConfig.headers }); res.json(response.data); } catch (error) { console.error('Error fetching journals:', error.message); res.status(error.response?.status || 500).json({ error: error.message, details: error.response?.data }); } }); // GET /journals/:journalNumber router.get('/:journalNumber', async (req, res) => { try { const { journalNumber } = req.params; const response = await axios({ method: 'GET', url: `${economicConfig.baseUrl}/journals/${journalNumber}`, headers: economicConfig.headers }); res.json(response.data); } catch (error) { console.error(`Error fetching journal ${req.params.journalNumber}:`, error.message); res.status(error.response?.status || 500).json({ error: error.message, details: error.response?.data }); } }); // GET /journals/:journalNumber/entries router.get('/:journalNumber/entries', async (req, res) => { try { const { journalNumber } = req.params; const response = await axios({ method: 'GET', url: `${economicConfig.baseUrl}/journals/${journalNumber}/entries`, headers: economicConfig.headers }); res.json(response.data); } catch (error) { console.error(`Error fetching entries for journal ${req.params.journalNumber}:`, error.message); res.status(error.response?.status || 500).json({ error: error.message, details: error.response?.data }); } }); // GET /journals/:journalNumber/vouchers router.get('/:journalNumber/vouchers', async (req, res) => { try { const { journalNumber } = req.params; const response = await axios({ method: 'GET', url: `${economicConfig.baseUrl}/journals/${journalNumber}/vouchers`, headers: economicConfig.headers }); res.json(response.data); } catch (error) { console.error(`Error fetching vouchers for journal ${req.params.journalNumber}:`, error.message); res.status(error.response?.status || 500).json({ error: error.message, details: error.response?.data }); } }); module.exports = router;