ServiceNow MCP Server
Um servidor MCP para interface com ServiceNow, permitindo que agentes de IA acessem e manipulem dados por meio de uma API segura.
Documentação
ServiceNow MCP Server
Um servidor Model Context Protocol (MCP) que faz interface com o ServiceNow, permitindo que agentes de IA acessem e manipulem dados do ServiceNow por meio de uma API segura. Este servidor possibilita interações em linguagem natural com o ServiceNow, facilitando a busca de registros, atualização dos mesmos e gerenciamento de scripts.
Funcionalidades
Recursos
servicenow://incidents: Listar incidentes recentesservicenow://incidents/{number}: Obter um incidente específico pelo númeroservicenow://users: Listar usuáriosservicenow://knowledge: Listar artigos de conhecimentoservicenow://tables: Listar tabelas disponíveisservicenow://tables/{table}: Obter registros de uma tabela específicaservicenow://schema/{table}: Obter o esquema de uma tabela
Ferramentas
Ferramentas Básicas
create_incident: Criar um novo incidenteupdate_incident: Atualizar um incidente existentesearch_records: Buscar registros usando consulta de textoget_record: Obter um registro específico pelo sys_idperform_query: Executar uma consulta no ServiceNowadd_comment: Adicionar um comentário a um incidente (visível ao cliente)add_work_notes: Adicionar notas de trabalho a um incidente (interno)
Ferramentas de Linguagem Natural
natural_language_search: Buscar registros usando linguagem natural (ex.: "encontre todos os incidentes sobre SAP")natural_language_update: Atualizar registros usando linguagem natural (ex.: "Atualize o incidente INC0010001 dizendo que estou trabalhando nele")update_script: Atualizar arquivos de script do ServiceNow (script includes, business rules, etc.)
Instalação
A partir do PyPI
pip install mcp-server-servicenow
A partir do código-fonte
git clone https://github.com/michaelbuckner/servicenow-mcp.git
cd servicenow-mcp
pip install -e .
Uso
Linha de Comando
Execute o servidor usando o módulo Python:
python -m mcp_server_servicenow.cli --url "https://your-instance.service-now.com/" --username "your-username" --password "your-password"
Ou use variáveis de ambiente:
export SERVICENOW_INSTANCE_URL="https://your-instance.service-now.com/"
export SERVICENOW_USERNAME="your-username"
export SERVICENOW_PASSWORD="your-password"
python -m mcp_server_servicenow.cli
Configuração no Cline
Para usar este servidor MCP com o Cline, adicione o seguinte ao seu arquivo de configurações MCP:
{
"mcpServers": {
"servicenow": {
"command": "/path/to/your/python/executable",
"args": [
"-m",
"mcp_server_servicenow.cli",
"--url", "https://your-instance.service-now.com/",
"--username", "your-username",
"--password", "your-password"
],
"disabled": false,
"autoApprove": []
}
}
}
Nota: Certifique-se de usar o caminho completo para o executável Python que possui o pacote mcp-server-servicenow instalado.
Exemplos de Linguagem Natural
Buscando Registros
Você pode buscar registros usando consultas em linguagem natural:
find all incidents about email
search for incidents related to network issues
show me all incidents with high priority
Atualizando Registros
Você pode atualizar registros usando comandos em linguagem natural:
Update incident INC0010001 saying I'm working on it
Set incident INC0010002 to in progress
Close incident INC0010003 with resolution: fixed the issue
Gerenciando Scripts
Você pode atualizar scripts do ServiceNow a partir de arquivos locais:
Update the ServiceNow script include "HelloWorld" with the contents of hello_world.js
Upload utils.js to ServiceNow as a script include named "UtilityFunctions"
Update @form_validation.js, it's a client script called "FormValidation"
Métodos de Autenticação
O servidor suporta múltiplos métodos de autenticação:
- Autenticação Básica: Nome de usuário e senha
- Autenticação por Token: Token OAuth
- Autenticação OAuth: Client ID, Client Secret, Nome de usuário e Senha
Desenvolvimento
Pré-requisitos
- Python 3.8+
- Instância do ServiceNow com acesso à API
Configurando o Ambiente de Desenvolvimento
# Clone the repository
git clone https://github.com/michaelbuckner/servicenow-mcp.git
cd servicenow-mcp
# Create a virtual environment
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install development dependencies
pip install -e ".[dev]"
Executando Testes
pytest
Contribuindo
Contribuições são bem-vindas! Sinta-se à vontade para enviar um Pull Request.
- Faça um fork do repositório
- Crie sua branch de funcionalidade (
git checkout -b feature/amazing-feature) - Faça commit das suas alterações (
git commit -m 'Add some amazing feature') - Envie para a branch (
git push origin feature/amazing-feature) - Abra um Pull Request
Licença
Este projeto é licenciado sob a Licença MIT - consulte o arquivo LICENSE para obter detalhes.