RS.ge Waybill MCP Server
MCP (Model Context Protocol) server that integrates the RS.ge Waybill SOAP API with Claude Desktop, enabling natural language queries for Georgian tax system waybills.
๐ Table of Contents
๐ Quick Start
โจ Features
โ Natural Language Interface - Query waybills through Claude chat
โ Date Range Queries - Get waybills for specific periods
โ TIN Lookup - Get company names from Tax IDs
โ Dictionaries - Access error codes, akciz codes, waybill types
โ Type-Safe - Full TypeScript with strict typing
โ Error Handling - Automatic retries and detailed logging
โ Production Ready - Tested with real RS.ge API
๐ Documentation
Comprehensive guides in the docs/
folder:
For Users
Setup & Deployment Guide - Installation, configuration, troubleshooting
For Developers
Project Documentation - Architecture, components, data flow
RS.ge API Best Practices - Critical lessons learned and correct API patterns
MCP Development Guide - How to build MCP servers
๐ฆ Installation
Prerequisites
Setup Steps
Get the Code
git clone <repository-url> MCPWaybill cd MCPWaybillInstall Dependencies
npm installConfigure Environment
cp .env.example .envEdit
.env
:RS_SERVICE_USER=4053098841:405309884 RS_SERVICE_PASSWORD=YourPasswordHereBuild
npm run buildConfigure Claude Desktop
Edit
claude_desktop_config.json
:{ "mcpServers": { "rs-waybill": { "command": "node", "args": [ "C:\absolute\path\to\MCPWaybill\dist\index.js" ] } } }โ ๏ธ Important: Use absolute paths!
Restart Claude Desktop (quit completely, then restart)
โ๏ธ Configuration
Environment Variables
Create .env
file:
Config File
Edit config/config.json
for advanced settings:
๐ฌ Usage Examples
Get Waybills
Lookup Company
Get Error Codes
๐ ๏ธ Troubleshooting
Server Not Showing in Claude
Check absolute path in
claude_desktop_config.json
Verify
dist/index.js
existsRestart Claude Desktop completely
Check Developer Tools (View โ Toggle Developer Tools)
Authentication Errors
Verify credentials in
.env
Check format:
username:company_id
Ensure no spaces:
RS_SERVICE_USER=value
(notRS_SERVICE_USER = value
)
Tools Not Working
Check logs:
tail -f logs/mcp-server.log
Test with: "Show waybills from yesterday"
Verify date format: YYYY-MM-DD
See Troubleshooting Guide for detailed help.
๐จโ๐ป Development
Scripts
Project Structure
Key Technologies
@modelcontextprotocol/sdk - MCP framework
Axios - HTTP client
fast-xml-parser - XML parsing
Winston - Logging
Zod - Validation
๐ฏ Critical Lessons Learned
This project solved complex RS.ge API integration challenges:
Correct API Usage
Aspect | โ Wrong | โ Correct |
Operation |
|
|
Date Param |
|
|
Date Format |
|
|
End Date | As-is | Add +1 day |
Seller ID | Not included | Extract from credentials |
ID Field |
|
|
XML Parsing
Filter out
@_
attributes before extracting dataHandle both single and array responses
See RS_GE_API_BEST_PRACTICES.md for complete details.
๐ License
MIT License - See LICENSE file for details
๐ค Contributing
Fork the repository
Create feature branch
Make changes
Test thoroughly
Submit pull request
๐ Support
Documentation: docs/
Issues: GitHub Issues
Questions: Check docs first
๐ Acknowledgments
Anthropic - Claude Desktop and MCP SDK
RS.ge - Waybill SOAP API
Community - Testing and feedback
Version: 1.0.0
Status: Production Ready โ
Last Updated: January 2025
Built with โค๏ธ using TypeScript and MCP SDK
local-only server
The server can only run on the client's local machine because it depends on local resources.
Enables natural language queries for Georgian tax system waybills through the RS.ge SOAP API. Supports waybill retrieval by date range, company TIN lookups, and access to tax system dictionaries.