airtable
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
Chineseairtable
Airtable
Use this skill when you need to work with airtable through its generated async Python app, call its MCP-backed functions from code, or inspect available functions with the mcp-skill CLI.
当你需要通过生成的异步Python应用操作Airtable、从代码中调用其基于MCP的函数,或使用mcp-skill CLI查看可用函数时,请使用此技能。
Authentication
身份验证
This app can use the MCP client's built-in OAuth flow when the server requires it.
In most cases, the default constructor is enough. Tokens are persisted to
so subsequent runs reuse the same credentials automatically.
~/.mcp-skill/auth/python
app = AirtableApp()If you need a custom OAuth provider, pass it via the argument:
authpython
app = AirtableApp(auth=my_oauth_provider)当服务器要求时,此应用可使用MCP客户端内置的OAuth流程。
大多数情况下,默认构造函数即可满足需求。令牌会持久化存储到目录,因此后续运行会自动复用相同的凭据。
~/.mcp-skill/auth/python
app = AirtableApp()如果你需要自定义OAuth提供商,可通过参数传入:
authpython
app = AirtableApp(auth=my_oauth_provider)Dependencies
依赖项
This skill requires the following Python packages:
mcp-skill
Install with uv:
bash
uv pip install mcp-skillOr with pip:
bash
pip install mcp-skill此技能需要以下Python包:
mcp-skill
使用uv安装:
bash
uv pip install mcp-skill或使用pip安装:
bash
pip install mcp-skillPython Usage
Python使用方法
Use the generated app directly in async Python code:
python
import asyncio
from airtable.app import AirtableApp
async def main():
app = AirtableApp()
result = await app.ping()
print(result)
asyncio.run(main())在异步Python代码中直接使用生成的应用:
python
import asyncio
from airtable.app import AirtableApp
async def main():
app = AirtableApp()
result = await app.ping()
print(result)
asyncio.run(main())Async Usage Notes
异步使用注意事项
- Every generated tool method is , so call it with
async.await - Use these apps inside an async function, then run that function with if you are in a script.
asyncio.run(...) - If you forget , you will get a coroutine object instead of the actual tool result.
await - Be careful when mixing this with other event-loop environments such as notebooks, web servers, or async frameworks.
- 每个生成的工具方法都是的,因此需要使用
async调用。await - 请在异步函数内使用这些应用,如果是在脚本中,使用运行该函数。
asyncio.run(...) - 如果你忘记使用,你将得到一个协程对象而非实际的工具结果。
await - 当与其他事件循环环境(如笔记本、Web服务器或异步框架)混合使用时,请多加注意。
Discover Functions with the CLI
使用CLI发现函数
Use the CLI to find available apps, list functions on an app, and inspect a function before calling it:
bash
uvx mcp-skill list-apps
uvx mcp-skill list-functions airtable
uvx mcp-skill inspect airtable pingImportant: Add to your Python path so imports resolve correctly:
.agents/skillspython
import sys
sys.path.insert(0, ".agents/skills")
from airtable.app import AirtableAppOr set the environment variable:
PYTHONPATHbash
export PYTHONPATH=".agents/skills:$PYTHONPATH"Preferred: use (handles dependencies automatically):
uv runbash
PYTHONPATH=.agents/skills uv run --with mcp-skill python -c "
import asyncio
from airtable.app import AirtableApp
async def main():
app = AirtableApp()
result = await app.ping()
print(result)
asyncio.run(main())
"Alternative: use directly (install dependencies first):
pythonbash
pip install mcp-skill
PYTHONPATH=.agents/skills python -c "
import asyncio
from airtable.app import AirtableApp
async def main():
app = AirtableApp()
result = await app.ping()
print(result)
asyncio.run(main())
"使用CLI查找可用应用、列出应用上的函数,以及在调用前查看函数详情:
bash
uvx mcp-skill list-apps
uvx mcp-skill list-functions airtable
uvx mcp-skill inspect airtable ping重要提示: 将添加到Python路径中,以便正确解析导入:
.agents/skillspython
import sys
sys.path.insert(0, ".agents/skills")
from airtable.app import AirtableApp或设置环境变量:
PYTHONPATHbash
export PYTHONPATH=".agents/skills:$PYTHONPATH"推荐:使用(自动处理依赖项):
uv runbash
PYTHONPATH=.agents/skills uv run --with mcp-skill python -c "
import asyncio
from airtable.app import AirtableApp
async def main():
app = AirtableApp()
result = await app.ping()
print(result)
asyncio.run(main())
"替代方案:直接使用(需先安装依赖项):
pythonbash
pip install mcp-skill
PYTHONPATH=.agents/skills python -c "
import asyncio
from airtable.app import AirtableApp
async def main():
app = AirtableApp()
result = await app.ping()
print(result)
asyncio.run(main())
"