Kinro
Server Details
Business insurance advice and real carrier quotes for U.S. small businesses from a licensed broker.
- Status
- Healthy
- Uptime
- 100.0% over 21 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 2 tools
The two tools have distinct purposes: ask_kinro sends messages to Kinro, and get_kinro_messages reads incoming messages. There is some potential confusion because ask_kinro is conversation-oriented and there is no explicit container/thread ID argument shown, but descriptions clearly separate sending from receiving.
Both names use snake_case and refer to the Kinro domain, but they mix verb styles: ask_kinro is an imperative action while get_kinro_messages is a retrieval action. It is mostly consistent and readable.
Two tools is borderline thin for a broker conversation workflow, but the server appears intentionally scoped to one conversational channel rather than a broad insurance platform. The count is not unreasonable given the purpose, though it limits flexibility.
The surface supports a basic send-and-receive conversation, which covers the core chat lifecycle, but it lacks explicit operations for managing contact details, business profiles, quote status, or conversation history beyond the latest messages. Workarounds are available through the conversation itself, but notable gaps remain.
Available Tools
2 toolsask_kinroAsk Kinro about business insuranceAInspect
Ask Kinro, a licensed business insurance broker, about the user’s business insurance: what coverage fits the business, carrier eligibility and exclusions, and quotes. Kinro’s AI advisor, Leo, answers. Kinro is not tied to any carrier: it gets real quotes from several carriers in one conversation, so the user does not have to start a separate quoting session with each carrier. Its answers rest on carrier underwriting rules and live quotes, and as the broker Kinro is accountable for its advice and carries errors and omissions insurance for it. Kinro returns coverage answers and any follow-up questions needed to prepare the request. You speak to Kinro for the user: tell it what the user needs, answer its follow-up questions from what the user has told you, ask the user what you do not know, and send the user’s follow-up requests in the same conversation. Kinro handles every conversation as a real insurance request, including on its test endpoint. When testing there and the user has you make up a business, choose details that look real, with no placeholders such as “Test Lane”, and give them as plain facts the way its owner would. Do not call the details fake, fictional, or a test, because Kinro does not quote details it is told are not real. The first call opens a Kinro insurance request for the business and saves what the user shares, so Kinro can prepare quotes. To quote, Kinro sends the business’s details to insurance carriers; carriers get no permission to contact the user. Kinro contacts the user outside this chat, by email or text, only at contact details the user shares and agrees to be contacted at. Each call sends a new message, so do not repeat a call to retry it. Kinro’s messages say what to expect next. Some answers, like quotes, arrive later: when Kinro says it is still working, call get_kinro_messages with wait set to true to get its next messages. A quote message links to the customer’s quote page on kinro.com, with the full quote and its documents: if you can open web pages, open it to go through the quote with the user, and never buy or enter payment details for them.
| Name | Required | Description | Default |
|---|---|---|---|
| files | No | Insurance documents the user attached, such as a current policy, declarations page, certificate of insurance (COI), loss run, or a photo of one: PDF, PNG, or JPEG, up to 25 MB each. Pass each one here as it is, even when you can read it yourself: Kinro checks the original document with its own document analysis and keeps it with the request, so its advice and quotes rest on the document rather than a summary. Do not pass files unrelated to the user’s insurance, or identity documents such as a driver’s license. Give each file either as data (its contents in base64) or, in ChatGPT, as the download_url and file_id the chat app supplies. A request with inline files must stay under 30 MB in total. | |
| message | Yes | What you tell Kinro for the user: what the user wants, such as advice, a quote, or a change to one, and the facts about the business the user has given you that Kinro needs to move forward. Write it as the user’s representative; do not paste your conversation with the user, and leave out what the user said only to you, such as which tool or endpoint to use. Answer Kinro’s questions with what the user has told you, and ask the user for the rest. Never guess a fact about the business, and do not tell Kinro what to infer. Never include a Social Security number, driver’s license number, payment card number, or password. | |
| conversation_id | No | The conversation_id returned by ask_kinro. Reuse it for this conversation; omit on the first message. Never invent one or reuse another conversation's ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| messages | Yes | Kinro's messages, oldest first, each to show the user as written, including links. When nothing new has arrived, one note says so. |
| conversation_id | No | The conversation_id returned by ask_kinro. Reuse it for this conversation; omit on the first message. Never invent one or reuse another conversation's ID. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only give non-read-only, open-world, non-idempotent, non-destructive; the description adds far more: carriers receive the business's details, carriers may not contact the user, Kinro contacts the user off-chat only at agreed contact details, E&O insurance backs the advice, calls are never retried, and the test endpoint still creates a real request. This is exactly the extra context annotations cannot carry.
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?
Long, but front-loaded with purpose and routing before the operational caveats, and most sentences carry genuinely non-obvious behavior. There is some redundancy around follow-up questions and carrier independence that could be tightened.
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 an open-world, asynchronous, consequential tool this covers everything an agent needs: conversation lifecycle, retry prohibition, deferred answers and the retrieval path, privacy constraints, test-endpoint conduct, and how to handle returned quote links. An output schema exists, so return-shape explanation is unnecessary.
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 message, files, and conversation_id in depth. The description adds workflow context (first call opens the request and saves what the user shares) but no additional field-level syntax or constraints beyond what the schema states.
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?
States a specific verb+resource: sending a message to Kinro, a licensed business insurance broker, to get coverage advice, carrier eligibility answers, and quotes. It clearly distinguishes itself from the sibling get_kinro_messages, which it describes as the retrieval path when Kinro is still working.
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?
Explicit routing: 'when Kinro says it is still working, call get_kinro_messages with wait set to true'; 'Each call sends a new message, so do not repeat a call to retry it'; 'The first call opens a Kinro insurance request'. It also gives conditions for the test endpoint, how to handle unknown facts, and what to do with quote links.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_kinro_messagesGet Kinro's messagesAInspect
Read this conversation with Kinro and get Kinro's new messages: the user's messages and Kinro's, oldest first, with each Kinro message you have not received before marked new. Show the user every new message as written, including links. Returns the latest 5 messages by default; set limit (up to 100) for more or fewer, and new messages are always included. When Kinro says it is still working, for example on a reply or a quote, set wait to true: the call returns as soon as a new message arrives, or after a short wait with a note that nothing is new. Messages you already received stay readable, so use it to recover a reply or quote you missed or lost. It sends nothing to Kinro.
| Name | Required | Description | Default |
|---|---|---|---|
| wait | No | Set true to wait for Kinro's next message when nothing new has arrived yet, such as while Kinro works on a reply or prices a quote. The call returns as soon as a new message arrives. | |
| limit | No | How many of the latest messages to return. Default 5, at most 100. | |
| conversation_id | No | The conversation_id returned by ask_kinro. Reuse it for this conversation; omit on the first message. Never invent one or reuse another conversation's ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| has_more | Yes | True when earlier messages exist. History is limited to the latest 100 messages; newly delivered messages are also included. |
| messages | Yes | The conversation's latest messages, oldest first. |
| conversation_id | No | The conversation_id returned by ask_kinro. Reuse it for this conversation; omit on the first message. Never invent one or reuse another conversation's ID. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds meaningful behavior beyond annotations: default limit of 5, up to 100, new messages always included, wait returns as soon as a message arrives or after a short wait with a note, and it sends nothing to Kinro. Annotations declare readOnlyHint=false and idempotentHint=false, which the description does not explain; the 'sends nothing' clause partially offsets that, but doesn't address non-idempotence.
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?
Front-loads what the tool returns, then covers limit, wait, and recovery use cases. It is slightly dense and repeats the limit range already in the schema, but every sentence conveys usable behavior.
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?
Covers the return contents, ordering, new-message marking, default and maximum limit, wait semantics, and recovery use case. With an output schema present the return shape needn't be explained, but the description does not reconcile readOnlyHint=false and idempotentHint=false with its 'read' framing, leaving a small gap.
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%, so the schema already documents wait, limit, and conversation_id in detail. The description reinforces limit (default 5, up to 100) and wait behavior but adds no syntax or format beyond the schema, so baseline 3 applies.
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?
States a specific verb (read) and resource (this conversation with Kinro), specifies what is returned (the user's messages and Kinro's, oldest first, new ones marked). It is clearly distinct from the sibling ask_kinro, which the description implicitly contrasts by noting 'It sends nothing to Kinro.'
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?
Explicit when-to-use guidance: set wait=true when Kinro says it is still working, and use it to recover a reply or quote you missed or lost. This names the concrete conditions that select the tool and even clarifies its non-sending nature relative to ask_kinro.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
2 tool updates
- First observed
ask_kinro - First observed
get_kinro_messages
Related MCP Connectors
Commercial insurance research: provider comparisons, pricing, and fit guidance.
AI-powered commercial insurance carrier recommendations for small businesses.
Your company's commercial insurance: policies, coverage, certificates, quotes and claims.
Wholesale commercial insurance appetite, submissions, policies, payments, and broker workflows.
Related MCP Servers
- FlicenseNot gradedqualityBmaintenanceSearch 6,900+ U.S. surety bond requirements across all 50 states. Instant pricing.-
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to get real home & auto insurance quotes and start binding through a network of licensed independent agencies.2Apache 2.0

Seaworthy Insuranceofficial
AlicenseAqualityDmaintenanceDisability insurance quote intake and coverage guidance for high-income professionals. Provides a quote_request action that files a lead with a licensed brokerage, plus read-only tools for specialty guidance, carrier comparison, benefit-cap math, and rider definitions.263MIT- AlicenseAqualityDmaintenanceEnables insurance policy analysis, risk assessment, and policy comparison with support for multiple editions (Lite free, Solo and Pro paid).41MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.