Collect and submit company incorporation requests for review by GVRN's corpsec team.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
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.
Token from verify_email_otp — the draft is bound to this email
Anything else relevant: existing structures, PEP status, special requests
Timeline constraints, e.g. "needed before token launch July 1"
Share capital currency, e.g. "USD"
Founders / shareholders / directors
Par value per share
e.g. "LTD", "FOUNDATION", "LLC" — free text is accepted
Preferred company name
Total shares to be issued
Target jurisdiction, e.g. "BVI", "CAYMAN", "PANAMA" — free text is accepted
What the company will do
Fallback company names in priority order
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
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.
| Argument | Type | Description |
|---|---|---|
| notes | string | Anything else relevant: existing structures, PEP status, special requests |
| urgency | string | Timeline constraints, e.g. "needed before token launch July 1" |
| currency | string | Share capital currency, e.g. "USD" |
| founders | array | Founders / shareholders / directors |
| parValue | number | Par value per share |
| entityType | string | e.g. "LTD", "FOUNDATION", "LLC" — free text is accepted |
| companyName | string | Preferred company name |
| totalShares | number | Total shares to be issued |
| jurisdiction | string | Target jurisdiction, e.g. "BVI", "CAYMAN", "PANAMA" — free text is accepted |
| verificationToken* | string | Token from verify_email_otp — the draft is bound to this email |
| businessDescription | string | What the company will do |
| alternativeCompanyNames | array | Fallback company names in priority order |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"verificationToken"
],
"properties": {
"notes": {
"type": "string",
"maxLength": 10000,
"description": "Anything else relevant: existing structures, PEP status, special requests"
},
"urgency": {
"type": "string",
"maxLength": 500,
"description": "Timeline constraints, e.g. \"needed before token launch July 1\""
},
"currency": {
"type": "string",
"maxLength": 10,
"description": "Share capital currency, e.g. \"USD\""
},
"founders": {
"type": "array",
"items": {
"type": "object",
"properties": {
"role": {
"type": "string",
"maxLength": 100,
"description": "e.g. \"Director\", \"Shareholder\", \"CEO\""
},
"email": {
"type": "string",
"maxLength": 320,
"description": "Founder's contact email"
},
"fullName": {
"type": "string",
"maxLength": 200
},
"nationality": {
"type": "string",
"maxLength": 100,
"description": "Nationality or citizenship, free text"
},
"shareAmount": {
"type": "number",
"minimum": 0,
"description": "Number of shares allocated to this founder"
}
},
"description": "Founder details — every field optional",
"additionalProperties": false
},
"maxItems": 50,
"description": "Founders / shareholders / directors"
},
"parValue": {
"type": "number",
"minimum": 0,
"description": "Par value per share"
},
"entityType": {
"type": "string",
"maxLength": 100,
"description": "e.g. \"LTD\", \"FOUNDATION\", \"LLC\" — free text is accepted"
},
"companyName": {
"type": "string",
"maxLength": 300,
"description": "Preferred company name"
},
"totalShares": {
"type": "number",
"description": "Total shares to be issued",
"exclusiveMinimum": 0
},
"jurisdiction": {
"type": "string",
"maxLength": 100,
"description": "Target jurisdiction, e.g. \"BVI\", \"CAYMAN\", \"PANAMA\" — free text is accepted"
},
"verificationToken": {
"type": "string",
"description": "Token from verify_email_otp — the draft is bound to this email"
},
"businessDescription": {
"type": "string",
"maxLength": 5000,
"description": "What the company will do"
},
"alternativeCompanyNames": {
"type": "array",
"items": {
"type": "string",
"maxLength": 300
},
"maxItems": 10,
"description": "Fallback company names in priority order"
}
},
"additionalProperties": false
}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.
No arguments.
{
"type": "object",
"properties": {}
}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.
| Argument | Type | Description |
|---|---|---|
| draftId* | string | Draft id returned by create_incorporation_draft |
| verificationToken* | string | Token from verify_email_otp |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"draftId",
"verificationToken"
],
"properties": {
"draftId": {
"type": "string",
"format": "uuid",
"description": "Draft id returned by create_incorporation_draft"
},
"verificationToken": {
"type": "string",
"description": "Token from verify_email_otp"
}
},
"additionalProperties": false
}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.
| Argument | Type | Description |
|---|---|---|
| email* | string | Email address to verify — the user's real inbox |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"email"
],
"properties": {
"email": {
"type": "string",
"maxLength": 320,
"description": "Email address to verify — the user's real inbox"
}
},
"additionalProperties": false
}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.
| Argument | Type | Description |
|---|---|---|
| draftId* | string | Draft id returned by create_incorporation_draft |
| verificationToken* | string | Token from verify_email_otp |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"draftId",
"verificationToken"
],
"properties": {
"draftId": {
"type": "string",
"format": "uuid",
"description": "Draft id returned by create_incorporation_draft"
},
"verificationToken": {
"type": "string",
"description": "Token from verify_email_otp"
}
},
"additionalProperties": false
}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.
| Argument | Type | Description |
|---|---|---|
| notes | string | Anything else relevant: existing structures, PEP status, special requests |
| draftId* | string | Draft id returned by create_incorporation_draft |
| urgency | string | Timeline constraints, e.g. "needed before token launch July 1" |
| currency | string | Share capital currency, e.g. "USD" |
| founders | array | Founders / shareholders / directors |
| parValue | number | Par value per share |
| entityType | string | e.g. "LTD", "FOUNDATION", "LLC" — free text is accepted |
| companyName | string | Preferred company name |
| totalShares | number | Total shares to be issued |
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.
| Argument | Type | Description |
|---|---|---|
| code* | string | The 6-digit code from the user's inbox |
| email* | string | Same email the code was sent to |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"email",
"code"
],
"properties": {
"code": {
"type": "string",
"maxLength": 10,
"minLength": 4,
"description": "The 6-digit code from the user's inbox"
},
"email": {
"type": "string",
"maxLength": 320,
"description": "Same email the code was sent to"
}
},
"additionalProperties": false
}| jurisdiction |
| string |
| Target jurisdiction, e.g. "BVI", "CAYMAN", "PANAMA" — free text is accepted |
| verificationToken* | string | Token from verify_email_otp for the email that created the draft |
| businessDescription | string | What the company will do |
| alternativeCompanyNames | array | Fallback company names in priority order |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"draftId",
"verificationToken"
],
"properties": {
"notes": {
"type": "string",
"maxLength": 10000,
"description": "Anything else relevant: existing structures, PEP status, special requests"
},
"draftId": {
"type": "string",
"format": "uuid",
"description": "Draft id returned by create_incorporation_draft"
},
"urgency": {
"type": "string",
"maxLength": 500,
"description": "Timeline constraints, e.g. \"needed before token launch July 1\""
},
"currency": {
"type": "string",
"maxLength": 10,
"description": "Share capital currency, e.g. \"USD\""
},
"founders": {
"type": "array",
"items": {
"type": "object",
"properties": {
"role": {
"type": "string",
"maxLength": 100,
"description": "e.g. \"Director\", \"Shareholder\", \"CEO\""
},
"email": {
"type": "string",
"maxLength": 320,
"description": "Founder's contact email"
},
"fullName": {
"type": "string",
"maxLength": 200
},
"nationality": {
"type": "string",
"maxLength": 100,
"description": "Nationality or citizenship, free text"
},
"shareAmount": {
"type": "number",
"minimum": 0,
"description": "Number of shares allocated to this founder"
}
},
"description": "Founder details — every field optional",
"additionalProperties": false
},
"maxItems": 50,
"description": "Founders / shareholders / directors"
},
"parValue": {
"type": "number",
"minimum": 0,
"description": "Par value per share"
},
"entityType": {
"type": "string",
"maxLength": 100,
"description": "e.g. \"LTD\", \"FOUNDATION\", \"LLC\" — free text is accepted"
},
"companyName": {
"type": "string",
"maxLength": 300,
"description": "Preferred company name"
},
"totalShares": {
"type": "number",
"description": "Total shares to be issued",
"exclusiveMinimum": 0
},
"jurisdiction": {
"type": "string",
"maxLength": 100,
"description": "Target jurisdiction, e.g. \"BVI\", \"CAYMAN\", \"PANAMA\" — free text is accepted"
},
"verificationToken": {
"type": "string",
"description": "Token from verify_email_otp for the email that created the draft"
},
"businessDescription": {
"type": "string",
"maxLength": 5000,
"description": "What the company will do"
},
"alternativeCompanyNames": {
"type": "array",
"items": {
"type": "string",
"maxLength": 300
},
"maxItems": 10,
"description": "Fallback company names in priority order"
}
},
"additionalProperties": false
}