gvrn-incorporation
Server Details
The GVRN Incorporation MCP is a public Model Context Protocol (MCP) server that lets AI agents — on any LLM provider — collect and submit company incorporation requests to GVRN on a user's behalf.
Every submission is reviewed by GVRN's corporate secretarial team, who follow up with the user by email. All fields are optional, so an agent can submit early with whatever the user has provided and let a specialist fill in the gaps.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Average 4.3/5 across 7 of 7 tools scored.
Each tool targets a distinct step in the incorporation workflow: email OTP request/verify, draft create/update/submit, status check, and guide retrieval. No two tools have overlapping purposes.
All tool names follow a consistent verb_noun pattern using snake_case (e.g., create_incorporation_draft, verify_email_otp). The naming is uniform and predictable.
With 7 tools covering email verification, draft management, submission, and status checking, the count is well-scoped for the incorporation domain. Each tool serves a necessary function without bloat.
The tool set covers the core lifecycle: OTP, draft CRUD (except delete), submission, and status. Minor gaps like retrieving full draft details or canceling a request may require workarounds, but the essential workflow is complete.
Available Tools
7 toolscreate_incorporation_draftCreate incorporation draftAInspect
Creates a new incorporation request draft bound to the verified email, using any fields provided. Requires a verificationToken from verify_email_otp; every other field is optional. Returns a draftId that identifies the draft for later updates, submission, and status checks.
| Name | Required | Description | Default |
|---|---|---|---|
| notes | No | Anything else relevant: existing structures, PEP status, special requests | |
| urgency | No | Timeline constraints, e.g. "needed before token launch July 1" | |
| currency | No | Share capital currency, e.g. "USD" | |
| founders | No | Founders / shareholders / directors | |
| parValue | No | Par value per share | |
| entityType | No | e.g. "LTD", "FOUNDATION", "LLC" — free text is accepted | |
| companyName | No | Preferred company name | |
| totalShares | No | Total shares to be issued | |
| jurisdiction | No | Target jurisdiction, e.g. "BVI", "CAYMAN", "PANAMA" — free text is accepted | |
| verificationToken | Yes | Token from verify_email_otp — the draft is bound to this email | |
| businessDescription | No | What the company will do | |
| alternativeCompanyNames | No | Fallback company names in priority order |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are sparse (readOnlyHint, idempotentHint, destructiveHint all false). The description adds that the draft is bound to the verified email and returns a draftId. However, it does not disclose what happens if a draft already exists for that email or if the call has any side effects beyond creation. More behavioral context would improve transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences long, each serving a distinct purpose: stating the creation action and required field, then mentioning the return value. No redundant information, well front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 12 parameters, 100% schema coverage, no output schema, and siblings indicating a workflow, the description covers the basics. However, it omits potential constraints (e.g., one draft per token, error conditions) and does not clarify if creating a new draft overwrites an existing one. More detail would enhance completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the input schema documents each parameter thoroughly. The description adds minimal extra meaning beyond noting the verificationToken as required and the return of draftId. It does not elaborate on any parameter beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the tool's action ('Creates a new incorporation request draft'), the resource ('draft bound to the verified email'), and distinguishes it from siblings like update_incorporation_draft and submit_incorporation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states the required parameter ('Requires a verificationToken from verify_email_otp') and that all other fields are optional. It gives context on the tool's role in the workflow (creates a draft for later updates and submission), though it could contrast more directly with update_incorporation_draft.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_incorporation_guideGet incorporation guideARead-onlyInspect
Returns the full GVRN incorporation workflow guide: the fields collected, the email-verification steps, and the review lifecycle. Also available as the MCP resource gvrn://incorporation/guide.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, indicating a safe read operation. The description adds detail on what the guide contains (fields, steps, lifecycle), which supplements the annotation effectively. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the action 'Returns', and includes only essential information. No unnecessary words or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no parameters and no output schema, the description provides sufficient context about what the guide covers. It mentions key elements (fields, verification steps, lifecycle) so the agent knows what to expect from the return value.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero parameters, so the description does not need to add parameter-level meaning. The schema coverage is 100% by absence. Baseline 4 for no parameters is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it returns the incorporation workflow guide, specifying the contents: fields, email-verification steps, and review lifecycle. It distinguishes itself from sibling tools like create_incorporation_draft or submit_incorporation by being a read-only informational resource.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit when-to-use or when-not-to-use guidance is given, but the context of being a guide makes its usage obvious: to understand the process before performing other actions. The mention of an alternative MCP resource form provides a minor alternative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_incorporation_statusGet incorporation request statusARead-onlyInspect
Returns the current status of an incorporation request (DRAFT → QUEUED_FOR_REVIEW → UNDER_REVIEW → COMPLETED). Requires a verificationToken for the email that created the draft; requests are only visible to that email.
| Name | Required | Description | Default |
|---|---|---|---|
| draftId | Yes | Draft id returned by create_incorporation_draft | |
| verificationToken | Yes | Token from verify_email_otp |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true. The description adds important behavioral context: requires a verificationToken tied to the email that created the draft, and requests are only visible to that email. This goes beyond annotations without contradicting them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences front-load the purpose and status list, with no wasted words. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple status check tool, the description covers purpose, parameters, and access constraints. Minor gap: no mention of the return format (e.g., just the status enum or full object), though the status list implies the response content.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions. The description adds value by linking draftId to 'create_incorporation_draft' and verificationToken to 'verify_email_otp', providing inter-tool context for parameter origins.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it returns the status of an incorporation request and lists the possible statuses (DRAFT → QUEUED_FOR_REVIEW → UNDER_REVIEW → COMPLETED). This specific verb-resource combination distinguishes it from sibling tools like create_incorporation_draft, submit_incorporation, etc.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage after creating a draft and verifying email, and notes the access restriction (only visible to that email). It does not explicitly state when not to use, but the context is clear enough given sibling tool names.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
request_email_otpRequest email verification codeAInspect
Sends a 6-digit verification code to the given email address. The code is exchanged for a verificationToken via verify_email_otp, and that token authorizes the draft tools. Codes expire after 10 minutes and are rate-limited per email.
| Name | Required | Description | Default |
|---|---|---|---|
| Yes | Email address to verify — the user's real inbox |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate mutation (readOnlyHint=false) but non-destructive. The description adds that codes expire after 10 minutes and are rate-limited per email, which supplements the annotations without contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no wasted words. Information is front-loaded: action, purpose, flow, constraints. Excellent efficiency.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter, no-output-schema tool, the description covers action, flow, expiration, rate-limiting, and integration with sibling tools. Entirely adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has one parameter with full description coverage. The description adds the context 'the user's real inbox', reinforcing the email purpose meaningfully beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it sends a 6-digit code to an email and explains its role in the verification flow (exchanged for a token via verify_email_otp, authorizes draft tools). It distinguishes itself from the sibling tool verify_email_otp.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states the flow: send the code, then use verify_email_otp to exchange it. It provides clear context for when to use this tool (before verify_email_otp), though it doesn't explicitly mention when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
submit_incorporationSubmit incorporation requestADestructiveInspect
Submits a draft for review by the GVRN team and returns the request status. Requires a verificationToken for the email that created the draft, which becomes the contact for the request. Optional fields may be left blank. Irreversible: the draft becomes read-only and a review request is filed with the GVRN team.
| Name | Required | Description | Default |
|---|---|---|---|
| draftId | Yes | Draft id returned by create_incorporation_draft | |
| verificationToken | Yes | Token from verify_email_otp |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate destructiveHint=true, and the description adds specific behavioral details: the draft becomes read-only and a review request is filed, explaining what 'destructive' entails. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three concise sentences that front-load the main purpose and progressively add essential constraints. No unnecessary words or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description mentions 'returns the request status' but does not specify the format or content of that status, leaving ambiguity. Given no output schema, more detail would improve completeness. Otherwise covers prerequisites and irreversibility.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for draftId and verificationToken. The description adds that draftId comes from create_incorporation_draft and verificationToken from verify_email_otp, but this is minimal additional insight beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Submits a draft for review') and the resource ('draft'). It distinguishes from siblings like create_incorporation_draft and update_incorporation_draft by emphasizing submission and irreversibility.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides context on when to use the tool (after creating a draft and verifying email with OTP) by mentioning the required verificationToken. However, it does not explicitly state when not to use it or name alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
update_incorporation_draftUpdate incorporation draftAIdempotentInspect
Adds or corrects fields on an existing draft (patch semantics: only provided fields are changed; array fields are replaced whole). Requires a verificationToken for the email that created the draft. Fails once the draft has been submitted.
| Name | Required | Description | Default |
|---|---|---|---|
| notes | No | Anything else relevant: existing structures, PEP status, special requests | |
| draftId | Yes | Draft id returned by create_incorporation_draft | |
| urgency | No | Timeline constraints, e.g. "needed before token launch July 1" | |
| currency | No | Share capital currency, e.g. "USD" | |
| founders | No | Founders / shareholders / directors | |
| parValue | No | Par value per share | |
| entityType | No | e.g. "LTD", "FOUNDATION", "LLC" — free text is accepted | |
| companyName | No | Preferred company name | |
| totalShares | No | Total shares to be issued | |
| jurisdiction | No | Target jurisdiction, e.g. "BVI", "CAYMAN", "PANAMA" — free text is accepted | |
| verificationToken | Yes | Token from verify_email_otp for the email that created the draft | |
| businessDescription | No | What the company will do | |
| alternativeCompanyNames | No | Fallback company names in priority order |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide idempotentHint=true and destructiveHint=false. The description adds patch semantics, the verificationToken requirement, and the failure upon submission, which are valuable behavioral insights beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three concise, front-loaded sentences. Every sentence adds distinct value: purpose+semantics, authentication requirement, and lifecycle constraint. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 13 parameters, no output schema, and sibling tools, the description adequately covers core behavior, authentication, and lifecycle. It doesn't detail error handling or success responses, but that's acceptable given the tool's complexity and lack of output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents each parameter. The description adds semantic context like patch behavior and array replacement, enhancing understanding beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it adds or corrects fields on an existing draft with patch semantics, distinguishing it from create_incorporation_draft (creation) and submit_incorporation (submission). The verb 'updates' plus specific behavior details provide excellent clarity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions it requires a verificationToken and fails after submission, implying use before submission. It lacks explicit 'when not to use' or alternative naming, but the context from siblings and the description itself gives sufficient guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_email_otpVerify email codeAInspect
Verifies a 6-digit email code and returns a verificationToken valid for ~30 minutes. The draft tools require this token. Re-verifying the same email issues a fresh token that still reaches the same drafts.
| Name | Required | Description | Default |
|---|---|---|---|
| code | Yes | The 6-digit code from the user's inbox | |
| Yes | Same email the code was sent to |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds behavioral info beyond annotations: token validity of ~30 minutes and the effect of re-verifying (fresh token for same drafts). No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences that front-load the core action and output, with no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With only 2 parameters and no output schema, the description adequately explains the return value (verificationToken) and its usage context (draft tools). Complete for the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers both parameters fully with descriptions. Description does not add extra meaning beyond what the schema already provides. Baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the verb 'verifies' and the resource '6-digit email code', and explains the output 'verificationToken'. It distinguishes from sibling request_email_otp by specifying the action of verification.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implicitly tells when to use: after receiving the code and to obtain a token for draft tools. Does not explicitly state when not to use, but context from sibling tools provides clarity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!