Capital Company
Launch SPVs and funds, invite investors and send capital calls through Capital Company.
¿Debería usar esto?
Calidad y seguridad
Hallazgos (8)
- HIGH
- LOWen capital_company_invite_investors
- LOWen capital_company_send_subscription_agreements
- LOWen capital_company_send_capital_calls
- LOWen capital_company_edit_commitment
- LOWen capital_company_create_commitment
- LOWen capital_company_show_confirmation
- LOWen capital_company_create_fund
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"capital-company": {
"url": "https://capitalcompany.ai/mcp"
}
}
}Puntos de conexión remotos
https://capitalcompany.ai/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (14)
🟡create_workspace(email, fullName, teamName)
Opens a Capital Company workspace for someone who has none: their account and their firm’s team. Needs no sign-in. They then sign in from the link the login page emails them, and connect this assistant to have it set things up.
Esquema de entrada
{
"type": "object",
"properties": {
"email": {
"description": "The email address the person will sign in with",
"type": "string"
},
"fullName": {
"type": "string",
"minLength": 1,
"maxLength": 200,
"description": "The person’s full name"
},
"teamName": {
"type": "string",
"minLength": 1,
"maxLength": 200,
"description": "The name of their firm or team, which the workspace is named after"
}
},
"required": [
"email",
"fullName",
"teamName"
]
}🟡capital_company_create_fund(request, team, timeZone)
Starts creating a fund for the user: an SPV or a blind pool, with its legal name, expected allocation, strategy, classes and fees, manager and documents. Capital Company’s assistant asks for what is missing and, when it has everything, puts the fund to the user for confirmation before anything is created.
Esquema de entrada
{
"type": "object",
"properties": {
"request": {
"type": "string",
"minLength": 1,
"maxLength": 10000,
"description": "What the user asked for, in their own words"
},
"team": {
"description": "The team to act on, by name, only when the user belongs to more than one team; leave it out otherwise",
"type": "string",
"minLength": 1
},
"timeZone": {
"type": "string",
"minLength": 1,
"description": "The user’s IANA time zone, such as America/New_York"
}
},
"required": [
"request",
"timeZone"
]
}⚪capital_company_invite_investors(request, team, timeZone)
Starts inviting investors to one of the user’s funds by email address. The assistant resolves the fund, asks for what is missing, and puts the invitations to the user for confirmation before any is sent.
Esquema de entrada
{
"type": "object",
"properties": {
"request": {
"type": "string",
"minLength": 1,
"maxLength": 10000,
"description": "What the user asked for, in their own words"
},
"team": {
"description": "The team to act on, by name, only when the user belongs to more than one team; leave it out otherwise",
"type": "string",
"minLength": 1
},
"timeZone": {
"type": "string",
"minLength": 1,
"description": "The user’s IANA time zone, such as America/New_York"
}
},
"required": [
"request",
"timeZone"
]
}🟡capital_company_send_subscription_agreements(request, team, timeZone)
Starts sending subscription agreements for signature to investors of one of the user’s funds. The assistant resolves the fund and the commitments and puts the requests to the user for confirmation before any is sent.
Esquema de entrada
{
"type": "object",
"properties": {
"request": {
"type": "string",
"minLength": 1,
"maxLength": 10000,
"description": "What the user asked for, in their own words"
},
"team": {
"description": "The team to act on, by name, only when the user belongs to more than one team; leave it out otherwise",
"type": "string",
"minLength": 1
},
"timeZone": {
"type": "string",
"minLength": 1,
"description": "The user’s IANA time zone, such as America/New_York"
}
},
"required": [
"request",
"timeZone"
]
}🟡capital_company_send_capital_calls(request, team, timeZone)
Starts sending capital call notices to the investors of a fund class. The assistant resolves the class and its commitments and puts the notices to the user for confirmation before any is sent. It never moves money.
Esquema de entrada
{
"type": "object",
"properties": {
"request": {
"type": "string",
"minLength": 1,
"maxLength": 10000,
"description": "What the user asked for, in their own words"
},
"team": {
"description": "The team to act on, by name, only when the user belongs to more than one team; leave it out otherwise",
"type": "string",
"minLength": 1
},
"timeZone": {
"type": "string",
"minLength": 1,
"description": "The user’s IANA time zone, such as America/New_York"
}
},
"required": [
"request",
"timeZone"
]
}🟡capital_company_update_fund(request, team, timeZone)
Starts changing settings of one of the user’s funds: the fields they name, nothing else. The assistant puts the change to the user for confirmation before anything is written.
Esquema de entrada
{
"type": "object",
"properties": {
"request": {
"type": "string",
"minLength": 1,
"maxLength": 10000,
"description": "What the user asked for, in their own words"
},
"team": {
"description": "The team to act on, by name, only when the user belongs to more than one team; leave it out otherwise",
"type": "string",
"minLength": 1
},
"timeZone": {
"type": "string",
"minLength": 1,
"description": "The user’s IANA time zone, such as America/New_York"
}
},
"required": [
"request",
"timeZone"
]
}🟡capital_company_edit_commitment(request, team, timeZone)
Starts editing an existing commitment in one of the user’s funds: the fields they name. The assistant puts the edit, and anything it changes about sent capital calls, to the user for confirmation before anything is written.
Esquema de entrada
{
"type": "object",
"properties": {
"request": {
"type": "string",
"minLength": 1,
"maxLength": 10000,
"description": "What the user asked for, in their own words"
},
"team": {
"description": "The team to act on, by name, only when the user belongs to more than one team; leave it out otherwise",
"type": "string",
"minLength": 1
},
"timeZone": {
"type": "string",
"minLength": 1,
"description": "The user’s IANA time zone, such as America/New_York"
}
},
"required": [
"request",
"timeZone"
]
}🟡capital_company_create_commitment(request, team, timeZone)
Starts recording a new commitment by an investor in one of the user’s funds. The assistant resolves the fund and the investor, asks for what is missing, and puts the commitment to the user for confirmation before anything is written.
Esquema de entrada
{
"type": "object",
"properties": {
"request": {
"type": "string",
"minLength": 1,
"maxLength": 10000,
"description": "What the user asked for, in their own words"
},
"team": {
"description": "The team to act on, by name, only when the user belongs to more than one team; leave it out otherwise",
"type": "string",
"minLength": 1
},
"timeZone": {
"type": "string",
"minLength": 1,
"description": "The user’s IANA time zone, such as America/New_York"
}
},
"required": [
"request",
"timeZone"
]
}🟢capital_company_ask(request, team, timeZone)
Answers a question about the user’s team and funds in Capital Company from its records, in Capital Company’s words. Changes nothing.
Esquema de entrada
{
"type": "object",
"properties": {
"request": {
"type": "string",
"minLength": 1,
"maxLength": 10000,
"description": "What the user asked for, in their own words"
},
"team": {
"description": "The team to act on, by name, only when the user belongs to more than one team; leave it out otherwise",
"type": "string",
"minLength": 1
},
"timeZone": {
"type": "string",
"minLength": 1,
"description": "The user’s IANA time zone, such as America/New_York"
}
},
"required": [
"request",
"timeZone"
]
}⚪capital_company_reply(answer, team, timeZone)
Relays the user’s answer to the question Capital Company’s assistant asked last, in their own words, and returns what the assistant says next: another question, or a proposal for the user to confirm.
Esquema de entrada
{
"type": "object",
"properties": {
"answer": {
"type": "string",
"minLength": 1,
"maxLength": 10000,
"description": "The user’s answer, in their own words"
},
"team": {
"description": "The team the conversation is on, by name, only when the user belongs to more than one team; leave it out otherwise",
"type": "string",
"minLength": 1
},
"timeZone": {
"type": "string",
"minLength": 1,
"description": "The user’s IANA time zone, such as America/New_York"
}
},
"required": [
"answer",
"timeZone"
]
}🔴capital_company_confirm(confirmationId, decision, timeZone)
Relays the user’s own answer, confirm or decline, to a Confirmation Capital Company’s assistant put to them. Confirming runs the operation; declining lets the assistant ask what to change.
Esquema de entrada
{
"type": "object",
"properties": {
"confirmationId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"description": "The Confirmation the user was shown, from the link the assistant’s answer carried"
},
"decision": {
"type": "string",
"enum": [
"confirm",
"decline"
],
"description": "What the user said, in so many words"
},
"timeZone": {
"type": "string",
"minLength": 1,
"description": "The user’s IANA time zone, such as America/New_York"
}
},
"required": [
"confirmationId",
"decision",
"timeZone"
]
}🟢capital_company_show_confirmation(confirmationId)
Shows the user a Confirmation named in Capital Company’s reply on Capital Company’s card, where they confirm or decline it themselves. Changes nothing.
Esquema de entrada
{
"type": "object",
"properties": {
"confirmationId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"description": "The Confirmation Capital Company’s reply named"
}
},
"required": [
"confirmationId"
]
}⚪capital_company_claim(confirmationId, email, timeZone)
For someone who started without a Capital Company account and said yes to a proposal: emails a link to the address they will sign in with. Opening it verifies the address and creates what they said yes to.
Esquema de entrada
{
"type": "object",
"properties": {
"confirmationId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"description": "The Confirmation the user said yes to"
},
"email": {
"description": "The email address the user will sign in with",
"type": "string"
},
"timeZone": {
"type": "string",
"minLength": 1,
"description": "The user’s IANA time zone, such as America/New_York"
}
},
"required": [
"confirmationId",
"email",
"timeZone"
]
}🟢capital_company_conversation(team)
Reads the user’s current conversation with Capital Company’s assistant, including the outcome of anything they confirmed, and whether it is waiting on them.
Esquema de entrada
{
"type": "object",
"properties": {
"team": {
"description": "The team whose conversation to read, by name, only when the user belongs to more than one team; leave it out otherwise",
"type": "string",
"minLength": 1
}
}
}Comunidad
Evidencia