Foundingbird MCP
An official MCP server by Foundingbird that allows AI assistants to incorporate Malaysian Sdn Bhd companies, switch company secretaries, request SSM documents, check compliance deadlines, and get instant quotes for corporate services through the Foundingbird portal.
Endpoint and access
No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.
https://portal.foundingbird.com/mcpWhat its tools do
30 tools, grouped by the hints the server advertises. Hints are self-declared, not verified behavior.
Read-only (20)
get_firm_overviewdescribe_flowlist_packagesestimate_quotecheck_company_namesearch_msic_codeslist_applicationsget_applicationget_business_classificationget_checkoutget_statuslist_companiesget_companyget_company_particularsexplain_deadlineget_company_registerslist_invoicesfind_company_documentslist_signing_requestslist_letters
Checks and signals
Each line is separate evidence, not a trust score.
- Passed Endpoint answered the live check ·
- Passed Official MCP Registry namespace is tied to foundingbird.com ·
- Passed Endpoint is on the registry namespace domain ·
- Availability 1 of 1 checks passed in 30 days
What you can do with it
- Incorporate a Sdn Bhd with specified directors and shareholding
- Switch an existing company's secretary to Foundingbird
- Request certified true copies of SSM documents
- Check annual return and audit compliance deadlines
Source and maintenance
Protocol and capabilities
- Server
- foundingbird 1.0.0
- MCP protocol negotiated in check
- 2025-11-25
- Tools
- 30 advertised
- Resources
- 3 advertised
- Resource templates
- 0 advertised
- Prompts
- Not advertised
{
"tools": {
"listChanged": false
},
"resources": {
"listChanged": false
},
"extensions": {
"io.modelcontextprotocol/ui": {
"mimeTypes": [
"text/html;profile=mcp-app"
]
}
}
}Server-provided instructions
Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.
Tools
30 advertised
get_firm_overview — Get firm overview
What this company secretarial firm offers: the services a customer can start here (with the flow name the other tools take), whether it provides a virtual office address and a nominee director, its policy links and how the process works. Call this first.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {}
}{
"title": "Get firm overview",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}describe_flow — Describe an application
The steps of one service's application, in order, each with the JSON Schema of the fields the customer fills in, and the stages after submission (payment, identity verification, signing, filing). Use it to know what to ask the customer.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"flow"
],
"properties": {
"flow": {
"enum": [
"incorporation-sdn-bhd",
"switch-in-sdn-bhd"
],
"type": "string",
"description": "The service: \"incorporation-sdn-bhd\" registers a new Sdn Bhd; \"switch-in-sdn-bhd\" moves an existing Sdn Bhd to this firm as its company secretary. get_firm_overview lists what this firm offers."
}
}
}{
"title": "Describe an application",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}list_packages — List packages and prices
The packages and add-ons for one service, step by step, with prices in the firm's currency and the item ids estimate_quote takes. Some steps only apply under a condition (listed under conditions); pass flags to see the steps as that customer would.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"flow"
],
"properties": {
"flow": {
"enum": [
"incorporation-sdn-bhd",
"switch-in-sdn-bhd"
],
"type": "string",
"description": "The service: \"incorporation-sdn-bhd\" registers a new Sdn Bhd; \"switch-in-sdn-bhd\" moves an existing Sdn Bhd to this firm as its company secretary. get_firm_overview lists what this firm offers."
},
"flags": {
"type": "object",
"description": "Answers to the conditions some package steps depend on, as list_packages reports them, e.g. {\"requires_virtual_office\": true} when the customer has no business address of their own.",
"additionalProperties": {
"type": "boolean"
}
}
}
}{
"title": "List packages and prices",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}estimate_quote — Estimate a quote
Price a selection of packages and add-ons for one service: one-time and recurring totals, tax and the grand total. Selections map a list_packages step slug to the item ids chosen on that step. Reports required steps left without a choice.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"flow",
"selections"
],
"properties": {
"flow": {
"enum": [
"incorporation-sdn-bhd",
"switch-in-sdn-bhd"
],
"type": "string",
"description": "The service: \"incorporation-sdn-bhd\" registers a new Sdn Bhd; \"switch-in-sdn-bhd\" moves an existing Sdn Bhd to this firm as its company secretary. get_firm_overview lists what this firm offers."
},
"flags": {
"type": "object",
"description": "Answers to the conditions some package steps depend on, as list_packages reports them, e.g. {\"requires_virtual_office\": true} when the customer has no business address of their own.",
"additionalProperties": {
"type": "boolean"
}
},
"interval": {
"enum": [
"monthly",
"annually"
],
"type": "string",
"description": "Billing interval for steps that offer a choice. Defaults to each step's own default."
},
"selections": {
"type": "object",
"description": "Step slug → item ids from list_packages, e.g. {\"package\": [\"pri_abc123\"]}.",
"additionalProperties": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
}{
"title": "Estimate a quote",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}check_company_name — Check a company name
Whether a proposed Sdn Bhd name is already in use on this firm's platform (exact match only), what SSM's naming rules refuse in it (naming_problems: the name must change), and which words need an authority's approval (approval_warnings: allowed, the firm follows up). It is not an SSM name search: SSM confirms availability when the incorporation is filed.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"maxLength": 200,
"description": "The proposed name. A trailing \"Sdn. Bhd.\" is ignored."
}
}
}{
"title": "Check a company name",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}search_msic_codes — Search MSIC codes
Find five-digit MSIC 2008 business activity codes by what the business does (e.g. "software development", "online shop", "cafe") or by the first digits of a code (e.g. "620"). Each match says what the code includes, officially. Once company_details is saved, get_business_classification suggests codes drafted from the customer's own description; use this to look up alternatives. The business classification step takes up to three codes.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"maxLength": 200,
"description": "Words describing the activity, or the start of a code."
}
}
}{
"title": "Search MSIC codes",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}list_applications — List my applications
The signed-in customer's applications with this firm, newest first: id, service, status and company name. Cancelled applications are left out.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {}
}{
"title": "List my applications",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}start_application — Start an application
Start the signed-in customer's application for a service, or resume their open draft for it. Returns the application id and its steps; fill them in with update_application_step.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"flow"
],
"properties": {
"flow": {
"enum": [
"incorporation-sdn-bhd",
"switch-in-sdn-bhd"
],
"type": "string",
"description": "The service: \"incorporation-sdn-bhd\" registers a new Sdn Bhd; \"switch-in-sdn-bhd\" moves an existing Sdn Bhd to this firm as its company secretary. get_firm_overview lists what this firm offers."
}
}
}{
"title": "Start an application",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}get_application — Get an application
One of the signed-in customer's applications: status, each step's saved answers and whether the step is complete or what to fix, and what to do next.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"application_id"
],
"properties": {
"application_id": {
"type": "string",
"pattern": "^obs_[A-Za-z0-9]+$",
"description": "The application's id (obs_…), from list_applications or start_application."
}
}
}{
"title": "Get an application",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}update_application_step — Fill in an application step
Save the customer's answers for one step of their application. Fields follow the step's JSON Schema from describe_flow; fields left out keep their saved values. Returns what to fix per field when an answer is refused, in which case nothing was saved.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"application_id",
"step",
"fields"
],
"properties": {
"step": {
"type": "string",
"description": "The step's key from describe_flow, e.g. \"company_details\"."
},
"fields": {
"type": "object",
"description": "The step's fields, as its JSON Schema in describe_flow describes them."
},
"application_id": {
"type": "string",
"pattern": "^obs_[A-Za-z0-9]+$",
"description": "The application's id (obs_…), from list_applications or start_application."
}
}
}{
"title": "Fill in an application step",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}get_business_classification — Get the business classification draft
The drafted business description, company-name explanation and MSIC codes for an incorporation, for the customer to review before saving the business_classification step. The draft is made in the background after company_details is saved; poll while its status is pending.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"application_id"
],
"properties": {
"application_id": {
"type": "string",
"pattern": "^obs_[A-Za-z0-9]+$",
"description": "The application's id (obs_…), from list_applications or start_application."
}
}
}{
"title": "Get the business classification draft",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}regenerate_business_classification — Redraft the business classification
Draft an incorporation's business description, name explanation and MSIC codes again, e.g. after the first draft failed or the customer wants fresh suggestions. Poll get_business_classification for the result.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"application_id"
],
"properties": {
"application_id": {
"type": "string",
"pattern": "^obs_[A-Za-z0-9]+$",
"description": "The application's id (obs_…), from list_applications or start_application."
}
}
}{
"title": "Redraft the business classification",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": false
}submit_application — Submit an application
Submit the signed-in customer's finished application to the firm. Only call it after showing the customer the firm's terms and policies (get_firm_overview links them) and the declaration that the application is true and complete, and after they explicitly agree. Submitting again after a change sends the update.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"application_id",
"terms_accepted"
],
"properties": {
"application_id": {
"type": "string",
"pattern": "^obs_[A-Za-z0-9]+$",
"description": "The application's id (obs_…), from list_applications or start_application."
},
"terms_accepted": {
"type": "boolean",
"const": true,
"description": "The customer has read the firm's terms and policies and declares the application true and complete. Only true after they explicitly agree."
}
}
}{
"title": "Submit an application",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}get_checkout — Get an application's packages
The packages and add-ons for one of the signed-in customer's applications, as its answers make them apply: item ids and prices per step, what's already chosen, required steps without a choice, and the total so far. Items carry the firm's own sales wording: a badge on the option it recommends, a tagline, what's included (features) and fine print such as per-change fees.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"application_id"
],
"properties": {
"application_id": {
"type": "string",
"pattern": "^obs_[A-Za-z0-9]+$",
"description": "The application's id (obs_…), from list_applications or start_application."
}
}
}{
"title": "Get an application's packages",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}choose_package — Choose a package
Choose the items on one checkout step of a submitted application, replacing that step's previous choice. Item ids come from get_checkout; an empty list clears an optional step. Returns the updated cart.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"application_id",
"step",
"item_ids"
],
"properties": {
"step": {
"type": "string",
"description": "The step's slug from get_checkout."
},
"interval": {
"enum": [
"monthly",
"annually"
],
"type": "string",
"description": "Billing interval, for steps that offer a choice."
},
"item_ids": {
"type": "array",
"items": {
"type": "string"
},
"description": "Item ids from get_checkout for this step."
},
"application_id": {
"type": "string",
"pattern": "^obs_[A-Za-z0-9]+$",
"description": "The application's id (obs_…), from list_applications or start_application."
}
}
}{
"title": "Choose a package",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}create_handoff_link — Get a link to continue on the website
A link the signed-in customer clicks to continue on the firm's website, already signed in: "payment" to pay (after choosing packages), "verification" for identity verification, "signing" to sign documents, "documents" to upload a switch-in's documents. Payment, ID documents and signatures never go through chat.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"application_id",
"purpose"
],
"properties": {
"purpose": {
"enum": [
"payment",
"verification",
"signing",
"documents"
],
"type": "string"
},
"application_id": {
"type": "string",
"pattern": "^obs_[A-Za-z0-9]+$",
"description": "The application's id (obs_…), from list_applications or start_application."
}
}
}{
"title": "Get a link to continue on the website",
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": false
}get_status — Get an application's status
Where one of the signed-in customer's applications stands after submission: each step to a registered company (or, for a switch-in, to being live with the firm), which is done and when, whose move the current one is, who still has to verify their identity or sign, and what the customer needs to do on the website (create_handoff_link).
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"application_id"
],
"properties": {
"application_id": {
"type": "string",
"pattern": "^obs_[A-Za-z0-9]+$",
"description": "The application's id (obs_…), from list_applications or start_application."
}
}
}{
"title": "Get an application's status",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}cancel_application — Cancel an application
Cancel one of the signed-in customer's draft applications that was never submitted, freeing its company name. It can't be resumed afterwards. Only call it after the customer explicitly confirms.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"application_id"
],
"properties": {
"application_id": {
"type": "string",
"pattern": "^obs_[A-Za-z0-9]+$",
"description": "The application's id (obs_…), from list_applications or start_application."
}
}
}{
"title": "Cancel an application",
"readOnlyHint": false,
"openWorldHint": false,
"idempotentHint": false,
"destructiveHint": true
}list_companies — List my companies
The companies the signed-in customer is part of with this firm (as director, shareholder, authorised user, …): id, legal name, registration number, status, their roles, and what each needs from them (needs_you). status "left" means the company no longer uses this firm. get_company has the deadlines.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {}
}{
"title": "List my companies",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}get_company — Get a company's details and deadlines
One of the signed-in customer's companies: its details, what needs them (needs_you, each with the create_company_link purpose that opens it), and its compliance deadlines: attention (overdue, waiting on them, or due soon) and upcoming. owner says whose job each deadline is: "cosec" (the firm), "you" (the customer), or another adviser such as "tax_agent" or "auditor". explain_deadline explains one by its deadline_key.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"company_id"
],
"properties": {
"company_id": {
"type": "string",
"pattern": "^com_[A-Za-z0-9]+$",
"description": "The company's id (com_…), from list_companies."
}
}
}{
"title": "Get a company's details and deadlines",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}create_company_link — Get a link to a company page on the website
A link the signed-in customer clicks to act on one of their companies on the firm's website: "signing" to sign documents, "verification" for identity verification, "annual_return" to approve the annual return, "invoices" to see and pay invoices. get_company's needs_you says which apply. Signing, payment and approvals never happen in chat.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"company_id",
"purpose"
],
"properties": {
"purpose": {
"enum": [
"signing",
"verification",
"annual_return",
"invoices"
],
"type": "string"
},
"company_id": {
"type": "string",
"pattern": "^com_[A-Za-z0-9]+$",
"description": "The company's id (com_…), from list_companies."
}
}
}{
"title": "Get a link to a company page on the website",
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": false
}get_company_particulars — Get a company's particulars
One of the signed-in customer's companies as it stands on its register: legal and former name, entity type, registration numbers, incorporation date, registered and business address, nature of business (MSIC codes), financial year end, whether it has a constitution, its share capital by class, and its company secretary, auditor and tax agent. For directors and shareholders use get_company_registers.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"company_id"
],
"properties": {
"company_id": {
"type": "string",
"pattern": "^com_[A-Za-z0-9]+$",
"description": "The company's id (com_…), from list_companies."
}
}
}{
"title": "Get a company's particulars",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}explain_deadline — Explain a company deadline
Explains one of a company's compliance deadlines, by the deadline_key get_company gives each: what it is, which authority it's for, whose job it is, what the customer has to do, the penalty for missing it, and for an annual return or an ownership confirmation, who has and hasn't done their part yet.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"company_id",
"deadline_key"
],
"properties": {
"company_id": {
"type": "string",
"pattern": "^com_[A-Za-z0-9]+$",
"description": "The company's id (com_…), from list_companies."
},
"deadline_key": {
"type": "string",
"pattern": "^[\\w-]+$",
"description": "The deadline's key, from get_company."
}
}
}{
"title": "Explain a company deadline",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}get_company_registers — Get a company's directors and shareholders
The register of directors and the register of members of one of the signed-in customer's companies: each director's name, nationality, type and appointment date (and former directors), and each shareholder's name, nationality (a company's country of incorporation), whether it's an individual or a company, and its shares by class with its percentage of the company. you marks the customer. No identity numbers or contact details are available here.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"company_id"
],
"properties": {
"company_id": {
"type": "string",
"pattern": "^com_[A-Za-z0-9]+$",
"description": "The company's id (com_…), from list_companies."
}
}
}{
"title": "Get a company's directors and shareholders",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}list_invoices — List a company's invoices
The invoices the firm has sent one of the signed-in customer's companies, newest first: number, what it was for, dates, total, what's still owed and status ("paid", "open", "overdue", "uncollectible"), with the outstanding total. by_bank_transfer means the customer pays it by bank transfer, not online. create_billing_link opens an invoice, the statement of accounts or the Billing page to pay.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"company_id"
],
"properties": {
"status": {
"enum": [
"outstanding",
"all"
],
"type": "string",
"description": "\"outstanding\" for only what's still owed. Defaults to all."
},
"company_id": {
"type": "string",
"pattern": "^com_[A-Za-z0-9]+$",
"description": "The company's id (com_…), from list_companies."
}
}
}{
"title": "List a company's invoices",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}create_billing_link — Get a link to an invoice or statement
A link the signed-in customer clicks to sign in on the firm's website at one of their company's billing pages: "billing" to pay what's outstanding, "invoice" for one invoice from list_invoices (give its invoice_id), "statement" to download the statement of accounts.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"company_id",
"purpose"
],
"properties": {
"purpose": {
"enum": [
"billing",
"invoice",
"statement"
],
"type": "string"
},
"company_id": {
"type": "string",
"pattern": "^com_[A-Za-z0-9]+$",
"description": "The company's id (com_…), from list_companies."
},
"invoice_id": {
"type": "string",
"pattern": "^inv_[A-Za-z0-9]+$",
"description": "The invoice's id (inv_…), from list_invoices."
}
}
}{
"title": "Get a link to an invoice or statement",
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": false
}find_company_documents — Find a company's documents
The documents the signed-in customer can open for one of their companies, from the firm's document store: with no query or folder_id, its folders (Statutory Forms, Minutes Book, Correspondence, Customer Letters); with folder_id, what's in that folder; with query, files whose name holds every word, or, when no name matches, files whose text does (matched_by "contents"). Names, folders and dates only, never what a file says. Search by the name the file likely has in Malaysia: Certificate of incorporation: "S 17 - Certificate of Incorporation" if the company applied for one (s.17), else "S 15 - Notice of Registration", which is conclusive evidence of registration (s.19); "Form 9" for a company incorporated before 2017. Superform (registration application): "S 14 - Superform". Constitution: "Constitution"; "Memorandum and Articles" or "M&A" for an older company. Return of allotment of shares: "S 78"; "Form 24" before 2017. Change of directors or secretary: "S 58"; "Form 49" before 2017. Change of registered address: "S 46"; "Form 44" before 2017. Annual return: "S 68" or "Annual Return"; "Form 50" before 2017. Beneficial ownership (e-BOS): "S 60B" or "e-BOS". Try the likeliest name first, then the next; if nothing matches, list Statutory Forms and choose by name. create_document_link gives the customer a link to open one.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"company_id"
],
"properties": {
"query": {
"type": "string",
"maxLength": 100,
"description": "Words in the file's name, e.g. \"superform\" or \"notice registration\"."
},
"folder_id": {
"type": "string",
"pattern": "^[\\w-]+$",
"description": "A folder's id, from find_company_documents."
},
"company_id": {
"type": "string",
"pattern": "^com_[A-Za-z0-9]+$",
"description": "The company's id (com_…), from list_companies."
}
}
}{
"title": "Find a company's documents",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}list_signing_requests — List a company's signing requests
The e-signing requests at one of the signed-in customer's companies that they're on, newest first: name, status ("in_progress", "completed", "declined", "expired", "voided"), when it was sent, its documents, the customer's own part (sign or view) and where it stands, and each signer by name with whether they've signed. create_document_link with signing_request_id opens one on the website, to sign it or download the signed documents.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"company_id"
],
"properties": {
"company_id": {
"type": "string",
"pattern": "^com_[A-Za-z0-9]+$",
"description": "The company's id (com_…), from list_companies."
}
}
}{
"title": "List a company's signing requests",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}list_letters — List a company's letters
The letters the firm has received for one of the signed-in customer's companies at its registered office, newest first: title, sender and the date it arrived, and new: true for one that came since the customer last opened their Letterbox. You only see these details, never the letter itself; don't guess what it says. create_document_link with letter_id opens the scan on the website.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"company_id"
],
"properties": {
"since": {
"type": "string",
"format": "date",
"description": "Only letters that arrived on or after this date (YYYY-MM-DD)."
},
"company_id": {
"type": "string",
"pattern": "^com_[A-Za-z0-9]+$",
"description": "The company's id (com_…), from list_companies."
}
}
}{
"title": "List a company's letters",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}create_document_link — Get a link to open a document
A link the signed-in customer clicks to open one of their company's documents on the firm's website, after signing them in: a file from find_company_documents (folder_id and file_id), a letter from list_letters (letter_id), or a signing request from list_signing_requests (signing_request_id). Give one of the three. The document never comes into the chat.
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"company_id"
],
"properties": {
"file_id": {
"type": "string",
"pattern": "^[\\w-]+$",
"description": "The file's id, from find_company_documents."
},
"folder_id": {
"type": "string",
"pattern": "^[\\w-]+$",
"description": "A folder's id, from find_company_documents."
},
"letter_id": {
"type": "string",
"pattern": "^ltr_[A-Za-z0-9]+$",
"description": "The letter's id, from list_letters."
},
"company_id": {
"type": "string",
"pattern": "^com_[A-Za-z0-9]+$",
"description": "The company's id (com_…), from list_companies."
},
"signing_request_id": {
"type": "string",
"pattern": "^sp_[A-Za-z0-9]+$",
"description": "The signing request's id, from list_signing_requests."
}
}
}{
"title": "Get a link to open a document",
"readOnlyHint": false,
"openWorldHint": true,
"idempotentHint": false,
"destructiveHint": false
}Prompts
Not advertised
Resources
3 advertised
progress_card — Application progress
Where one of the customer's applications stands: the steps filled in, or the steps after submission and what's waiting on them.
ui://onboarding/progress-card-b6f667c4e0e3.htmlpackage_picker — Package picker
The packages and add-ons for an application, as on the firm's pricing page. The customer can choose in it; each choice is reported back to you.
ui://onboarding/package-picker-487a95776429.htmlreview_pay — Continue on the website
A button that takes the customer to the firm's website, signed in, to pay, verify their identity, sign or upload documents.
ui://onboarding/review-pay-56961911e130.html30-day availability
Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.
- Successful checks
- 1 of 1 (100%)
- Average latency
- 2035 ms
- 95th percentile latency
- 2035 ms
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · probe · passed · 2035 ms · metadata changed · 30 tool(s), 3 resource(s), 0 resource template(s)
Connect from your client
Each snippet registers the same endpoint; pick the client you use.
Claude Code
claude mcp add --transport http foundingbird-mcp https://portal.foundingbird.com/mcpCodex
codex mcp add foundingbird-mcp --url https://portal.foundingbird.com/mcpCursor
{
"mcpServers": {
"foundingbird-mcp": {
"url": "https://portal.foundingbird.com/mcp"
}
}
}Cline
{
"mcpServers": {
"foundingbird-mcp": {
"type": "streamableHttp",
"url": "https://portal.foundingbird.com/mcp",
"disabled": false
}
}
}VS Code
{
"servers": {
"foundingbird-mcp": {
"type": "http",
"url": "https://portal.foundingbird.com/mcp"
}
}
}Gemini CLI
gemini mcp add --transport http foundingbird-mcp https://portal.foundingbird.com/mcpClaude Desktop
https://portal.foundingbird.com/mcpWindsurf
{
"mcpServers": {
"foundingbird-mcp": {
"serverUrl": "https://portal.foundingbird.com/mcp"
}
}
}Let your agent find its tools
Find servers like Foundingbird MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.
Other productivity and knowledge servers
Do you run Foundingbird MCP?
Prove ownership with a DNS record, a well-known file, or your Official MCP Registry entry, and your edits publish immediately. Proofs are re-checked weekly; admins can still hide or remove a listing.