Skip to content

Commit 3d46d6f

Browse files
committed
Initial commit
0 parents  commit 3d46d6f

138 files changed

Lines changed: 22107 additions & 0 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

‎.github/CODEOWNERS‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
* @AuthPlane/authplane-eng
Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
---
2+
name: Bug Report
3+
about: Report a bug in the Authplane Python SDK or an adapter
4+
title: "[Bug] "
5+
labels: bug
6+
assignees: ""
7+
---
8+
9+
## Description
10+
11+
A clear description of the bug.
12+
13+
## Affected Package
14+
15+
- [ ] `authplane-sdk`
16+
- [ ] `authplane-mcp`
17+
- [ ] `authplane-fastmcp`
18+
19+
## Steps to Reproduce
20+
21+
1. Install package(s) ...
22+
2. Configure / call ...
23+
3. Observe ...
24+
25+
Minimal reproducible code snippet:
26+
27+
```python
28+
# paste here
29+
```
30+
31+
## Expected Behavior
32+
33+
What you expected to happen.
34+
35+
## Actual Behavior
36+
37+
What actually happened. Include exception traceback, HTTP status codes, and relevant log output.
38+
39+
## Environment
40+
41+
- **Package version:** (e.g., `authplane-sdk==1.2.3`)
42+
- **Python version:** (`python --version`)
43+
- **OS:** (e.g., Ubuntu 22.04, macOS 14)
44+
- **Framework (if adapter):** (e.g., FastAPI 0.115, FastMCP 2.x, MCP SDK 1.27)
45+
- **Authplane `authserver` version / issuer:** (if relevant)
46+
47+
## Configuration
48+
49+
Relevant SDK configuration (redact secrets):
50+
51+
```python
52+
# paste here
53+
```
54+
55+
## Logs
56+
57+
<details>
58+
<summary>Relevant logs</summary>
59+
60+
```
61+
(paste relevant logs here — redact any sensitive data, especially tokens)
62+
```
63+
64+
</details>
65+
66+
## Additional Context
67+
68+
Any other relevant information.
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
---
2+
name: Feature Request
3+
about: Suggest a new feature for the Authplane Python SDK or an adapter
4+
title: "[Feature] "
5+
labels: enhancement
6+
assignees: ""
7+
---
8+
9+
## Affected Package
10+
11+
- [ ] `authplane-sdk`
12+
- [ ] `authplane-mcp`
13+
- [ ] `authplane-fastmcp`
14+
- [ ] New package
15+
16+
## Problem
17+
18+
Describe the problem this feature would solve. What are you trying to do that you can't do today?
19+
20+
## Proposed Solution
21+
22+
Describe your proposed solution. How should this work? Include a rough API sketch if possible:
23+
24+
```python
25+
# example usage
26+
```
27+
28+
## Alternatives Considered
29+
30+
What alternatives have you considered? Why is this approach better?
31+
32+
## Use Case
33+
34+
Describe the use case. Who benefits from this feature? Is this blocking integration with a specific framework or service?
35+
36+
## Additional Context
37+
38+
Any other relevant information, links to RFCs or specs, or examples from other projects.
Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
---
2+
name: MCP Compatibility Report
3+
about: Report compatibility of an MCP client or server with the Authplane Python adapters
4+
title: "[Compat] <Client or Server> <Version>"
5+
labels: compatibility, mcp
6+
assignees: ""
7+
---
8+
9+
## Adapter
10+
11+
- [ ] `authplane-mcp` (official MCP Python SDK adapter)
12+
- [ ] `authplane-fastmcp` (FastMCP adapter)
13+
14+
## MCP Library Version
15+
16+
- **Library:** (e.g., `mcp`, `fastmcp`)
17+
- **Version:**
18+
- **Transport:** (e.g., streamable-http, stdio)
19+
20+
## MCP Client (if reporting a client-side issue)
21+
22+
- **Client:** (e.g., Claude Code, MCP Inspector, Cursor)
23+
- **Version:**
24+
- **Platform:** (macOS / Linux / Windows)
25+
26+
## Authplane SDK Version
27+
28+
- `authplane-sdk`:
29+
- `authplane-mcp` / `authplane-fastmcp`:
30+
- `authserver` (issuer):
31+
32+
## Description
33+
34+
Brief summary of the compatibility observation.
35+
36+
## Compatibility Scenarios
37+
38+
Check each that was tested. Mark pass / fail / skip.
39+
40+
- [ ] **JWT validation** — protected tool accepts valid bearer token
41+
- [ ] **Scope enforcement** — tool-specific scope required and checked
42+
- [ ] **DPoP-bound tokens** — proof-of-possession verified end-to-end (if applicable)
43+
- [ ] **Token refresh** — client refreshes without losing session
44+
- [ ] **Metadata discovery** — adapter surfaces `WWW-Authenticate` / protected-resource metadata correctly
45+
- [ ] **Error handling** — expired, revoked, malformed tokens produce the expected error shape
46+
47+
## Reproduction Steps
48+
49+
1. Install adapter ...
50+
2. Configure MCP server with Authplane middleware ...
51+
3. Connect client ...
52+
4. Observe results
53+
54+
## Logs
55+
56+
<details>
57+
<summary>Server logs (adapter)</summary>
58+
59+
```
60+
(paste relevant logs here)
61+
```
62+
63+
</details>
64+
65+
<details>
66+
<summary>Client logs</summary>
67+
68+
```
69+
(paste relevant logs here)
70+
```
71+
72+
</details>
73+
74+
## Additional Context
75+
76+
Screenshots, network traces, spec references, or upstream issues.

‎.github/dependabot.yml‎

Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
version: 2
2+
3+
updates:
4+
# Python SDK (root)
5+
- package-ecosystem: pip
6+
directory: /
7+
schedule:
8+
interval: weekly
9+
day: monday
10+
labels:
11+
- dependencies
12+
- python
13+
commit-message:
14+
prefix: "deps"
15+
open-pull-requests-limit: 10
16+
groups:
17+
pip-all:
18+
patterns:
19+
- "*"
20+
21+
# Python MCP adapter
22+
- package-ecosystem: pip
23+
directory: /authplane-mcp
24+
schedule:
25+
interval: weekly
26+
day: monday
27+
labels:
28+
- dependencies
29+
- python
30+
commit-message:
31+
prefix: "deps"
32+
open-pull-requests-limit: 10
33+
groups:
34+
pip-all:
35+
patterns:
36+
- "*"
37+
38+
# Python FastMCP adapter
39+
- package-ecosystem: pip
40+
directory: /authplane-fastmcp
41+
schedule:
42+
interval: weekly
43+
day: monday
44+
labels:
45+
- dependencies
46+
- python
47+
commit-message:
48+
prefix: "deps"
49+
open-pull-requests-limit: 10
50+
groups:
51+
pip-all:
52+
patterns:
53+
- "*"
54+
55+
# GitHub Actions
56+
- package-ecosystem: github-actions
57+
directory: /
58+
schedule:
59+
interval: weekly
60+
day: monday
61+
labels:
62+
- dependencies
63+
- ci
64+
commit-message:
65+
prefix: "ci"
66+
open-pull-requests-limit: 5
67+
groups:
68+
actions-all:
69+
patterns:
70+
- "*"

‎.github/pull_request_template.md‎

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
## Summary
2+
3+
Brief description of what this PR does and why.
4+
5+
## Linked Issue
6+
7+
<!-- e.g., Fixes #123 -->
8+
9+
## Changes
10+
11+
-
12+
13+
## Affected Packages
14+
15+
- [ ] `authplane-sdk` (root)
16+
- [ ] `authplane-mcp`
17+
- [ ] `authplane-fastmcp`
18+
- [ ] None (infra / docs / CI only)
19+
20+
## Test Plan
21+
22+
How was this tested? Include relevant test names or manual verification steps.
23+
24+
## Checklist
25+
26+
- [ ] `ruff check .` passes
27+
- [ ] `ruff format --check .` passes
28+
- [ ] `pyright` passes (SDK root)
29+
- [ ] `pytest` passes for affected packages
30+
- [ ] Coverage unchanged or improved (≥ 80%)
31+
- [ ] Tests added for new functionality
32+
- [ ] Documentation updated (if applicable)
33+
- [ ] `CHANGELOG.md` entry added under `[Unreleased]` (if user-facing)
34+
- [ ] New workflow actions are SHA-pinned (`pinact run` after changes)
35+
- [ ] No token values, secrets, or key material in logs or test fixtures

0 commit comments

Comments
 (0)