Agent package for communicating with Stirling PDF via REST APIs.
Project description
Stirling PDF Agent - A2A | AG-UI | MCP
Version: 0.9.0
Overview
Stirling PDF Agent MCP Server + A2A Agent
Agent package for communicating with Stirling PDF via REST APIs.
This repository is actively maintained - Contributions are welcome!
MCP
Using as an MCP Server
The MCP Server can be run in two modes: stdio (for local testing) or http (for networked access).
Environment Variables
STIRLINGPDF_URL: The URL of the target service.STIRLINGPDF_API_KEY: The API token or access token.
Run in stdio mode (default):
export STIRLINGPDF_URL="http://localhost:8080"
export STIRLINGPDF_API_KEY="your_token"
stirlingpdf-mcp --transport "stdio"
Run in HTTP mode:
export STIRLINGPDF_URL="http://localhost:8080"
export STIRLINGPDF_API_KEY="your_token"
stirlingpdf-mcp --transport "http" --host "0.0.0.0" --port "8000"
A2A Agent
Run A2A Server
export STIRLINGPDF_URL="http://localhost:8080"
export STIRLINGPDF_API_KEY="your_token"
stirlingpdf-agent --provider openai --model-id gpt-4o --api-key sk-...
Docker
Build
docker build -t stirlingpdf-agent .
Run MCP Server
docker run -d \
--name stirlingpdf-agent \
-p 8000:8000 \
-e TRANSPORT=http \
-e STIRLINGPDF_URL="http://your-service:8080" \
-e STIRLINGPDF_API_KEY="your_token" \
knucklessg1/stirlingpdf-agent:latest
Deploy with Docker Compose
services:
stirlingpdf-agent:
image: knucklessg1/stirlingpdf-agent:latest
environment:
- HOST=0.0.0.0
- PORT=8000
- TRANSPORT=http
- STIRLINGPDF_URL=http://your-service:8080
- STIRLINGPDF_API_KEY=your_token
ports:
- 8000:8000
Configure mcp.json for AI Integration (e.g. Claude Desktop)
{
"mcpServers": {
"stirlingpdf": {
"command": "uv",
"args": [
"run",
"--with",
"stirlingpdf-agent",
"stirlingpdf-mcp"
],
"env": {
"STIRLINGPDF_URL": "http://your-service:8080",
"STIRLINGPDF_API_KEY": "your_token"
}
}
}
}
Install Python Package
python -m pip install stirlingpdf-agent
uv pip install stirlingpdf-agent
Repository Owners
MCP Configuration Examples
1. Standard IO (stdio) Deployment
{
"mcpServers": {
"stirlingpdf-agent": {
"command": "uv",
"args": [
"run",
"stirlingpdf-mcp"
],
"env": {
"AGENT_DESCRIPTION": "<YOUR_AGENT_DESCRIPTION>",
"AGENT_SYSTEM_PROMPT": "<YOUR_AGENT_SYSTEM_PROMPT>",
"DEFAULT_AGENT_NAME": "<YOUR_DEFAULT_AGENT_NAME>",
"PDFTOOL": "True",
"STIRLINGPDF_AGENT_VERIFY": "<YOUR_STIRLINGPDF_AGENT_VERIFY>",
"STIRLINGPDF_API_KEY": "<YOUR_STIRLINGPDF_API_KEY>",
"STIRLINGPDF_URL": "<YOUR_STIRLINGPDF_URL>"
}
}
}
}
2. Streamable HTTP (SSE) Deployment
{
"mcpServers": {
"stirlingpdf-agent": {
"command": "uv",
"args": [
"run",
"stirlingpdf-mcp",
"--transport",
"http",
"--host",
"0.0.0.0",
"--port",
"8000"
],
"env": {
"AGENT_DESCRIPTION": "<YOUR_AGENT_DESCRIPTION>",
"AGENT_SYSTEM_PROMPT": "<YOUR_AGENT_SYSTEM_PROMPT>",
"DEFAULT_AGENT_NAME": "<YOUR_DEFAULT_AGENT_NAME>",
"PDFTOOL": "True",
"STIRLINGPDF_AGENT_VERIFY": "<YOUR_STIRLINGPDF_AGENT_VERIFY>",
"STIRLINGPDF_API_KEY": "<YOUR_STIRLINGPDF_API_KEY>",
"STIRLINGPDF_URL": "<YOUR_STIRLINGPDF_URL>"
}
}
}
}
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file stirlingpdf_agent-0.9.0.tar.gz.
File metadata
- Download URL: stirlingpdf_agent-0.9.0.tar.gz
- Upload date:
- Size: 15.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bf0237cf5cb3328dd39eb937b365c38c4e3d7d5f10f6a3cb7b80adf09331ce3a
|
|
| MD5 |
5cb3e63cf81a3d56570e0ee65e747792
|
|
| BLAKE2b-256 |
345697f92ebc55306a400af5c7938aad48a68fce8b9089d11192ebbccbbcc8cb
|
File details
Details for the file stirlingpdf_agent-0.9.0-py3-none-any.whl.
File metadata
- Download URL: stirlingpdf_agent-0.9.0-py3-none-any.whl
- Upload date:
- Size: 17.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f53c0d1151eda58e0e96cc2a6d39f00b1223bc824b564e7af0ed3047d8ca6907
|
|
| MD5 |
0708f5b05df71ebf8f45a9fb6f1ea505
|
|
| BLAKE2b-256 |
e196fc3a0d44195bee8bf9ac10a6809421c0610ca6578f69f0c21df177467f25
|