🎯 Transform ServiceNow data access with natural language commands
Export ServiceNow table data effortlessly using voice commands and AI - no complex APIs needed!
🚀 Quick Start • 📖 Documentation • 💡 Examples • 🤝 Contributing
📋 Table of Contents
- 🌟 Overview
- ✨ Key Features
- 🏗️ Architecture
- ⚡ Quick Start
- 🔧 Installation
- ⚙️ Configuration
- 💡 Usage Examples
- 🎛️ Available Tools
- 📊 Supported Formats
- 🗺️ Table Mappings
- 🔒 Authentication
- 🐛 Troubleshooting
- 🤝 Contributing
- 📄 License
🌟 Overview
The ServiceNow MCP Server is a cutting-edge Model Context Protocol server that revolutionizes how you interact with ServiceNow data. By combining the power of AI with intuitive natural language processing, this tool transforms complex ServiceNow API operations into simple conversational commands.
graph TD
A[👤 User Voice Command] --> B[🤖 Claude AI]
B --> C[🔧 MCP Server]
C --> D[🌐 ServiceNow API]
D --> E[📊 Data Processing]
E --> F[📁 File Export]
F --> G[💾 Downloads Folder]
🎯 Why Choose ServiceNow MCP Server?
- 🗣️ Voice-Controlled: Use natural language commands instead of complex API calls
- 🧠 AI-Powered: Intelligent table name resolution from conversational descriptions
- ⚡ Lightning Fast: Optimized async operations for rapid data retrieval
- 🔒 Secure: Built-in authentication and error handling
- 📱 Cross-Platform: Works on Windows, macOS, and Linux
- 🎨 Multiple Formats: Export to CSV, XML, or both simultaneously
✨ Key Features
🏗️ Architecture
🔍 Click to expand architecture details
System Components
┌─────────────────┐ ┌──────────────────┐ ┌─────────────────┐
│ Claude AI │───▶│ MCP Server │───▶│ ServiceNow │
│ │ │ │ │ │
│ • NL Processing │ │ • Table Mapping │ │ • REST API │
│ • Tool Calling │ │ • Data Export │ │ • Authentication│
│ • User Interface│ │ • File Generation│ │ • Data Storage │
└─────────────────┘ └──────────────────┘ └─────────────────┘
│
▼
┌──────────────────┐
│ Local File System│
│ │
│ • Downloads Folder│
│ • CSV/XML Files │
│ • Auto Naming │
└──────────────────┘
Data Flow
- Input: User provides natural language command
- Processing: Claude AI interprets and calls appropriate MCP tool
- Resolution: MCP server resolves table names and builds queries
- Retrieval: Secure API calls to ServiceNow instance
- Transformation: Data converted to requested format(s)
- Output: Files saved to Downloads folder with confirmation
⚡ Quick Start
🚀 1-Minute Setup with Claude
# Clone the repository
git clone https://github.com/divyashah0510/mcp-servicenow-exporter.git
cd mcp-servicenow-exporter
# Install dependencies
pip install -r requirements.txt
# Configure Claude Desktop (see Configuration section)
# Add the servicenow-client configuration to your Claude config
# Restart Claude Desktop
# Start using natural language commands!
🎯 First Export with Claude
Once configured in Claude Desktop, try these natural language commands:
💬 "Export the server table from ServiceNow"
💬 "Get me incident data in XML format"
💬 "Show me all available ServiceNow tables"
💬 "Export users with both CSV and XML formats"
🔄 Workflow Integration
graph LR
A[👤 User in Claude] --> B[💬 Natural Language]
B --> C[🔧 MCP Server]
C --> D[🌐 ServiceNow API]
D --> E[📊 Data Export]
E --> F[📁 Claude Attachment]
🔧 Installation
Prerequisites
| Requirement | Version | Purpose |
|---|---|---|
| Python | 3.8+ | Runtime environment |
| ServiceNow Instance | Any | Data source |
| Claude AI Access | Latest | Natural language interface |
Step-by-Step Installation
📦 Detailed Installation Guide
-
Clone Repository
git clone https://github.com/divyashah0510/mcp-servicenow-exporter.git cd mcp-servicenow-exporter
-
Create Virtual Environment
python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate
-
Install Dependencies
pip install -r requirements.txt
-
Environment Setup
cp .env.example .env
Edit
.envfile:SERVICENOW_INSTANCE=https://your-instance.service-now.com SERVICENOW_USERNAME=your_username SERVICENOW_PASSWORD=your_password
-
Verify Installation
python -c "import main; print('✅ Installation successful!')"
Requirements
# Core dependencies
fastmcp>=0.1.0
httpx>=0.24.0
python-dotenv>=1.0.0
# Optional enhancements
rich>=13.0.0 # Better console output
typer>=0.9.0 # CLI interface
pytest>=7.0.0 # Testing framework
⚙️ Configuration
Claude Desktop Configuration
To use this MCP server with Claude Desktop, add the following configuration to your Claude config file:
Location:
- Windows:
%APPDATA%\Claude\claude_desktop_config.json - macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"servicenow-client": {
"command": "mcp-servicenow-exporter",
"args": [],
"env": {
"SERVICENOW_INSTANCE": "https://your_instance_id.service-now.com",
"SERVICENOW_USERNAME": "your_username",
"SERVICENOW_PASSWORD": "your_password"
}
}
}
}
⚠️ Security Note: Replace the example credentials with your actual ServiceNow instance details. For production use, consider using environment variables or secure credential management.
Environment Variables
| Variable | Description | Example | Required |
|---|---|---|---|
SERVICENOW_INSTANCE |
Your ServiceNow instance URL | https://your_instance_id.service-now.com |
✅ |
SERVICENOW_USERNAME |
ServiceNow username | your_username |
✅ |
SERVICENOW_PASSWORD |
ServiceNow password | your_password |
✅ |
Alternative: Environment File Setup
Create a .env file in the project root:
SERVICENOW_INSTANCE=https://your_instance_id.service-now.com
SERVICENOW_USERNAME=your_username
SERVICENOW_PASSWORD=your_password
### 🚀 Claude Integration Quick Start
1. **Install the MCP server** following the installation steps above
2. **Update Claude config** with the servicenow-client configuration
3. **Restart Claude Desktop** to load the new MCP server
4. **Start chatting** with natural language commands like:
- *"Export the server table from ServiceNow"*
- *"Get me all incidents in XML format"*
- *"Show me the available ServiceNow tables"*
### 🔧 Advanced Configuration Options
<details>
<summary><strong>🔍 Click to see advanced settings</strong></summary>
You can customize the MCP server behavior by adding additional environment variables:
```json
{
"mcpServers": {
"servicenow-client": {
"command": "mcp-servicenow-exporter",
"args": ["--verbose", "--max-records=1000"],
"env": {
"SERVICENOW_INSTANCE": "https://your-instance.service-now.com",
"SERVICENOW_USERNAME": "your_username",
"SERVICENOW_PASSWORD": "your_password",
"DEBUG": "1",
"DEFAULT_FORMAT": "xml",
"DOWNLOAD_PATH": "C:\\Custom\\Downloads"
}
}
}
}
Additional Environment Variables:
DEBUG: Enable debug logging (set to "1")DEFAULT_FORMAT: Set default export format ("csv", "xml", "both")DOWNLOAD_PATH: Custom download directory pathMAX_RECORDS: Default maximum records to export
💡 Usage Examples
Natural Language Commands
Try these conversational commands with Claude:
"Export all incidents from ServiceNow"
"Get me user data in XML format"
"Show available tables in ServiceNow"
"Export server information with both CSV and XML"
"Get cmdb_ci_server table data"
Advanced Queries
"Export incidents where state is active"
"Get all users created this month"
"Export server data with specific fields only"
🎛️ Available Tools
The MCP server provides these tools for Claude AI:
export_servicenow_table: Main export functionalitylist_available_tables: Browse ServiceNow tablesget_table_schema: View table structuretest_connection: Verify ServiceNow connectivity
📊 Supported Formats
- CSV: Comma-separated values (Excel compatible)
- XML: Structured XML format (ServiceNow native)
- Both: Generate both formats simultaneously
🗺️ Table Mappings
Common table aliases supported:
| Alias | Actual Table | Description |
|---|---|---|
| incidents | incident | Service incidents |
| users | sys_user | System users |
| servers | cmdb_ci_server | Server CIs |
| changes | change_request | Change requests |
🔒 Authentication
The server supports ServiceNow basic authentication. Ensure your ServiceNow user has appropriate read permissions for the tables you want to export.
🐛 Troubleshooting
Common Issues:
- Connection failed: Check ServiceNow instance URL and credentials
- Permission denied: Verify user has table read access
- Large exports: Use pagination for tables with millions of records
🤝 Contributing
- Fork the repository
- Create a feature branch
- Make your changes
- Submit a pull request
📄 License
This project is licensed under the MIT License. See the LICENSE file for details.
Made with ❤️ for the ServiceNow community
Metadata
Release files for mcp-server-table 0.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| mcp_server_table-0.2.0.tar.gz | 25.8 kB | With provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| mcp_server_table-0.2.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 48.2 kB
Release files / mcp_server_table-0.2.0.tar.gz
| Download URL | mcp_server_table-0.2.0.tar.gz |
|---|---|
| Size | 25.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
31c19c307f2b6f0f1f0f49a65ac2d147ea567719edf4d6173d702609a8db6085
|
|
BLAKE2b-256 checksum How to use checksums |
667b8fc300e475dcf196d0fadb7a89447a6c7a6cc348f534b3d9a0fba2b091ac
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 20, 2025.
Transparency logRelease files / mcp_server_table-0.2.0-py3-none-any.whl
| Download URL | mcp_server_table-0.2.0-py3-none-any.whl |
|---|---|
| Size | 22.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
92b16d396d98650f62bb1765beff02fa17f65e66b55a9650b6f7d6c238a50f30
|
|
BLAKE2b-256 checksum How to use checksums |
f2aaf156b64ad86bbef4664edde96de6c1645f70bc4b1cc228d553c80eb244e6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 20, 2025.
Transparency logSecurity for mcp-server-table 0.2.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for mcp_server_table-0.2.0.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 20, 2025.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.