cleuton/MetaAgent

Ai Agent programming language

Rust

3

3 commits

updated Oct 5, 2026

See the code

See what people are saying

README

Metagente

Build AI agents in a few lines, not a few hundred.

Metagente is a small language for building AI agents. You describe what the agent is for, which tools it may use and what it answers; the interpreter does the rest. It speaks MCP (Model Context Protocol) and A2A (Agent to Agent) natively, so your agents can use any MCP tool and talk to other agents out of the box.

Demonstration video Metagente demo

This demonstration is in multi-agent-samples

The interpreter is a single binary written in Rust. No Python environment, no framework to learn.

Demo

agent Weather
  goal "Answer questions about the weather"
  tool weather from mcp "npx -y weather-mcp"
  accepts ask city
  on ask
    forecast = weather.forecast city: city
    reply "In {city} it will be {forecast.summary}"

That is a complete agent: a goal, an MCP tool, an input and a reply.

Try it in 30 seconds

  1. Download the zip for your system from the latest release: metagente-linux-amd64.zip, metagente-macos-arm64.zip or metagente-windows-amd64.zip.
  2. Unzip it and open a terminal in the folder.
  3. Run the first sample:
./bin/metagente run samples/clock.ag now

On Windows use .\bin\metagente.exe instead. Then create your own agent:

./bin/metagente new hello
./bin/metagente run hello.ag greet name=World

Prefer to build from source? You need Rust:

git clone https://github.com/cleuton/MetaAgent
cd MetaAgent
cargo build --release
target/release/metagente run examples/clock.ag now

Why Metagente?

Frameworks such as LangChain or CrewAI are powerful, but they assume you are a programmer working inside a Python project. Metagente makes a different trade:

Python agent frameworksMetagente
What you writePython code using a libraryA short declarative agent file
InstallPython, virtual env, packagesOne binary
ToolsFramework specific wrappersAny MCP server
Agents talking to agentsUsually in-processA2A, across processes and machines
SafetyUp to your codePer-agent permissions for folders, env vars and links
ErrorsStack tracesBeginner friendly messages

If you need fine control in Python, use a framework. If you want a working agent quickly, or you want to give non-programmers a way to build agents, Metagente is for you.

What works today

  • Language and interpreter: goals, tools, inputs, replies, if, loops and results.
  • Built in tools and MCP tools: plug in any MCP server.
  • Safe agents: each agent declares which folders, environment variables and other agents it may use.
  • Dynamic link: agents call agents by name or path, with interface checks and cycle detection.
  • A2A and MCP server: expose an agent as an MCP server or with an A2A Agent Card, and send or receive A2A tasks.
  • CLI: new, check, run and serve.

A complete example

City Briefing puts it all together: a Concierge agent asks a Researcher agent over A2A, and the Researcher reads a web page through an MCP tool. Both use Claude. Bring your own API key.

Learn more

TopicWhere
Tutorial, step by stepdocs/tutorial.md
Programming guide (if, loops, results)docs/guide.md
Language syntaxdocs/syntax.md
Samplessamples/
ChangelogCHANGELOG.md

Roadmap

StageState
Core language, built in and MCP tools, CLI, tutorialBuilt
Safe agents (per-agent permissions)Built
Dynamic link between agentsBuilt
v1.0: MCP server, A2A Agent Card, A2A tasks, serveBuilt, release pending
Project Barracuda: an agent server invoked via A2A or a frontend, with a queue for batch triggeringNext
Long running tasks, authentication for served agents, agent registry, scheduling, A2A streamingIdeas

How it is built

Metagente is developed with spec-driven development using GitHub Spec Kit. Every feature starts as a spec, so you can read why things are the way they are:

DocumentPath
Constitution (principles).specify/memory/constitution.md
Feature specspecs/001-metagente-core/spec.md
Implementation planspecs/001-metagente-core/plan.md
Task listspecs/001-metagente-core/tasks.md
Language, CLI, configuration and protocol contractsspecs/001-metagente-core/contracts/
Validation guidespecs/001-metagente-core/quickstart.md

Contributing

Issues, ideas and pull requests are welcome. If you build an agent with Metagente, open an issue and show it; good ones become samples.

If Metagente is useful to you, a star on the repository helps other people find it.

Version

v0.1.1. Semantic versioning. The version is kept in this file, in CHANGELOG.md and in Cargo.toml.

cleuton/MetaAgent

Ai Agent programming language

Rust

3

3 commits

updated Oct 5, 2026

See the code

See what people are saying

README

Metagente

Build AI agents in a few lines, not a few hundred.

Metagente is a small language for building AI agents. You describe what the agent is for, which tools it may use and what it answers; the interpreter does the rest. It speaks MCP (Model Context Protocol) and A2A (Agent to Agent) natively, so your agents can use any MCP tool and talk to other agents out of the box.

Demonstration video Metagente demo

This demonstration is in multi-agent-samples

The interpreter is a single binary written in Rust. No Python environment, no framework to learn.

Demo

agent Weather
  goal "Answer questions about the weather"
  tool weather from mcp "npx -y weather-mcp"
  accepts ask city
  on ask
    forecast = weather.forecast city: city
    reply "In {city} it will be {forecast.summary}"

That is a complete agent: a goal, an MCP tool, an input and a reply.

Try it in 30 seconds

  1. Download the zip for your system from the latest release: metagente-linux-amd64.zip, metagente-macos-arm64.zip or metagente-windows-amd64.zip.
  2. Unzip it and open a terminal in the folder.
  3. Run the first sample:
./bin/metagente run samples/clock.ag now

On Windows use .\bin\metagente.exe instead. Then create your own agent:

./bin/metagente new hello
./bin/metagente run hello.ag greet name=World

Prefer to build from source? You need Rust:

git clone https://github.com/cleuton/MetaAgent
cd MetaAgent
cargo build --release
target/release/metagente run examples/clock.ag now

Why Metagente?

Frameworks such as LangChain or CrewAI are powerful, but they assume you are a programmer working inside a Python project. Metagente makes a different trade:

Python agent frameworksMetagente
What you writePython code using a libraryA short declarative agent file
InstallPython, virtual env, packagesOne binary
ToolsFramework specific wrappersAny MCP server
Agents talking to agentsUsually in-processA2A, across processes and machines
SafetyUp to your codePer-agent permissions for folders, env vars and links
ErrorsStack tracesBeginner friendly messages

If you need fine control in Python, use a framework. If you want a working agent quickly, or you want to give non-programmers a way to build agents, Metagente is for you.

What works today

  • Language and interpreter: goals, tools, inputs, replies, if, loops and results.
  • Built in tools and MCP tools: plug in any MCP server.
  • Safe agents: each agent declares which folders, environment variables and other agents it may use.
  • Dynamic link: agents call agents by name or path, with interface checks and cycle detection.
  • A2A and MCP server: expose an agent as an MCP server or with an A2A Agent Card, and send or receive A2A tasks.
  • CLI: new, check, run and serve.

A complete example

City Briefing puts it all together: a Concierge agent asks a Researcher agent over A2A, and the Researcher reads a web page through an MCP tool. Both use Claude. Bring your own API key.

Learn more

TopicWhere
Tutorial, step by stepdocs/tutorial.md
Programming guide (if, loops, results)docs/guide.md
Language syntaxdocs/syntax.md
Samplessamples/
ChangelogCHANGELOG.md

Roadmap

StageState
Core language, built in and MCP tools, CLI, tutorialBuilt
Safe agents (per-agent permissions)Built
Dynamic link between agentsBuilt
v1.0: MCP server, A2A Agent Card, A2A tasks, serveBuilt, release pending
Project Barracuda: an agent server invoked via A2A or a frontend, with a queue for batch triggeringNext
Long running tasks, authentication for served agents, agent registry, scheduling, A2A streamingIdeas

How it is built

Metagente is developed with spec-driven development using GitHub Spec Kit. Every feature starts as a spec, so you can read why things are the way they are:

DocumentPath
Constitution (principles).specify/memory/constitution.md
Feature specspecs/001-metagente-core/spec.md
Implementation planspecs/001-metagente-core/plan.md
Task listspecs/001-metagente-core/tasks.md
Language, CLI, configuration and protocol contractsspecs/001-metagente-core/contracts/
Validation guidespecs/001-metagente-core/quickstart.md

Contributing

Issues, ideas and pull requests are welcome. If you build an agent with Metagente, open an issue and show it; good ones become samples.

If Metagente is useful to you, a star on the repository helps other people find it.

Version

v0.1.1. Semantic versioning. The version is kept in this file, in CHANGELOG.md and in Cargo.toml.