Skip to main content
Glama

sap-help-mcp

An MCP (Model Context Protocol) server for searching SAP Help Portal documentation. Enables AI assistants to search, browse, and retrieve SAP documentation programmatically.

Tools

Tool

Description

sap_help_search

Keyword search across all SAP Help Portal documentation

sap_help_semantic_search

AI-powered semantic search for natural language questions

sap_help_list_products

List all available SAP products with IDs for filtering

sap_help_get_page

Fetch and extract clean text content from a specific help page

Related MCP server: Dedalus MCP Documentation Server

Setup

npm install
npm run build

Usage with Claude Code

Add to your Claude Code MCP config (.claude.json):

{
  "mcpServers": {
    "sap-help": {
      "command": "node",
      "args": ["/path/to/sap-help-mcp/dist/index.js"]
    }
  }
}

Deploy to SAP BTP Cloud Foundry

npm run build
cf push

The app deploys using manifest.yml and starts the HTTP transport on the CF-assigned port.

Connect to deployed server

{
  "mcpServers": {
    "sap-help": {
      "type": "url",
      "url": "https://<your-cf-app-url>/mcp"
    }
  }
}

Run HTTP server locally

npm run build
npm run start:http    # starts on port 8080

Examples

Keyword search:

Search for "SD pricing configuration" filtered by S/4HANA

Semantic search:

"How do I configure batch jobs in SAP AI Core?"

Browse products:

List all SAP products to find the right product ID filter

Fetch a page:

Get the full content of a specific help page URL from search results

Tech Stack

  • TypeScript

  • MCP SDK

  • Axios for HTTP

  • Zod for input validation

License

MIT

Available Tools

4 tools
sap_help_get_pageA

Fetch the full content of a specific SAP Help page. Use URLs from search results. Returns cleaned text content.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesURL or path of the SAP Help page (e.g. /docs/sap-ai-core/...)

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden for behavioral disclosure. It mentions 'cleaned text content,' which indicates the output is processed rather than raw HTML, but it does not disclose potential limitations such as authentication requirements, error handling, or rate limits. This is a moderate level of transparency, neither minimal nor comprehensive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, each earning its place: the first states the core function, and the second gives a usage hint and output type. No unnecessary words, making it highly concise and well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite the lack of an output schema and annotations, the description is sufficient for a simple tool with one parameter. It clearly states the input type and the cleaned-text output, and the context signals show there are no nested objects or enums. It lacks examples or error scenarios, but for this complexity, the description is nearly complete, earning a 4 rather than a 3.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema description for the 'url' parameter covers its meaning and format ('URL or path of the SAP Help page'), so schema coverage is 100%. The tool description does not add additional parameter details beyond saying to use URLs from search results, which is a minor contextual hint. Thus, the baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb 'Fetch' and identifies the resource 'full content of a specific SAP Help page,' which clearly distinguishes it from sibling tools that search or list products. It also notes that it returns 'cleaned text content,' adding clarity about the output.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The instruction 'Use URLs from search results' provides a clear context for when to invoke this tool, implying it is complementary to search tools. It does not explicitly name alternative tools, but the sibling names make this differentiation obvious, and the guidance is sufficient for selecting this tool after a search.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

sap_help_list_productsA

List all available SAP products on the Help Portal. Returns product names and IDs that can be used to filter searches.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the burden. It states the scope ('all available') and that it returns names and IDs, but it does not mention pagination, rate limits, authentication, or other behavioral details. For a simple list read operation, this is adequate but not rich.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two clear, front-loaded sentences with no fluff. Every word adds value: the action, the resource, the return content, and the use case.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers the core purpose and return information. Given the tool's simplicity (no params, no output schema), it is reasonably complete, though it could mention output format or any list limits.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the schema is trivially complete. The description does not add parameter info, but none is needed. Baseline for 0 params is 4, and no contrast exists.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('List') and a clear resource ('available SAP products on the Help Portal'). It also explicitly states the return value (product names and IDs) and their purpose (filter searches), which distinguishes this tool from the sibling search tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives a clear use case: 'can be used to filter searches.' This implies when an agent needs product identifiers to constrain search results, but it does not explicitly mention alternatives or when not to use this tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 4 tool updatesv1.0.0
    • First observedsap_help_get_page
    • First observedsap_help_list_products
    • First observedsap_help_search
    • First observedsap_help_semantic_search

TDQS

A4.4/5.0

Scored across 4 tools

Disambiguation5/5

Each tool has a distinct purpose: keyword search, semantic search, product listing, and page retrieval. The two search tools are clearly differentiated by their approach (keyword vs. natural language).

Naming Consistency5/5

All tool names follow the consistent pattern 'sap_help_<action>', e.g., sap_help_search, sap_help_list_products. This makes the tool set predictable and easy to navigate.

Tool Count5/5

With only 4 tools, the server is well-scoped and avoids unnecessary complexity. Each tool covers a core function of the SAP Help Portal without redundancy.

Completeness5/5

The tool set covers the essential workflow: searching for documentation (both keyword and semantic), listing products for context, and fetching full page content. No obvious missing capabilities for the stated purpose.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers