JoshuaC215

agent-service-toolkit: Build and Serve LangGraph Agents

A Python starter toolkit that connects LangGraph agents to a FastAPI service, reusable client, and Streamlit chat interface. It suits developers who want an end-to-end foundation for building, testing, and customizing agent applications.

View on GitHub Compare
Stars
4.5k
Forks
789
Stars, last 30 days
+50

Our take

Health score

52/100

How it is scored
Activity
40
Community
56
Issues
39
Pull requests
73

+50 stars in the last 30 days

  • Slower to close issues than 92% of the projects we track

Project history

Daily GitHub snapshots since Oct 7, 2026. History covers stars and forks; health signals are not tracked historically.

Selected snapshot

Stars

4,574

Forks

804

Change since Nov 12, 2026: 0 stars·0 forks

Overview

agent-service-toolkit provides a working path from defining a LangGraph agent to serving it through an API and interacting with it in a web chat interface. It brings the agent, service, client, and UI into one project rather than leaving developers to assemble those parts from separate examples.

It is aimed at developers building or learning to build LangGraph-based applications. Use it as a customizable starting point when you need a service boundary, streaming support, and a ready-made interface; it may be more than needed for a simple standalone agent.

Key Features

  • LangGraph agent examples include human-in-the-loop control, long-term memory, and supervisor-based orchestration.
  • FastAPI service exposes streaming and non-streaming endpoints, with support for multiple agents.
  • AgentClient supports synchronous and asynchronous calls, including streaming.
  • Streamlit chat interface includes voice input and output, and previous-chat navigation.
  • AG-UI protocol support enables connections to compatible frontends.
  • Includes a basic ChromaDB-backed RAG agent and Safeguard content moderation integration.
  • Docker Compose setup runs the service, interface, and PostgreSQL database together.

Use Cases

  • A Python developer wants a starting point for turning a LangGraph prototype into an API-backed application.
  • A team needs to test agent behavior through both a web chat UI and a client that can be used by other applications.
  • An agent developer needs streaming responses, multiple agent routes, or a human approval step in a sample application.
  • A developer exploring RAG wants to adapt the included ChromaDB agent rather than build the integration from scratch.

Getting Started

The project requires at least one LLM API key. With uv, install dependencies and start the service and UI:

uv sync --frozen
python src/run_service.py
# In another terminal, after activating the same environment:
streamlit run src/streamlit_app.py

See the repository README for environment setup, Docker instructions, provider configuration, and customization guidance. A hosted Streamlit app is also available.

Alternatives

  • deepagents: Deepagents provides an agent harness with planning, delegation, file access, and context management, rather than a FastAPI, client, and Streamlit starter stack.
  • nanobot: Nanobot is a self-hosted personal-agent framework with a WebUI and automation, rather than a starter toolkit for serving LangGraph agents through FastAPI.
ProjectLanguageLicenseStarsStatus
agent-service-toolkitPythonMIT4.5kNot checked yet
deepagentsPythonMIT29.9kActive
nanobotPythonMIT48.8kActive

Considerations

  • A compatible LLM provider configuration or API key is needed to run an agent; some integrations require additional provider credentials.
  • Running the complete stack with Docker requires Docker Compose. The local setup uses Python dependencies managed with uv.
  • The project is a toolkit and example foundation, so adapting agents, settings, and the interface to a specific application will require development work.
  • The README describes this as a solo-maintainer project, with issues and pull requests generally triaged about every two weeks.

Found this useful?

Share it with someone who would like agent-service-toolkit.

Comparisons