Turn an idea or meeting transcript into a working single-file AI agent, check it, use it right away.
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.
Checks a finished agent file against the template rules (manifest, naming, class, perform method, no hardcoded secrets). Call it on every agent you write, fix anything it reports, and call it again until it passes.
The full Python source of the agent file
File name, must end with _agent.py, e.g. invoice_triage_agent.py
Checks a finished agent file against the template rules (manifest, naming, class, perform method, no hardcoded secrets). Call it on every agent you write, fix anything it reports, and call it again until it passes.
| Argument | Type | Description |
|---|---|---|
| code* | string | The full Python source of the agent file |
| filename* | string | File name, must end with _agent.py, e.g. invoice_triage_agent.py |
{
"type": "object",
"required": [
"filename",
"code"
],
"properties": {
"code": {
"type": "string",
"description": "The full Python source of the agent file"
},
"filename": {
"type": "string",
"description": "File name, must end with _agent.py, e.g. invoice_triage_agent.py"
}
},
"additionalProperties": false
}Searches the open agent registry (about 1,700 single-file agents) for agents that already do what the user wants, for example when they ask 'is there an AI tool for...' or want a ready-made automation instead of building one. Use it before building from scratch, or when the user asks whether an agent exists for a task.
| Argument | Type | Description |
|---|---|---|
| limit | integer | How many results, default 5 |
| query* | string | Plain words describing the task, e.g. 'summarize sales calls' |
{
"type": "object",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 10,
"minimum": 1,
"description": "How many results, default 5"
},
"query": {
"type": "string",
"description": "Plain words describing the task, e.g. 'summarize sales calls'"
}
},
"additionalProperties": false
}Returns the full source of one agent from the registry, by its name (e.g. @bill/neuron_agent), so it can be read or adapted.
| Argument | Type | Description |
|---|---|---|
| name* | string | Registry name, e.g. @kody/memory_agent |
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "Registry name, e.g. @kody/memory_agent"
}
},
"additionalProperties": false
}Use this when the user wants to build an AI agent, assistant, bot or automation from an idea, a repetitive task, a process description, or a meeting transcript (for example: automate invoices, triage support tickets, summarize meetings, follow up with leads). Returns the official single-file agent template and its rules. Fill it in yourself from what the user described, then call check_agent on the finished file before showing it to the user. Then call use_agent_here so the user can use it right away in this chat.
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}Optional, for later: how to keep an agent running on the user's own computer with the free Brainstem. Only offer this after the user has used the agent in the chat and wants to keep it.
| Argument | Type | Description |
|---|---|---|
| os | string | The user's operating system |
| filename | string | The agent file name, if known |
{
"type": "object",
"properties": {
"os": {
"enum": [
"mac",
"windows",
"linux"
],
"type": "string",
"description": "The user's operating system"
},
"filename": {
"type": "string",
"description": "The agent file name, if known"
}
},
"additionalProperties": false
}Use when the user pastes a rejection message from Apple App Review (it cites guidelines such as "Guideline 5.1.1(i)"). Free. Returns each cited guideline section it recognizes, with its title and what Apple means by it, and lists sections it does not know. The full version (likely causes, a fix list and a reply draft to App Review) is a separate paid HTTP call; the result says its price and route.
| Argument | Type | Description |
|---|---|---|
| text* | string | Apple's rejection message, as received (up to 20 KB) |
{
"type": "object",
"required": [
"text"
],
"properties": {
"text": {
"type": "string",
"maxLength": 20480,
"description": "Apple's rejection message, as received (up to 20 KB)"
}
},
"additionalProperties": false
}Use when the person wants something none of these tools can do and says yes to passing the request on. Records only the request text they agree to send (no name or contact). Ask before calling it.
| Argument | Type | Description |
|---|---|---|
| request* | string | What they want, in a sentence, as they agreed to send it |
{
"type": "object",
"required": [
"request"
],
"properties": {
"request": {
"type": "string",
"description": "What they want, in a sentence, as they agreed to send it"
}
},
"additionalProperties": false
}Use only when the user says they want to share an agent they built. Checks the agent and scans it for personal details (emails, phone numbers, secrets), then explains how to publish it to the free open agent registry under their own GitHub account. Nothing is published by this tool.
| Argument | Type | Description |
|---|---|---|
| code* | string | The full Python source of the agent |
| filename* | string | Agent file name, ending in _agent.py |
{
"type": "object",
"required": [
"filename",
"code"
],
"properties": {
"code": {
"type": "string",
"description": "The full Python source of the agent"
},
"filename": {
"type": "string",
"description": "Agent file name, ending in _agent.py"
}
},
"additionalProperties": false
}Use this right after an agent passes check_agent, or whenever the user wants to try an agent. Returns a short Python runner so you can run the agent in this chat with your own Python tool on the user's own data (pasted text, an uploaded spreadsheet, a list). Nothing to install. If Python is unavailable, apply the agent's logic yourself by reading its code. Ask the user for their real data, run the agent, and show the result in plain words.
| Argument | Type | Description |
|---|---|---|
| filename | string | The agent file name, e.g. invoice_triage_agent.py |
{
"type": "object",
"properties": {
"filename": {
"type": "string",
"description": "The agent file name, e.g. invoice_triage_agent.py"
}
},
"additionalProperties": false
}