Skip to main content
Glama
bersimao

b1-mcp-server for SAP B1

execute_service_layer

Run read-only OData GET requests against a connected SAP Business One Service Layer to retrieve business data. It blocks writes, so use the write operation for PATCH, POST, or DELETE.

Instructions

Execute a read-only OData GET against the currently connected SAP Business One Service Layer. Writes go through execute_service_layer_write.

Denied when the connected profile's slAllowedMethods (printed by connect_database) omits GET. Query options are allowed; absolute URLs, Login/Logout and $batch are denied.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
urlYesRelative OData endpoint without the configured /b1s/v1/ or /b1s/v2/ root
methodNoAlways GET. PATCH, POST and DELETE go through execute_service_layer_writeGET

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.5.1

TDQS

A4.6/5.0
Behavior4/5

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

With no annotations, the description carries the full burden and does well: it discloses the read-only nature, the profile-driven authorization gate, and where to inspect that gate (connect_database prints slAllowedMethods). It stops short of describing error responses or pagination behavior, which for a remote HTTP-style call the agent may still need.

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 tight sentences with no filler; the core operation comes first, followed by the routing and denial rules. Every clause earns its place by adding a routing or constraint fact.

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?

For a permission-gated remote call with no output schema, the description supplies the operation, the alternative, the authorization precondition, and the blocked endpoints, which is nearly everything needed. It omits only what a successful/error response looks like, which an agent might want before composing follow-up calls.

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?

Schema coverage is 100%, so the baseline is 3, but the description adds genuine constraint information about the url parameter: query options are accepted while absolute URLs, Login/Logout, and $batch are rejected. That meaning is not derivable from the schema description alone, which only says the endpoint is relative.

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?

States a specific verb and resource ('Execute a read-only OData GET against ... SAP Business One Service Layer') and immediately names the sibling that handles the complementary operation, execute_service_layer_write. An agent can distinguish this from every sibling without opening a schema.

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

Usage Guidelines5/5

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

Explicitly routes writes elsewhere ('Writes go through execute_service_layer_write'), states the exact condition under which the call is denied (slAllowedMethods omitting GET), and enumerates what is permitted (query options) versus denied (absolute URLs, Login/Logout, $batch). Both when-to-use and when-not are covered.

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