icon for mcp server

Fluent ServiceNow

STDIO

ServiceNow Fluent SDK集成管理MCP服务器

Fluent MCP Server

An MCP server that brings ServiceNow Fluent SDK capabilities to AI-assisted development environments. Enables natural language interaction with ServiceNow SDK commands, API specifications, code snippets, and development resources.

Key Features

  • 🤖 AI-Powered Error Analysis - Intelligent diagnosis with root cause, solutions, and prevention tips (MCP Sampling)
  • Complete SDK Coverage - All ServiceNow SDK commands: auth, init, build, install, dependencies, transform, download, clean, pack
  • Rich Resources - API specifications, code snippets, instructions for 35+ metadata types
  • Multi-Environment Auth - Supports basic and oauth authentication with profile management
  • Session-Aware - Maintains working directory context across commands

This MCP server implements the complete Model Context Protocol specification with the following capabilities:

Core

  • Resources - Provides 100+ resources across 35+ ServiceNow metadata types (API specs, instructions, snippets, prompts)
  • Tools - Exposes 10 ServiceNow SDK commands as MCP tools with full parameter validation
  • Prompts - Offers development workflow templates for common ServiceNow tasks
  • Roots - Supports MCP roots protocol for workspace-aware operations

Extended Capabilities

  • Sampling (MCP 2024-11-05) - Leverages client LLM for intelligent error analysis when SDK commands fail

    • Automatically analyzes command errors >50 characters
    • Provides structured diagnostics: root cause, solutions, prevention tips
    • Configurable via FLUENT_MCP_ENABLE_ERROR_ANALYSIS environment variable
  • Elicitation (MCP 2024-11-05) - Interactive parameter collection for complex workflows

    • init_fluent_app - Prompts for missing project parameters (workingDirectory, template, appName, etc.)
    • Supports both creation and conversion workflows with smart validation
    • Handles user acceptance/rejection of elicited data
  • Session Management - Tracks working directory per session for multi-project workflows

  • Root Fallback - Automatically falls back to MCP root context when no session directory is set

  • Error Handling - Comprehensive error messages with actionable guidance

  • Type Safety - Full TypeScript implementation with strict typing

Quick Start

# Test with MCP Inspector npx @modelcontextprotocol/inspector npx @modesty/fluent-mcp # Or use in your MCP client (see Configuration below)

Example prompt:

Create a new Fluent app in ~/projects/time-off-tracker to manage employee PTO requests

Available Tools

SDK Commands

ToolDescriptionKey Parameters
sdk_infoGet SDK version, help, or debug infoflag (-v/-h/-d), command (optional)
manage_fluent_authManage instance authentication profilesadd, list, delete, use, type (basic/oauth)
init_fluent_appInitialize or convert ServiceNow appworkingDirectory (required), template, from (optional)
build_fluent_appBuild the applicationdebug (optional)
deploy_fluent_appDeploy to ServiceNow instanceauth (optional), debug (optional)
fluent_transformConvert XML to Fluent TypeScriptfrom, auth (optional)
download_fluent_dependenciesDownload dependencies and type definitionsauth (optional)
download_fluent_appDownload metadata from instancedirectory, incremental (optional)
clean_fluent_appClean output directorysource (optional)
pack_fluent_appCreate installable artifactsource (optional)

Note: manage_fluent_auth, init_fluent_app, and download_fluent_dependencies are interactive commands. Use init_fluent_app to establish working directory context for subsequent commands.

Resources

Standardized URI patterns following MCP specification:

Resource TypeURI PatternExamplePurpose
API Specssn-spec://{type}sn-spec://business-ruleAPI documentation and parameters
Instructionssn-instruct://{type}sn-instruct://script-includeBest practices and guidance
Code Snippetssn-snippet://{type}/{id}sn-snippet://acl/0001Practical code examples
Promptssn-prompt://{id}sn-prompt://coding_in_fluentDevelopment guides

Supported Metadata Types

Core Types: acl, application-menu, business-rule, client-script, cross-scope-privilege, form, list, property, role, scheduled-script, script-action, script-include, scripted-rest, service-portal, table, ui-action, ui-page, user-preference

Table Types: column, column-generic

ATF (Automated Test Framework): atf-appnav, atf-catalog-action, atf-catalog-validation, atf-catalog-variable, atf-email, atf-form, atf-form-action, atf-form-declarative-action, atf-form-field, atf-reporting, atf-rest-api, atf-rest-assert-payload, atf-server, atf-server-catalog-item, atf-server-record

Configuration

Requirements: Node.js 22.15.1+, npm 11.4.1+

MCP Client Setup

Add to your MCP client configuration file:

{ "mcpServers": { "fluent-mcp": { "command": "npx", "args": ["-y", "@modesty/fluent-mcp"], "env": { "SN_INSTANCE_URL": "https://your-instance.service-now.com", "SN_AUTH_TYPE": "oauth" } } } }

Client-Specific Locations:

  • Claude Desktop / macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • VSCode Copilot: .vscode/mcp.json (use Command Palette: MCP: Add Server...)
  • Cursor: Settings → Features → MCP Settings
  • Windsurf: Settings → Cascade → MCP Servers → View raw config
  • Gemini CLI: ~/.gemini/settings.json

VSCode note: For VSCode, the JSON structure uses "mcp": { "servers": { ... } } instead of "mcpServers".

Environment Variables:

  • SN_INSTANCE_URL - ServiceNow instance URL (optional, can use auth profiles instead)
  • SN_AUTH_TYPE - Authentication method: basic or oauth (optional)
  • FLUENT_MCP_ENABLE_ERROR_ANALYSIS - Enable AI error analysis (default: true)
  • FLUENT_MCP_MIN_ERROR_LENGTH - Minimum error length for analysis (default: 50)

Usage Examples

Typical Workflow

  1. Setup Authentication

    Create a new auth profile for https://dev12345.service-now.com with alias dev-instance
  2. Initialize Project

    Create a new Fluent app in ~/projects/asset-tracker for IT asset management
  3. Develop with Resources

    Show me the business-rule API specification and provide an example snippet
  4. Build and Deploy

    Build the app with debug output, then deploy to dev-instance

Testing with MCP Inspector

The MCP Inspector provides a web interface for testing MCP servers.

Launch Inspector

# Test published package npx @modelcontextprotocol/inspector npx @modesty/fluent-mcp # Or for local development npm run build && npm run inspect

Test Scenarios

Scenario 1: Explore Business Rule Resources

Objective: Access API specs and code snippets for business rules

Steps:

  1. Launch Inspector and wait for server connection
  2. Navigate to Resources tab
  3. Find and click sn-spec://business-rule in the resource list
  4. Review the API specification showing all available methods and parameters
  5. Go back and search for sn-snippet://business-rule/0001
  6. Click the snippet to view a complete TypeScript example
  7. Verify content includes proper imports and follows Fluent patterns

Expected Results:

  • API spec displays structured documentation with method signatures
  • Snippet shows runnable TypeScript code with ServiceNow metadata patterns
  • Content is properly formatted and readable

Scenario 2: Test SDK Info Command

Objective: Verify SDK version and help information retrieval

Steps:

  1. Navigate to Tools tab
  2. Select sdk_info from the tool list
  3. Test Version:
    • Set flag parameter to -v
    • Click Execute
    • Verify response shows version number (e.g., "4.0.1")
  4. Test Help:
    • Set flag parameter to -h
    • Set command parameter to build
    • Click Execute
    • Verify response shows build command documentation with options
  5. Monitor Notifications pane for command execution logs

Expected Results:

  • Version command returns SDK version string
  • Help command returns detailed command documentation
  • No errors in notifications pane
  • Commands execute within 2-3 seconds

License

MIT

MCP Now 重磅来袭,抢先一步体验