Skip to main content
Glama
beel-es

BeeL MCP server

Official
by beel-es

beel_deactivate_by_id

DestructiveIdempotent

Deactivate a company's NIF in a chosen environment, stopping invoice issuance and corrections. For Live, it schedules the switch-off at the end of the billing cycle.

Instructions

Switches the company (NIF) off in the mode given by environment; the other mode is untouched. The activation is sealed rather than deleted, so its history survives; after the switch-off takes effect the NIF can neither issue nor correct invoices in that mode until it is switched on again, and in Live that sealing is what releases the NIF for another account. In Live the switch-off is scheduled, not immediate: the cycle is paid up front, so the response carries an effective_at and the NIF keeps invoicing until then. Nothing is refunded. effective_at is the end of the current billing cycle, unless the NIF was switched on within that same cycle, in which case it is the end of the next one. TEST, and PROD under an enterprise contract, are immediate and answer with no effective_at. Repeating the call on a mode whose switch-off is already pending returns the same date with already_scheduled: true, and switching off a mode that was never on is a silent no-op. Switching off in Live requires being the billing subject of the account.

Endpoint: DELETE /v1/companies/{company_id}/activations

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
company_idYesNIF (company) being switched on. It is the only source of context: the account that owns it is derived from it, and the `BeeL-Active-Company` header plays no part. A NIF you do not reach answers `403`, and so does a NIF that does not exist, so the existence of a NIF in another account is never disclosed.
environmentYesMode to switch the NIF off in.
Behavior5/5

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

The description fully discloses the tool's behavioral traits beyond annotations. It explains the destructive nature (NIF can't issue/correct invoices after switch-off), the scheduling mechanism with `effective_at`, the refund policy ('Nothing is refunded'), and idempotency (`already_scheduled: true`). It also clarifies that sealing releases the NIF for another account in Live. This thoroughly supplements the annotations (destructiveHint: true, idempotentHint: true) and provides no contradictions.

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 detailed but well-organized, front-loading the core action in the first sentence. It then logically explains the scheduling nuances, edge cases, and authorization requirement. Each sentence adds essential information, with no fluff or redundancy. Despite its length, it is appropriately scoped for a complex operation with varied modes and timing behaviors.

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

Completeness5/5

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

The description is complete for the tool's complexity without an output schema. It covers the operation, mode-specific behavior, scheduling details, `effective_at` semantics, no-op and idempotency cases, authorization requirements, and the endpoint. It does not explicitly list error codes, but the schema mentions 403 for unauthorized/existence, and the description's auth requirement covers that. An agent has all necessary information to correctly invoke and interpret the response.

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 description adds significant meaning for the `environment` parameter by explaining how Live vs. TEST/PROD affects scheduling and the presence of `effective_at`. This goes beyond the enum description in the schema. For `company_id`, the description does not add much beyond the schema, but the overall operation is clear. The schema description for `company_id` incorrectly says 'being switched on' instead of 'off', and the description does not correct this, but it's a minor issue since the tool description consistently says 'switch off'. The added environment semantics justify a 4, above the baseline 3.

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 clearly states the tool's purpose: 'Switches the company (NIF) off in the mode given by `environment`'. It specifies the verb (switch off), the resource (company/NIF), and the scope (the given mode). It also clarifies that the other mode is untouched, distinguishing it from activation tools like beel_activate_by_id. No ambiguity.

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?

The description provides explicit guidance on when and how to use the tool. It explains the difference between Live (scheduled) and TEST/PROD under enterprise (immediate), states the requirement that 'Switching off in Live requires being the billing subject of the account', and describes edge cases like already-scheduled and no-op. It also implicitly contrasts with deletion ('sealed rather than deleted'), helping agents choose this over a destructive delete. The instructions are concrete and actionable.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/beel-es/beel-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server