Skip to content
← Public packages

@kody/atlassian

Read Jira and Confluence through the official Atlassian MCP server, with Jira OAuth or API-token fallback.

AGENTS.md

88 lines · 2.3 KB · Markdown
Raw

@kody/atlassian — agent notes

Human setup and intent live in README.md. This file is for agents: imports, smoke checks, snippets, and edge cases. Never paste tokens. Do not disable live webhooks or jobs.

Auth

LaneCredentialNotes
PreferredMCP server atlassiankody.mcpServerAdd → authorize authUrl. Helpers use kody.mcp["atlassian"].
Fallback@kody/jira OAuth / API tokenBYO 3LO or email + API token. See https://kody.codes/@kody/jira

Do not register an Atlassian OAuth app for the one-click MCP path. After fork, connect the caller's Atlassian site — do not treat live @kody/atlassian as yours.

Import paths

ExportImport
package overview / MCP setupkody:@kody/atlassian
smoke-testkody:@kody/atlassian/smoke-test
search-jirakody:@kody/atlassian/search-jira
search-confluencekody:@kody/atlassian/search-confluence

Prefer static kody:@kody/atlassian/... imports from execute. Do not lead with packages.invoke.

Smoke test (read-only)

import smokeTest from 'kody:@kody/atlassian/smoke-test'

export default async function main() {
	return await smokeTest()
	// MCP connected => ok / connected guidance
	// otherwise => fallback setup pointing at @kody/jira
}

Common snippets

Search Jira:

import searchJira from 'kody:@kody/atlassian/search-jira'

export default async function main() {
	return await searchJira({
		jql: 'assignee = currentUser() ORDER BY updated DESC',
		maxResults: 10,
	})
}

Search Confluence:

import searchConfluence from 'kody:@kody/atlassian/search-confluence'

export default async function main() {
	return await searchConfluence({
		query: 'onboarding',
		limit: 10,
	})
}

Add MCP server (setup, not a package export):

import { kody } from 'kody:runtime'

export default async function main() {
	return await kody.mcpServerAdd({
		name: 'atlassian',
		url: 'https://mcp.atlassian.com/v1/mcp/authv2',
	})
	// open returned authUrl, then retry smoke-test / search helpers
}

Edge cases / fork notes

  • Prefer MCP; only fall back to @kody/jira when MCP is unavailable.
  • Search only returns issues/pages the authorizing user can already see.
  • Never paste Atlassian API tokens or OAuth client secrets into chat or logs.